Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





OpenGl o Direct3D

Iniciado por JunXCosio, 01 de Enero de 1970, 01:00:00 AM

« anterior - próximo »

JunXCosio

                                Lo primero decir que no realizo esta pregunta para crear ninguna polemica en el foro ya que esta es una pregunta que me estoy haciendo, estoy iniciandome en esto de las 3D, me he empezado a iniciar en la OpenGL y se me ha pasado la pregunta de si deviera iniciarme en la Direct3D...

Que me recomendais,...

Un saludo
                               
a televisión es muy educativa, cuando alguien la enciende en casa, yo me marcho a la habitación a leer un libro. Groucho Marx

synchrnzr

                                Depende de lo que quieras dedicarte. Si vas a por las DirectX te limitas a entornos Windows y X-Box. Si quieres expandirte a otras plataformas (como Unix) es más recomendable que utilices el OpenGL...                                

Drácula

                                Yo hice primero el motor en DX, después en OGl y ahora he vuelto a DX. Lo he hecho porque DX me da la sensación de que es la que va a dirigir a las tarjetas sobre qué se tiene que hacer, y la información está mucho más empaquetada:DX puede hacer lo que puede hacer y punto. En OGL, puedes hacer mucho más, pero dependes de las tarjetas y drivers. Si tuviera que hacer juegos para una tarjeta, cogería OGL, porque las extensiones te permiten hacer mucho más que con DX. Pero creo que es mas standard DX.                                
ltimas mejoras en Merlín: Multitextura.Control y generación automática de LOD.Importa ASE y X. Frustum Clipping por BB.Render añadido de wireframe y del BB.Animaciones por interpolación.Animaciones de textura...
Actualmente:Octree y jerarquías

Ithaqua

                                Lo de las extensiones molaba antes, ahora es un despiporre.

                               
thaqua^Stravaganza
http://ithaqua.stravaganza.org

ProD

                                Dracula: Con DX puedes hacer todo lo que puedas hacer con OGL, además no tienes que estar dependieno de extensiones para por ejemplo poder usar multitextura...., con DX lo tienes todo sin tener que preocuparte de extensiones... simplemente chekeas si la feature que quieres usar la soporta la tarjeta y punto.
                               
as ideas son capitales que sólo ganan intereses entre las manos del talento

samsaga2

                                Lo de las extensiones del OpenGL la mayoría se arregla con la version 2.0 del estandar.

Por otro lado, para comenzar a hacer tus pinitos en 3d creo que es más recomendable OpenGL. ¿Porque? Por dos razones, el API del OpenGL es una pedazo de maravilla y porque los mejores tutoriales para empezar a programar 3d que hay por internet estan basados en OpenGL (vease por ejemplo http://nehe.gamedev.net/)                                

NeLo

                                Vaya argumentos...

Direct3D es otro pedazo de API, y también hay tutoriales muy buenos, además en español, como los de BeRSeRKeR.
                               
Drowning deep in my sea of loathing

samsaga2

                                Pues a mi me parecen buenos argumentos
Haz un programa en opengl y haz el mismo programa en direct3d. En direct3d tendras que escribir el doble o el triple de código que con gl.

Podeis decir lo que querais pero el API de OpenGL es la decimoquarta maravilla del mundo.

Aunque si quieres una comparación más independiente pasate por http://www.xmission.com/~legalize/d3d-vs-opengl.html , es la primera web que me ha salido buscando con el google.

De todas formas escoger uno o otro siempre depende al final del gusto de cada uno. Aunque tarde o temprano si te gusta la programación de juegos en 3d tendrás que acabar aprendiendote los dos API si quieres aprovechar el máximo partido al ordenata.
                               

samsaga2

                                Joder, tengo que aprender a no reeler mis comentarios, no paro de ver fallos de ortografía por todas partes.                                

ProD

                                samsagaz: Que un programa tenga más líneas en d3D que en ogl casi siempre es debido al código de inicialización de d3d ya que te da un montón de posibilidades y si quieres tratarlas todas te salen bastantes líneas de codigo, pero quitando esta parte el código para pintar triangulos, etc, dará casi el mismo número de líneas.
                               
as ideas son capitales que sólo ganan intereses entre las manos del talento

Drácula

                                Tengo que decir una cosa:D3DX. Es una librería BRUTAL que facilita MUCHO, MUCHO las cosas, y además tienes:
Progressive Mesh
Optimizaciones de Mesh.
Código optimizado para el microprocesador que se utilice.
Esto fue lo que me decidió. Ahora mismo creo LOD sin apenas coste, cuando antes buscaba por internet y no encontraba ninguna librería gratuita que me permitiera esta optimización tan necesaria hoy en día.
Todavía le faltan cosas que tiene la GLUT a nivel de geometrías, pero creo que es una librería en la que puedo confiar que tendrá un buen futuro!                                
ltimas mejoras en Merlín: Multitextura.Control y generación automática de LOD.Importa ASE y X. Frustum Clipping por BB.Render añadido de wireframe y del BB.Animaciones por interpolación.Animaciones de textura...
Actualmente:Octree y jerarquías

BeRSeRKeR

                                Mis comienzos fueron con OpenGL...estuve como 2 años programando con él y me pasé a Direct3D8 y pufff sinceramente fue un alivio...poder pasar de todo el rollo de las extensiones (que cada vez se fue agrabando más). Las cosas me salían mejor y más rápidamente que con OpenGL...y el código muy limpio...nada de esas barbaridades que se dicen por ahí de que si Direct3D es un API sucia y liosa...son todo chorradas (hombre siempre que hablemos de D3D7 para arriba claro). Sí es cierto que si quieres controlar bien todo el tema de la inicialización pues tienes unas cuantas líneas más de código pero tampoco es para basar la superioridad de OpenGL sobre Direct3D en ese argumento...y bueno hasta el momento no he encontrado nada que no pueda hacer con Direct3D que sí se pudiera hacer con OpenGL y he podido comprobar que en el tema de calidad gráfica y velocidad pues como que no hay diferencia...como siempre todo depende de lo bien o lo mal que lo hagas...lo demás son argumentos sin ningún tipo de fundamento...

Saludos

_________________
"Ninguna lágrima rescatará nunca a este mundo que se muere ni al sueño que se desvanece..."
http://www.planetquake.com/digitalys">DiGiTALYS TEAM

[ Este Mensaje fue editado por: BeRSeRKeR el 2002-06-13 21:26 ]                                
¡Si te buscan en nombre de la ley, huye en nombre de la libertad!!

Galimay

                                ya que estais con todo esto...

que os parece la iniciativa de nvidia y microsoft.

"Cg, un estandar grafico para C"

podeis ver la noticia completa en

http://www.nvidia.com

primera plana... tratandose de nvidia (me refiero al desarrollo opengl) y microsoft (directx) parece casi seguro que este va a ser el nuevo estandard.

que os parece?                                

Lord Trancos

                                Ero logico que se pasara de un lenguaje tipo ensamblador a un lenguaje tipo C para crear los shaders... pq Cg es solo para crear los shaders, ¿no? :loco:

Vaya, parece ser que incluso han creado un site solo para el Cg...

http://www.cgshaders.org/
_________________
SaludoteZ de Lord Trancos!
www.dxlab.tk - programación de DirectX con Delphi.


[ Este Mensaje fue editado por: Lord Trancos el 2002-06-14 12:59 ]                                
i>SaludoteZ de Lord Trancos!
http://www.dxlab.tk - http://dxlab.host.sk - programación de DirectX con Delphi.

samsaga2

                                He leido las especificaciones del Cg por encima y si lo he entendido bien todo es precompilado, es decir, las limitaciones de la tarjeta (por ejemplo tamaño de la memoria) se especifican durante la compilación. El Cg resuelve la cuestión de tener que aprenderse el código ensamblador pero no se encarga de estas limitaciones en tiempo de ejecución de la aplicación que sería lo realmente interesante, el poder olvidarse de las diferencias entre tarjetas.
Aunque por otro lado al principio del documento ponen que se han codigo ideas de Java, ¿se referirá a una máquina virutal o a un jit?
¿Alguien lo ha provado?
                               






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.