Autor Tema: Mejorando las bibliotecas de EAGLE3D  (Leído 17397 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Medusa

  • PIC16
  • ***
  • Mensajes: 231
Re: Mejorando las bibliotecas de EAGLE3D
« Respuesta #15 en: 24 de Septiembre de 2009, 16:19:08 »
Citar
fijaros en los comentarios al inicio del código del primer archivo para ver los parámetros que podemos pasarle directamente en la línea de comandos: '-w1024 -h512 +fh -ohdr_env.hdr DECLARE=View=3' para generar el archivo hdr_env.hdr que hdr_mapping.pov necesita.

hola xocas06, ya renderize el archivo hdr_environment.pov, pero no entiendo como generar el archivo hdr_env.hdr   :? , podrias explicar como hacer??

Desconectado xocas

  • Administrador
  • PIC24H
  • *******
  • Mensajes: 1978
Re: Mejorando las bibliotecas de EAGLE3D
« Respuesta #16 en: 24 de Septiembre de 2009, 16:51:45 »
hola

me fue imposible ponerme hoy con el tema y tendrá que ser mañana...

en MegaPOV, al igual que en POVRay, tenemos la barra de menús en la parte superior, debajo la barra de herramientas y debajo de ésta tenemos en el margen izquierdo un menú desplegable para seleccionar la resolución de salida. bien, justo a su derecha una pequeña ventana que es precisamente la línea de comandos (si dejas el ratón unos instantes sobre ella te muestra el texto descriptivo (Command line...) y ahí escribes el texto que comentaba tal cual y a continuación renderizas (Run) y esperas...
-w1024 -h512    //el tamaño de salida indicado
+fh                   //formato de salida. h = hdr
-ohdr_env.hdr   //-o (de output = salida) y nombre del archivo

si copias y pegas esta línea tal cual en ese recuadro (línea de comandos): -w1024 -h512 +fh -ohdr_env.hdr DECLARE=View=3 al renderizar te creará el archivo .hdr es muy importante que respetes los espacios en blanco cuando los haya y los evites cuando no existan porque es precisamente el separador de comandos.

mañana os doy los pasos para Eagle 3D

un saludo y paciencia

pd: cuando hayas creado el archivo .hdr recuerda borrar esa línea y déjala simplemente como +fn para obtener .png -por ejemplo-

Desconectado Medusa

  • PIC16
  • ***
  • Mensajes: 231
Re: Mejorando las bibliotecas de EAGLE3D
« Respuesta #17 en: 25 de Septiembre de 2009, 01:19:57 »
Ya he renderizado con exito  los dos archivos: hdr_environment.pov y el hdr_mapping.pov, ahora que sigue ??

Desconectado xocas

  • Administrador
  • PIC24H
  • *******
  • Mensajes: 1978
Re: Mejorando las bibliotecas de EAGLE3D
« Respuesta #18 en: 25 de Septiembre de 2009, 11:35:48 »
pues una vez confirmado que no hay problemas con MegaPOV ahora nos queda aplicar mapas HDRI a nuestras escenas de Eagle 3D, siguiendo básicamente las instrucciones dadas por Jaime Vives en su web ( http://www.ignorancia.org/es/index.php?page=eagle3d ).

pero antes vamos a preparar un poco el terreno:
- cargo en Eagle la pcb que quiero pasar a una imagen 3D y me aseguro en el Panel de Control de Eagle 3D que no se mostrará la imagen de entorno (el típico fondo marino...) y que en la pestaña 'Color' esté seleccionado un perfil de color predeterminado, ya que la opción 'Definido por usuario' genera un código pov diferente. en mi caso usaré el perfil por defecto (FR4 con Máscara de Soldadura (Muecke)) y como pcb demo3.brd localizada en la carpeta tutorial de Eagle y no MoDsMega.brd para evitar tiempo de render.
- a continuación, en POVRay verifico que no falten componentes y que el punto de vista elegido sea el correcto. no pasaré al trabajo con MegaPOV antes de dar por terminado el trabajo en POVRay. recordar que si necesitamos modificar algo en Eagle o Eagle 3D el archivo será sobreescrito y los cambios se perderán...
- necesito el mapa HDRI que Jaime usa en su código, de manera que lo descargo del enlace que nos proporciona (cocina) y lo copio a la carpeta donde se haya el archivo .pov a renderizar.
- descargo una imagen para el fondo desde Accustudio o similar. en mi caso lo hago desde esta dirección: http://textures.forrest.cz/ y es la primera imagen de la categoría 'marble'... únicamente por hacerlo diferente. la copio igualmente a la carpeta del archivo .pov

y ahora paso por fin a MegaPOV...
- abro el archivo y añado un par de barras de comentario a la línea '#version 3.5;' para dejarla en '//#version 3.5;'
- copio a continuación el código del primer recuadro proporcionado por Jaime Vives en la línea siguiente:

Código: C
  1. //#version 3.5;
  2. #version unofficial MegaPov 1.21;
  3.  
  4. // radiosity control
  5. ...
  6. global_settings {
  7. ...
  8. // default finish for all textures:
  9. ...
  10. // HDRI environment
  11. ...

hago unos pequeños cambios en la imagen de fondo, así que este código:
Código: C
  1. // wood table
  2. plane{y,-3
  3.  texture{
  4.   pigment{image_map{jpeg "oakdoor.jpg"}} // use any jpg of your choice
  5.   normal{bump_map{jpeg "oakdoor.jpg"}}
  6.   finish{reflection{0,.1}}
  7.   translate -.5 rotate <90,90,0> scale <10,10,5>*30
  8.  }
  9. }

se queda así:
Código: C
  1. // fondo de mármol
  2. plane{y,-3
  3.  texture{
  4.   pigment{image_map{jpeg "ambrosia.jpg"}} //jpeg descargado previamente
  5.   //normal{bump_map{jpeg "ambrosia.jpg"}} //prescindo de esta línea al tratarse de una superficie pulida
  6.   finish{reflection{0,.1}}
  7.   translate -.5 rotate <90,90,0> scale <10,10,5>*10 //cambio la escala para adaptarla al tamaño de la imagen
  8.  }
  9. }


desciendo a continuación por el código hasta localizar las luces y les añado una apertura y cierre para que lo tome como comentarios, quedando así:

Código: C
  1. /*
  2. light_source{<lgt1_pos_x,lgt1_pos_y,lgt1_pos_z> White*lgt1_intense}
  3. light_source{<lgt2_pos_x,lgt2_pos_y,lgt2_pos_z> White*lgt2_intense}
  4. light_source{<lgt3_pos_x,lgt3_pos_y,lgt3_pos_z> White*lgt3_intense}
  5. light_source{<lgt4_pos_x,lgt4_pos_y,lgt4_pos_z> White*lgt4_intense}
  6. */

ahora guardo el archivo y renderizo (Run) para que me lleve al error de 'environment'. en la versión 1.10RC3 de Eagle 3D esa variable ha sido renombrada a 'env' pero se sigue conservando su definición en el archivo user.inc. le cambiamos el nombre tal como sugiere Jaime y lo intentamos de nuevo para obtener algo parecido a esto:



no hay texturas todavía definidas o cambiadas en los .inc de Eagle 3D y por ello no tenemos el realismo que esperábamos, pero esta imagen nos certifica que se están aplicando las cosas de manera correcta.
veremos después los problemas que nos pueden surgir en función de como hayamos configurado Eagle 3D->POVRay y alguna que otra cosilla más

un saludo
« Última modificación: 07 de Julio de 2010, 09:55:06 por xocas06 »

Desconectado xocas

  • Administrador
  • PIC24H
  • *******
  • Mensajes: 1978
Re: Mejorando las bibliotecas de EAGLE3D
« Respuesta #19 en: 25 de Septiembre de 2009, 15:20:06 »
ummm... demasiado pobre... lo veremos mejor con MoDsMega:



renderizada a 1024*768 y reducida al mismo tamaño que la anterior posteriormente para mostrarla en el Foro.

un saludo

« Última modificación: 07 de Julio de 2010, 09:55:56 por xocas06 »

Desconectado cdrpo

  • PIC18
  • ****
  • Mensajes: 317
Re: Mejorando las bibliotecas de EAGLE3D
« Respuesta #20 en: 25 de Septiembre de 2009, 16:13:27 »
Esta es la imagen original sin optimizar



Para aumentar la calidad hay que modificar las texturas de las siguientes bibliotecas de EAGLE3D

transistor.inc,
trafo.inc,
tools.inc,
switch.inc,
special.inc,
socket.inc,
resistor.inc,
qfp.inc,
ic.inc,
diode.inc,
connector.inc,
col.inc,
cap.inc

Quien se une a cambiar las texturas, pues son demasiadas lineas por explorar y sobrescribir por ejemplo pines grises por metálicos, ...

Desconectado xocas

  • Administrador
  • PIC24H
  • *******
  • Mensajes: 1978
Re: Mejorando las bibliotecas de EAGLE3D
« Respuesta #21 en: 25 de Septiembre de 2009, 16:37:33 »
dando un pequeño repaso al código tenemos:
- declaración de parámetros de radiosity.
- assumed_gamma 1.9 = diferente según sistema operativo, hace referencia al brillo de la imagen.
- radiosity. amplia información en el manual de POVRay sobre radiosity y sus modificadores.
- guarda un archivo con extensión .rad que carga posteriormente. este enlace os puede aclarar el motivo.
- se crea una esfera de gran tamaño que envuelve la escena, para aplicarle el mapa HDRI.
- ya he comentado algunas cosas sobre mapas de imagen en este tema.

encontraréis otros mapas HDRI con los que probar en la web de Paul Debevec tal como se indica en la web de Jaime Vives. sus trabajos son muy interesantes y recomiendo que os paséis también por aquí: http://www.debevec.org/ y este es un enlace para obtener un visor para los mapas HDRI: http://www.debevec.org/FiatLux/hdrview/ 

he usado unas cuantas veces imágenes de alto rango dinámico en fotografía de manera que cualquier duda ya sabéis...

una vez más se me ha ido el día y se queda para una próxima intervención comentaros por qué la imagen de demo3 aparece tan pobre con respecto a modsmega. en ningún caso se han tocado las texturas, así que por eso no es... ¿cual creéis que es el motivo...?

un saludo

Desconectado xocas

  • Administrador
  • PIC24H
  • *******
  • Mensajes: 1978
Re: Mejorando las bibliotecas de EAGLE3D
« Respuesta #22 en: 27 de Septiembre de 2009, 10:48:28 »
es sencillo crear nuestros propios mapas HDRI partiendo de una foto si usamos un programa como IC, que podemos descargar de la web de LILYsoft su uso es muy sencillo y se acompaña de un manual en html. este programa hace innecesario el uso de HDRView mencionado anteriormente

en WebHDR hay información abundante sobre HDR así como software para diferentes plataformas.

en la web Christoph's Page unos tutoriales sobre radiosity y otras cosillas interesantes de POVRay.

al renderizar se ha creado un archivo saved.rad en la misma carpeta del archivo .pov, probar a editarlo con Notepad++ o similar.

recordar que tenéis Manuales de POVRay y MegaPOV en castellano en la web de Jaime Vives.

- 'MegaPOV, the popular collection of unofficial extensions of POV-Ray'. esta entradilla en su web deja bastante claro el concepto MegaPOV: añade a POVRay posibilidades de las que éste carece de base. algunas de estas extensiones se han ido añadiendo a medida que POVRay crecía, y creo que se seguirá por este camino.

- POVRay 3.7.0.beta.34: Por favor no utilice este software para cualquier propósito importante. Tampoco debe utilizarlo si no está dispuesto a hacer frente a ocasionales defectos y características incompletas (Please do not use this software for any important purpose. Nor should you use it if you are not willing to put up with ocassional glitches and incomplete features). no es algo mío si no una indicación del propio fabricante, y mensajes similares se repiten sobre sus nuevas instrucciones: Esta característica está actualmente en fase experimental y puede estar sujeta a cambios (This feature is currently experimental and may be subject to change). para colmo, el manual que acompaña es de la v3.6 así que no tengo referencias sobre sus 'novedades' con respecto al código.
hay más motivos por los que no uso esta versión pero el principal es querer saber que si algo no funciona es por un error mío y no por un bug de POVRay, para funcionamiento penoso ya tengo Windows...

- POVRay 3.6.2: por lo que sé, esta versión corrige un problema que se daba bajo Windows Vista en versiones anteriores, pero no añade nada nuevo o al menos yo no lo he visto.

actualmente uso la versión 3.6.1c.icl8.win32 bajo Windows XP y hasta ahora no he encontrado un solo motivo para cambiarla, pero si bastantes para no hacerlo.

un saludo

Desconectado xocas

  • Administrador
  • PIC24H
  • *******
  • Mensajes: 1978
Re: Mejorando las bibliotecas de EAGLE3D
« Respuesta #23 en: 27 de Septiembre de 2009, 16:06:25 »
podéis ir cambiando los parámetros de tools.inc y dejarlos tal como se comenta en la Persistencia de la Ignorancia y algún componente si queréis. la opción final de cambiar la cámara y usar focal_blur dejarla de momento, lo comentaré posteriormente.

aunque con matices, ya he logrado prescindir de MegaPOV y obtengo un resultado parecido en POVRay v3.6.1... con matices... sigo trabajando en el tema.

a pesar de que POVRay v3.7beta no genera error al usar archivos hdr, no lo hace bien... veremos algún ejemplo.

la gamma, radiosity y los mapas de imagen hdr funcionan de forma diferente según usemos MegaPOV o entre una versión y otra de POVRay. en la v3.7beta han cambiado bastante sus condiciones pero no encuentro la info necesaria para conocer bien como se establecen ahora. los valores dados en la web de Jaime son válidos para MegaPOV, para POVRay es necesario retocarlos.

cdrpo, supongo que tú si sabrás como conseguir un buen resultado con la v3.7 y HDRI ya que has comentado algo anteriormente. sería interesante conocer tus experiencias en este campo.

un saludo

EDITO: versiones anteriores a la v3.7beta no reconocen el formato hdr, ya lo sé, pero si otros formatos que nos pueden servir para el fin.
« Última modificación: 27 de Septiembre de 2009, 16:13:56 por xocas06 »

Desconectado xocas

  • Administrador
  • PIC24H
  • *******
  • Mensajes: 1978
Re: Mejorando las bibliotecas de EAGLE3D
« Respuesta #24 en: 28 de Septiembre de 2009, 14:50:48 »
sigamos divirtiéndonos con el tema...

renderizo modsmega.pov después de añadirle el código visto antes, con radiosity y un mapa hdr.
uso los parámetros '+FN +SR10 +SC120 +ER430 +EC550'en la línea de comandos para obtener una porción de la pcb a una resolución de 1280x1024 y convierto en comentario (//) la línea 'randomize on' ya que sólo afecta a MegaPOV

MegaPOV 1.21:
Código: C
  1. // #version 3.6;
  2. // #version 3.7;
  3. #version unofficial MegaPov 1.21;
  4. ...
  5. // randomize on
  6. ...
  7. // HDRI environment
  8. sphere{
  9.  0,350     //reduzco el tamaño original de 500
  10.  texture{
  11.   pigment{image_map{hdr "kitchen_probe" map_type 7 interpolate 2}}
  12.   finish{ambient .5 diffuse 0}
  13.   rotate 90*y
  14.  }
  15. }


POVRay 3.7.beta34:
Código: C
  1. // #version 3.6;
  2. #version 3.7;
  3. // #version unofficial MegaPov 1.21;
  4. ...
  5. // randomize on
  6. ...
  7. // HDRI environment
  8. sphere{
  9.  0,350     //reduzco el tamaño original de 500
  10.  texture{
  11.   pigment{image_map{hdr "kitchen_probe" map_type 1 interpolate 2}}  //cambio valor map_type para que funcione en POVRay
  12.   finish{ambient .5 diffuse 0}
  13.   rotate 90*y
  14.  }
  15. }


POVRay 3.6.1:
Código: C
  1. #version 3.6;
  2. // #version 3.7;
  3. // #version unofficial MegaPov 1.21;
  4. ...
  5. // randomize on
  6. ...
  7. // HDRI environment
  8. sphere{
  9.  0,350     //reduzco el tamaño original de 500
  10.  texture{                                                           //cambio a una imagen png y
  11.   pigment{image_map{png "kitchen_probe" map_type 1 interpolate 2}}  //cambio valor map_type para que funcione en POVRay
  12.   finish{ambient .5 diffuse 0}                                      //hdr no es reconocido en la v3.6
  13.   rotate 90*y
  14.  }
  15. }


para cambiar el formato de la imagen hdr simplemente la abrí con IC y la guardé como png. la v.3.7 muestra varias alertas en la ventana de mensajes y expande con basura el área renderizada, como podéis ver.

para conocer mejor como funciona esto, he creado una esfera sobre un plano en plan mosaico que refleja lo que hay a su alrededor y la he encerrado a su vez en una esfera mayor a la que aplico el mapa de imagen:

MegaPOV 1.21:


POVRay 3.7.beta34:


¡¡ sorpresa !! ¿porqué pasa esto?... bueno, si leemos el manual de MegaPOV veremos que map_type 7 es especial para mapas hdr y su correspondiente ajuste. como en POVRay este modo 7 no existe pasa esto. seguiré más adelante con alguna solución posible.

POVRay 3.6.1:


a diferencia de una imagen de alto rango dinámico (HDRI) que tiene 32bits, un simple png de 8 (o 16bits a lo sumo) pierde mucha información y la consecuencia más evidente en este caso es una pérdida de luminosidad notable.

eso es todo por ahora... un saludo
« Última modificación: 07 de Julio de 2010, 09:58:13 por xocas06 »

Desconectado xocas

  • Administrador
  • PIC24H
  • *******
  • Mensajes: 1978
Re: Mejorando las bibliotecas de EAGLE3D
« Respuesta #25 en: 29 de Septiembre de 2009, 15:02:21 »
para corregir el problema con el mapa de imagen sobre la esfera podemos recurrir al programa IC. en el menú 'Image' opción '3D Projection' cambiamos el destino a 'Latitude/Longitude' para obtener una imagen plana. en mi caso como voy a trabajar con POVray 3.6 la guardo en formato .png



ahora le aplico el mapa de imagen sin problemas:


el problema se daba porque la imagen sufría dos transformaciones: la inicial del hdr y una segunda al usar map_type 1.

otra web con imágenes hdr: http://unparent.com/ (PHOTOGRAPHY->HDR probes) y un montón de info interesante sobre HDR: http://www.dzoom.org.es/cat-60-0.html

un saludo
« Última modificación: 07 de Julio de 2010, 09:59:38 por xocas06 »

Desconectado Medusa

  • PIC16
  • ***
  • Mensajes: 231
Re: Mejorando las bibliotecas de EAGLE3D
« Respuesta #26 en: 30 de Septiembre de 2009, 16:47:20 »
Hola xocas06, esta muy excelente tus apuntes pero quisiera saber como puedo colocar un fondo blanco o cualquier otro color, no deseo usar los fondos clasicos.


Desconectado xocas

  • Administrador
  • PIC24H
  • *******
  • Mensajes: 1978
Re: Mejorando las bibliotecas de EAGLE3D
« Respuesta #27 en: 01 de Octubre de 2009, 13:29:55 »
hola

mientras preparo alguna cosilla más para terminar este tema puedes darle un repaso a otras opciones para la creación de fondos.

además tu consulta es un buen toque de atención sobre algo que se me estaba olvidando, también relacionado con los fondos, y que trataré en breve...

un saludo

Desconectado Suky

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 6743
    • Micros-Designs
Re: Mejorando las bibliotecas de EAGLE3D
« Respuesta #28 en: 02 de Octubre de 2009, 01:09:48 »
Hola Xocas! Gracias por las explicaciones! Hoy me puse a probar las mejoras que se comentan y voy siguiendo paso a paso lo que vas indicando, pero cuando intento renderizar me indica que no encuentra el archivo POVRAY.INI (C:\Archivos de programa\POV-Ray for Windows v3.62\Render) :? A que se debe? Se me paso algo por alto? También puede ser la hora que se me ocurrió realizar esto  :D Estoy  :z)  :D

Muchas gracias, saludos!
No contesto mensajes privados, las consultas en el foro

Desconectado xocas

  • Administrador
  • PIC24H
  • *******
  • Mensajes: 1978
Re: Mejorando las bibliotecas de EAGLE3D
« Respuesta #29 en: 02 de Octubre de 2009, 06:50:30 »
creo que encontrarás la respuesta en este tema

las nuevas versiones de POVRay establecen un nuevo sistema de carpetas, y la carpeta Renderer ya no existe, ahora todos los archivos de configuración se instalan en la carpeta Ini...

un saludo amigo Suky