Foros - Stratos

Programadores => Programación gráfica => Mensaje iniciado por: Miguel en 20 de Diciembre de 2002, 12:47:15 PM

Título: Implementar halo solar en openGL
Publicado por: Miguel en 20 de Diciembre de 2002, 12:47:15 PM
                                Hola, somos un grupo de compañeros de la eui que estamos implementando un Sistema Solar en 3D, utilizando OpenGL. Todo muy bonito, pero todavia no hemos conseguido que el sol tenga un halo de luz. Busco codigo fuente en C, que lo implemente o alguna suguerencia de como hacerlo. Gracias!!                                
Título: Implementar halo solar en openGL
Publicado por: Mars Attacks en 20 de Diciembre de 2002, 01:17:26 PM
                                Qué te parece hacer un billboard centrado en el sol con un tga con transparencia cambiante que haga las veces de halo? Si es eso a lo que te refieres, vaya. ¿Te valdría?                                
Título: Implementar halo solar en openGL
Publicado por: Mars Attacks en 20 de Diciembre de 2002, 01:30:13 PM
                                Es más, podéis hacer que todo el sol sea un billboard que vaya cargando una textura (tipo gif) distinta a cada frame, haciendo el efecto de halo.
No estoy seguro de si estamos hablando del mismo concepto de halo. Te refieres a las llamaradas solares de la corteza? Igual te refieres a algo como lo que tiene Haddd implementado en su motor, que es el brillo ese chachichuli que aparece cuando estás mirando hacia el sol.                                
Título: Implementar halo solar en openGL
Publicado por: Haddd en 20 de Diciembre de 2002, 02:07:23 PM
                                El efecto de halo es complejo de realizar. No basta hacer un billboarding porque para que el efecto quede bien depende de la forma del objeto. En el caso de un planeta, el objeto es esférico y tiene un halo esférico, pero en el caso de un meteorito(si quisieras poner un halo), ya no tendría esa forma sino la forma rugosa del propio meteorito.

Lo que suele hacerse es pintar el mismo objeto un poco más grande y transparente. Pero hay un problema, y es que el halo sí que te saldrá bien, pero al pintar el objeto transparente sobre tu planeta, el planeta en sí también se ve modificado. Para corregir esto tienes que usar el Stencil. Hay docs y ejemplos sobre esto en flipcode e internet.                                
Título: Implementar halo solar en openGL
Publicado por: Storm en 22 de Diciembre de 2002, 01:51:39 PM
                                Y pintar primero el objeto mas grande y transparente y luego el original, con el buffer de profundidad desac. ????                                
Título: Implementar halo solar en openGL
Publicado por: Mars Attacks en 22 de Diciembre de 2002, 02:58:08 PM
                                Yo aún me pregunto si se refiere a esto:

http://www-istp.gsfc.nasa.gov/Education/Mcorona.html

o a esto:

http://www.ne.jp/asahi/stellar/scenes/seik..._e/halo2001.htm

Es decir, si lo que busca es el efecto de corona o el de brillo.                                
Título: Implementar halo solar en openGL
Publicado por: Helius en 23 de Diciembre de 2002, 09:39:38 PM
                                Yo he realizado este efecto creando un billboard con un .tga renderizado dos veces en el mismo sitio. Una de las imagenes la roto a la izqda y la otra a la dcha, así parece que está ardiendo. El tga tiene la forma redonda del planeta en el centro totalmente transparente, y el resto es el halo en cuestion.

Puedes ver una foto aquí: www.lessman.net/planetiso/outworld.html

saludos                                
Título: Implementar halo solar en openGL
Publicado por: Mars Attacks en 24 de Diciembre de 2002, 12:15:24 AM
                                Queda muy bien. ¿Cómo habéis hecho la galaxia? También me gusta cómo os ha quedado.                                
Título: Implementar halo solar en openGL
Publicado por: ethernet en 24 de Diciembre de 2002, 07:31:58 AM
Quizas con un radial blur quedaria guapo.
Por otra parte en nehe.gamedev.net hay un zelda hecho en delphi q tiene esos circulitos q creo q te refieres.

saludos
Título: Implementar halo solar en openGL
Publicado por: Helius en 25 de Diciembre de 2002, 10:59:25 AM
                               
CitarQueda muy bien. ¿Cómo habéis hecho la galaxia? También me gusta cómo os ha quedado.

La Galaxia es aún más simple, es tan sólo un panel rotado unos cuantos grados hacia atrás y visto en perspectiva. También lo roto sobre su eje Z antes de inclinarlo para que de la impresión de que la galaxia gira. El dibujo es el de una galaxia verdadera (M35 creo) sacada de la nasa y adaptado un poco con el photoshop para que se vea bien la transparencia.

saludos