Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Porque Usar Direct3d En Lugar De Opengl

Iniciado por javiel, 10 de Enero de 2005, 09:31:27 AM

« anterior - próximo »

javiel

 Bueno, esto no quiere ser una pregunta demasiado técnica. Simplemente me gustaría que ustedes que lleváis mucho tiempo programando juegos me explicáseis una cosilla que nunca me quedó clara.

Llevo poco tiempo programando videojuegos, ahora estoy haciendo un juego en 2D, pero ya me pica el gusanillo y estoy viendo tutoriales de programacion en 3D y veo que mucha gente utiliza tecnología como Direct3D (creo que es) que se puede utilizar en un solo sistema operativo (Windows). Yo en mi casa sólo utilizo Software Libre, pero la pregunta no va si el Software Libre es mejor que el propietario

¿Porque utilizar una tecnología que es propietaria de un sólo sistema operativo si se puede utilizar otra que es multiplataforma y se puede llegar a más gente?

Ya digo que no programo en 3D pq lo que puede ser que sea por miles de motivos, como que hay mas documentacion de una cosa, como que tiene mas posibilidades, o cualquier otra. Me gustaría que me dijéseis cual es vuestra razón si es vuestro caso. Yo lo tengo claro, no pienso gastar mi tiempo en una tecnología propietaria de un sistema operativo. Lo mismo diría para algo que sólo fuese sólo para Linux.

No quiero crear polémica sobre que es mejor ni peor, ni una disputa alrededor del Software Libre, no va por ahí. Además esa polémica no se tiene que dar aquí

Saludos y gracias a todos
uper-Tirititran: el superhéroe gaditano (http://www.super-tirititran.com)

sés

 Yo hace poco me puse a trastear con cosillas 3D, aunque lo dejé algo de lado por falta de tiempo. Mi solución es sencilla, yo no quiero programar solo para Windows.

Si quieres programar también para Linux, aunque sea en un futuro lejano, o simplemente vas a dejar el código fuente para otros, si es OpenGL será más útil.

Yo desde luego no me he planteado aprender DirectX, o el día que decida hacer algo para otro SO tendré que aprender OpenGL. Y si algún día necesitara usar DirectX, como las bases son similares...

Sobre que API es mejor, no te puedo decir nada, ya que solo he usado OpenGL y no tengo mucho nivel, la verdad.
Soy indeciso... ¿o no?

herman

 prefiero opengl+sdl porke lo encuentro mas facil que directx

tantan
 may have Alzheimer's but at least I don't have Alzheimer's

TheAzazel

 En rendimientos y capacidad son casi exactamente iguales, para mi, OpenGL es mucho mas sencillo que DirectX y a la vez: multiplataforma.
Ahora, toca esperar algun partidario de las directx... jeje

senior wapo

 Usa Direct3D, llegarás a más gente con ese sistema propietario que con uno libre y multiplataforma como OpenGL (la polémica la dejo para otro post). Si eso te da igual, y es por aprender, pues OpenGL es más facilito.

Yo después de trastear con ambos me decidí por ninguno, y opté por un motor3D que soporte ambos. Mirate el motor Irrlicht si estás empezando  :D




Buffon

 pues voy a contestar yo hehehe.

he usado, ambos, tando OpenGL, como DirectX, la diferencia entre ambos es sencilla, opengl es sólo para graficos, directX asume todo lo que una API debe proporcionar.

-sonido
-red
-graficos 3D
-graficos 2D
...

lo asume todo, cierto es que con SDL tienes un rendimiento a favor, y además es multiplataforma, yo personalmente no utilizo la SDL, uso sólo OPENGL + GLUT, el resto de temas prefiero librerias más especializadas en esos temas en concreto.

en DirectX lo que mayormente he tocado es 2D, aprender es dificil, eso es cierto, pero una vez sabes utilizar DirectX todo se vuelve más sencillo, te montas tus propias funciones para no tener tantos punteros a NULL por medio.

Lo de que DirectX no es multiplataforma, es cierto en parte, hay ports de DirectX para LINUX.

Yo sigo en mi caso de utilizar OPENGL, pero por el único motivo de ser código libre, la comunidad es la comunidad.

sés

Cita de: "senior wapo"Usa Direct3D, llegarás a más gente con ese sistema propietario que con uno libre y multiplataforma como OpenGL
(ses) Mí no entender.

¿Cómo puedes llegar a más gente con algo que funciona en menos sistemas?
Soy indeciso... ¿o no?

vincent

 Muy buenas,

yo he estado trasteando un poco con las dos y creo que es mejor DirectX, ni que se para la comodidad del programador. DirectX es una API que incluye funciones de más alto nivel ( D3DX... ) que facilitan un monton las cosas. Como contra quizá tiene el inconveniente de que te tendras que pegar un poco con todo el tema más coñazo de windows y las ventanas, aunque si solo lo quieres para hacer demos, ya tienes un framework bastante bien echo, que es el que ellos utilizan para los ejemplos.

Pero bueno, tampoco se diferencian tanto, así que una vez que sepas cómo va una, no te costará mucho aprender la otra, a parte que lo importante no es aprender una API de miedo, sinó saber como funcionan los algoritmos.

Espero que te haya servido de algo.

VinCenT
Desarrollo en .Net y metodologías http://devnettips.blogspot.com

Haddd

 Si quieres aprender rápido y con mucha potencia, escoje Managed DX. Hay muchos tutoriales para empezar con C# y MDX, y te aseguro que en 2 patadas resuelves la mayoría de los típicos problemas sin necesidad de leer cientos de tutoriales.  

senior wapo

 
Cita de: "sés"
Cita de: "senior wapo"Usa Direct3D, llegarás a más gente con ese sistema propietario que con uno libre y multiplataforma como OpenGL
(ses) Mí no entender.

¿Cómo puedes llegar a más gente con algo que funciona en menos sistemas?
Porque hay mas compradores usando un PC con Direct3D funcional que utilizando OpenGL.

Hay más plataformas que soportan OpenGL, pero la base instalada total de PCs con OpenGL funcional (no testimonial) es menor. Y de ellos, ¿ cuantos compran juegos?

Si te vas a preguntar un foro de frikis informáticos como stratos, 3D poder y similares, pues te saldra un porcentaje anormalmente alto de PCs con un OpenGL instalado aceptable para correr juegos sin problemas. Win98 SE viene de fábrica con DX6, W2k con DX7 y XP con DX8. Y funcionando aceptablemente. OpenGL no.

No convirtamos este hilo en OGL vs DX, si quieres abre otro  y me comentas todo lo que quieras sobre DOOM, Macintosh, Linux y la leyenda urbana de GarageGames sobre el % de ventas de juegos Mac(OGL).  :)

tewe76

 El hecho de que DX sea una solución completa (no es sólo D3D) ya es un motivo importante. Y también estoy de acuerdo con senior wapo en que DX funciona sólo en Windows, pero en todos los Windows. OGL funciona en cualquier SO, pero sólo en algunas máquinas. Sin ir más lejos, yo no pude trastear con OGL porque en mi PC no me funciona casi ningún programa que use OGL.
Tewe
www.TAPAZAPA.com : Funny and easy to play games for all ages! - Fairy Match - Brain Crash
www.LaRebelionDelBiberon.com : Experiencias de unos padres primerizos

Lord Trancos 2

 Eso del OpenGL funcional,... no se yo...

Yo lo unico que se es que cuando programaba con DX, siempre tenia que decirle a la gente que tenia que tener la version tal de DirectX (normalmente la ultima) y la ultima version de los drivers.

Con OpenGL solo he tenido que decir lo de los drivers...

Yo empeze a programar con DX y me pase a OGL por poder hacer cosas con Linux.

Empeze con DX pq empeze con DirectDraw, y en aquella epoca era lo unico que conocia para 2D rapido y no tenia inquietudes de multiplataforma.
on los años y mucho esfuerzo he llegado a atesorar una ignorancia total sobre casi todas las cosas.
Gate to Avalon (mi Blog)

vincent

Cita de: "Haddd"Hay muchos tutoriales para empezar con C# y MDX
Podrias recomendar alguno Haddd?

Merci!
Desarrollo en .Net y metodologías http://devnettips.blogspot.com


TheAzazel

 Uhmm.... quien tiene ahora un windows 98? (no digo ya un 95) o un winnt?? creo q nadie q quiera jugar tiene esas cosas ya.... asike... se puede asumir que hay lo mismos ordenadores corriendo dx q opengl(en los antiguos es cierto, q el soporte opengl no era muy bueno y tal...pero es cosa del pasado).
Si kieres algo rapido..escoge la via de haddd, managed dx utilizando C# (y pq no su motor, q encima tienes las fuentes y puedes aprender modificar todo lo q kieras).
Si kieres algo multiplataforma...opengl y por ejmplo...sdl...
ese argumento de q dx es todo(graficos, sonido, red, etc.) y opengl no lo es... es cierto a medias... usando conjuntamente opengl y sdl te kitas todo el marron del medio y MULTIPLATAFORMA :).
q es eso del port de directx para linux? tambien hay un emulador de windows para linux... y funcionar funciona...pero a pedales.... por ahi no paso jeje

y weno...hasta ahora, todo han sido mas o menos comentarios subjetivos y sobre gustos o demas... a mi me gustaria saber mas...sobre el tema tecnico, no controlo tanto sobre el tema para pronunciarme... pero me gustaria saberlo...se que d3d suele estar mas avanzado y listo para los nuevos juegos(punto de vista tecnologico) y que opengl se actualiza menos (ahora viene la version 2...bien!) pero tiene sus extensiones....
a ver si alguien, nos abre los ojos :)  :ph34r:  






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.