[MODULE] Hiper3D

Extensiones oficiales y no para expander el lenguaje Gemix.

Re: [MODULE] Hiper3D

Postby erkosone » Sat Jul 20, 2013 9:05 pm

Si, se ve, y los textos también.
User avatar
erkosone
 
Posts: 10654
Joined: Tue Feb 24, 2009 2:13 pm
Location: Barcelona.

Re: [MODULE] Hiper3D

Postby CicTec » Sat Jul 20, 2013 11:41 pm

Entonces no veo porque no se pueden hacer particulas y tal...
User avatar
CicTec
 
Posts: 16553
Joined: Thu Jul 31, 2008 10:18 pm

Re: [MODULE] Hiper3D

Postby Nightwolf » Sun Jul 21, 2013 9:22 am

Básicamente, el problema es que no se puede poner un graph en mitad de dos md2.
User avatar
Nightwolf
 
Posts: 3032
Joined: Tue Oct 07, 2008 3:26 pm
Location: Aquí mismo.

Re: [MODULE] Hiper3D

Postby erkosone » Sun Jul 21, 2013 3:09 pm

Pues va a ser que si se puede Night :)

Lo que pasa es que no hay que pensar como si todo fueran procesos.
La librería puede crear gráficos tipo Sprite, eso si, sin transparencia, eso es una limitación un poco fea, pero por poder se puede, no se si será sencillo de modificar que el color rgb(0,0,0) no se renderize, olvidemos el alpha channel por que eso ya es otra cosa y no tengo ni idea de si el zbuffer de esta librería puede contemplar el canal alpha, si CicTec investigara el tema del color negro podría ser un gran avance, pues podrías hacer un juego en 32 bits con los sprites sin alpha channel para la escena en 3D, pero todo el interfaz del juego puede estar perfectamente en 32 bits con transparencia "como siempre".

No recuerdo que tipo de objeto es exactamente el "Sprite" en la librería pero si que puedes cargarlo, lo que pasa es que he escuchado que Simulatorone decía que había algún problema con la descarga de texturas, entonces no se hasta que punto podrás cargar animaciones con sprites, pero por poder se puede, pero hay que testear los límites.

Otra opción, para no usar sprites a palo seco, es esta:
- Aprobechando que ahora tenemos la ChipMunk disponible, con esta librería está tirado vectorizar un sprite "o los que hagan falta", es tan simple como que se hace con una sola linea de código, teniendo, el array de vectores que definen el contorno de la figura plana, se crea una copia del array y se añade como una segunda cara, separada en profundidad a la distancia que se quiera, y se interconectan los vectores "en el mismo orden que el array inicial de la primera cara", osea, si tengo un array de 100 vectores que definen el contorno de un sprite, pues creo una copia y la añado al array original, entonces conecto el vector cero con el 101, el 1 con el 102 y así con todos.. y para que esto?
Para crear un objeto 3D a partir de un cochino sprite.

Es bastante simple y el efecto puede ser muy similar al de la librería de boxels que comentabamos hace poco, aunque no tiene nada que ver.
La verdad es que se le puede sacar mucho partido a esta lib 3D, solo hay que ponerse con ella unos días y tener unas cuantas ideas buenas.

Si miramos la librería como una herramienta para hacer los mismos juegos 2D de siempre pero en semi 3D, puede dar mucho de si, por que toda la física de colisión la tenemos con la chipmunk y no hay que preocuparse de nada, solo de crear modelos, aunque bueno.. internet está tan plagada de ellos que no hace ni falta.
User avatar
erkosone
 
Posts: 10654
Joined: Tue Feb 24, 2009 2:13 pm
Location: Barcelona.

Re: [MODULE] Hiper3D

Postby Nightwolf » Mon Jul 22, 2013 10:07 am

¿Se puede preparar un ejemplo de ésto que dices Erkos? Dos cubos y en medio un sprite (con transparencia claro). Con ésto ya podría empezar a hacer nuevas cosas :)
User avatar
Nightwolf
 
Posts: 3032
Joined: Tue Oct 07, 2008 3:26 pm
Location: Aquí mismo.

Re: [MODULE] Hiper3D

Postby erkosone » Mon Jul 22, 2013 3:59 pm

Hola Night, según estoy viendo por algunos foros hay que activar una feature en la tinyGL para que los sprites se pinten con transparencia, yo no tengo mucha idea del tema GL por eso que pego la info que he encontrado por si CicTec sabe como añadirlo o comprobar si esto está activo en el modulo para que pueda pintar texturas con alpha channel:

-------------------------------------------
your problem is that even if blending is enabled pixels are always written to the buffers (color/depth). even completely transparent ones. if you want to disable writing of transparent pixels you should enable alpha testing. another solution (but this depends what you want to achieve) is to disable writing to depthbuffer completely (glDepthMask(GL_FALSE) or disable depth buffer testing. this way elements won't be 'sorted' but with this example it doesn't really matter.
-------------------------------------------
This is an example to see what is the problem, but for my effect i need depth buffer, i tried before to enable glEnable(GL_ALPHA_TEST), and it didn't work when i tried, but now it works, i added glAlphaFunc(GL_GREATER, 0.4f) and this was the part missing.

Thanks a lot, Kiero!
-------------------------------------------

No se si esto pueda orientar a CicTec para activar correctamente las transparencias en esta librería.
User avatar
erkosone
 
Posts: 10654
Joined: Tue Feb 24, 2009 2:13 pm
Location: Barcelona.

Re: [MODULE] Hiper3D

Postby CicTec » Thu Aug 01, 2013 6:18 pm

erkosone wrote:Hola Night, según estoy viendo por algunos foros hay que activar una feature en la tinyGL para que los sprites se pinten con transparencia, yo no tengo mucha idea del tema GL por eso que pego la info que he encontrado por si CicTec sabe como añadirlo o comprobar si esto está activo en el modulo para que pueda pintar texturas con alpha channel:

-------------------------------------------
your problem is that even if blending is enabled pixels are always written to the buffers (color/depth). even completely transparent ones. if you want to disable writing of transparent pixels you should enable alpha testing. another solution (but this depends what you want to achieve) is to disable writing to depthbuffer completely (glDepthMask(GL_FALSE) or disable depth buffer testing. this way elements won't be 'sorted' but with this example it doesn't really matter.
-------------------------------------------
This is an example to see what is the problem, but for my effect i need depth buffer, i tried before to enable glEnable(GL_ALPHA_TEST), and it didn't work when i tried, but now it works, i added glAlphaFunc(GL_GREATER, 0.4f) and this was the part missing.

Thanks a lot, Kiero!
-------------------------------------------

No se si esto pueda orientar a CicTec para activar correctamente las transparencias en esta librería.

He estado mirando la TinyGL:
- No tiene implementado el comando glAlphaFunc, con lo cual no se pueden usar texturas con pixels transparentes para que no se vean (para sprites).
- No tiene implementado el comando glBlendFunc, necesario para hacer el alphablending, con lo cual no se puede haber transparencias en objetos.
- No tiene implementado soporte de modulacion de texturas, con lo cual un color se puede aplicar SOLO a un objeto que no este texturizado, viceversa se ignora.

Basandose en este datos, esta libreria no permite avanzar mas el engine.
User avatar
CicTec
 
Posts: 16553
Joined: Thu Jul 31, 2008 10:18 pm

Re: [MODULE] Hiper3D

Postby SimulatorOne » Thu Aug 01, 2013 8:43 pm

pos eso.
a esperar. viendo que tiene esas limitaciones no mucho se puede hacer.

por decirte que parece el rendering 3D de la Nintendo DS (hasta este es superior en algunas cosas)
Ni de la PSX o N64....
User avatar
SimulatorOne
 
Posts: 6626
Joined: Tue Nov 17, 2009 2:52 pm
Location: Barcelona

Re: [MODULE] Hiper3D

Postby Nightwolf » Thu Aug 01, 2013 10:51 pm

Ojalá se mejore, a poco que se haga, quedaría genial. Simplemente genial :)
User avatar
Nightwolf
 
Posts: 3032
Joined: Tue Oct 07, 2008 3:26 pm
Location: Aquí mismo.

Re: [MODULE] Hiper3D

Postby CicTec » Fri Aug 02, 2013 8:50 am

El problema es que el autor ha abandonado el desarrollo, con lo cual no hay nadie que la mejore.
User avatar
CicTec
 
Posts: 16553
Joined: Thu Jul 31, 2008 10:18 pm

PreviousNext

Return to Extensiones Gemix

Who is online

Users browsing this forum: No registered users and 5 guests