Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Motor Para Un Proyecto

Iniciado por AgeR, 18 de Diciembre de 2005, 12:12:11 AM

« anterior - próximo »

AgeR

 Hoy estaba un poco ocioso y me ha dado por ver distintos motores y creadores de juegos, y después de un buen rato he acabado con un cacao mental impresionante XD.

A ver si me podéis ayudar un poco. Tengo pensado a partir de Enero/Febrero empezar con el que pretendo que sea mi primer proyecto medianamente serio, y con el que quiero participar en el concurso de la Campus o el Art Futura (según como vaya el proyecto).
El juego será 3D de acción/aventura. Para que os hagáis una idea del tipo de juego, tendrá influencias de juegos como Tomb Raider, Gauntlet... Vamos, escenarios interiores con puzzles y un porrón de enemigos.

La duda me surje pensando en qué motor irá mejor a este tipo de juego, y como digo he estado mirando varios. Comento lo que me ha parecido cada motor...

Irrlicht:
-> A favor
+ Es muy sencillo
+ Se programa en C++
+ Buena comunidad
+ Es gratis

-> En contra
+ Relativo bajo rendimiento
+ Terrenos poco vistosos
+ No hay juegos comerciales que lo usen

Blitz3D:
-> A favor
+ Hay juegos comerciales que lo usan
+ Comunidad grande
+ Fácil cuando aprendes el lenguaje
+ Muchas herramientas soportan su formato b3d

-> En contra
+ Algo anticuado
+ El precio, $100

Dark Basic Pro:
-> A favor
+ Está bastante actualizado
+ Gran cantidad de ejemplos
+ El precio 70 euros.

-> En contra
+  Parece algo lento
+ Ejecutables enormes

Dark Game SDK:
-> A favor
+ El motor del Dark Basic
+ Puedes programar en C++
+ Más rápido que el Dark Basic Pro

-> En contra
+ El precio, 150 euros para comerciales (45 para freeware).


He estado probando ejemplos y demás, pero no me decido por ninguno. Sé que existen otros muchos, como Torque y demás, pero quiero elegir entre uno de estos si puede ser. También me comentan que va a salir el BlitzMax con 3D y que tiene buena pinta, pero no tengo muy claro cuándo saldrá ni sus características.
El Blitz3D lo tengo casi descartado, pero entre los otros no acabo por decidirme.
Del Dark Basic Pro lo que más me echa para atrás es el lenguaje, que acostumbrado a C++ me puedo morir del asco.
Del Dark Game SDK me echa para atrás el precio, 150 euros para cosas comerciales, aunque siempre puedo comprar por 45 el de hacer freeware, y después comprar el otro con el proyecto ya acabado.
Y del irrlicht,  pues no sé, tiene cosas muy buenas y cosas muy malas, pero tiene la ventaja de ser gratuito.

Vamos que eso, tengo un cacao mental impresionante y quiero decidirme con calma y con razones por alguno de ellos. No tengo prisas, porque aún quedan casi 2 meses para que empiece, así que a ver si me podéis ayudar los que hayáis usado uno u otro, o si os han comentado cosas, si están bien, etc...

Gracias! (Perdón por la tochada de post!).

zupervaca

 ¿tu objetivo final del juego sera hacerlo comercial para tiendas o se compre desde un web? lo digo por que el blitz3d esta anticuado, pero funciona en todos los ordenadores ;)

Zaelsius

 Antes de elegir, yo tambien tendría en cuenta la cadena de herramientas que enlaza el arte del juego con el motor en sí.

Por ejemplo:

- ¿Cuántos pasos se requieren para mostrar un escenario diseñado en 3ds max(p.ej.), dentro del juego? ¿Podemos incluir información sobre entidades desde el mismo editor 3d, o es necesario utilizar otra aplicación?

- ¿Qué herramientas de exportación hacen falta? ¿en caso de requerir varios pasos, se puede automatizar el proceso?

- ¿Qué tipo de animación se va a usar para las mallas? ¿Existe compatibilidad inmediata entre el formato escogido(.x,.md2,etc..) y el motor?

Si el motor escogido te facilita todo lo anterior, mucho mejor. Lo último que yo querría es tener que pelearme con herramientas de terceros, intentando mostrar la maldita escena exportada en formato .nisupu con sus jander-lightmaps...

En resumen, asegúrate de que el motor soporta las herramientas y formatos que vas a usar, y que lo hace bien( Hay que cuidar a los artistas ;) )

Warchief

 Yo estoy haciendo el PFC con Irrlicht, y si no tuviese los pies metidos hasta las rodillas no continuaba con él.

+ Por poner un ejemplo hoy he hecho mis propias BBox, porque no tiene BBox no alineadas (con lo que también he tenido que hacer la colisión de BBox no alineadas).
+ De calidad deja bastante que desear.
+ Y la comunidad no suele tener mucha idea de cosas avanzadas.

No lo recomiendo, aunque si aún así lo coges, estaré por aquí para echar un cable.
(Por cierto que yo uso la modificación de un tal Spintz, porque el de Niko, el normal, se me quedaba corto y con fallos importantes).

Si no fuese tan engorroso aprender un motor, me cambiaba a Ogre, Nebula o yo que sé.

Josepho

 Que opinion os merece el (creo que es nuevo) Dark Basic Pro ? Tiene shaders y tal ...
Questtracers.com La web de los creadores de Kukoo Kitchen y Easter Avenger!
http://www.questtracers.com

Sepho-blog >Mi blog personal !
http://sepho.blogspot.com

seryu

 Te recomiendo que utilices el motor en el que resulte mas sencillo exportar los modelos.

Ejemplo: tienes un engine brutal pero como utilizas 3dmax y no milkshape no puedes exportar tus modelos. Entonces intentas cargar 3ds en milkshape pero el objeto sale mal, pierde las UV, la animación imposible, etc.

El mayor trabajo en un videojuego es montar el contenido, por eso la mayoria se centra en los editores y utilidades, normalmente estos son los mejores. Yo prefiero un motor sin shaders pero que tenga un editor ingame como el del Torque, a tener un "state of the art" de esos, que viene pelado. Al fin y al cabo, se trata de hacer un juego. Las 3 pijadas que le falten de "features" puedes añadírselas en el camino. Pero hacer todas las herramientas de trabajo.. eso si que es una paliza que puede durarte meses.


De los que recomiendas, olvídate de darkbasic, sus creadores solo entienden de $$$ y van a sacar pasta.
El blitz3d me parece mucha mejor solución, aunque me saca de quicio no poder trabajar en C/C++.
El irrlicht ha tenido más aceptación de la que debería, supongo que hay mucha gente deseando un motor sencillo y potente. Pero irrlicht no es muy buena idea, esta hecho "a lo loco" y hay cosas que no tienen mucho sentido, tan pronto el tío se mete con los shaders, como que te das cuenta que algo tan sencillo como poder rotar una cámara no esta soportado. Es un ejemplo.

edit: leyendo lo que has puesto en contra y a favor de cada motor, me da la sensación de que estas buscando el mejor motor. Eso es malo. Debes hacerte un txt con la idea de tu juego, o una "lista de la compra" con las cosas que necesitas para tu juego ( poder exportar desde 3dmax 8, terrenos, animacion por bones, etc  ) y luego ir buscandolas en los motores.

Ejemplo: ¿Que mas te da que blitz3d sea algo lento si tu juego va a mover solo 20 mil poligonos en pantalla? Si luego resulta que el darkbasic pro tiene una sintaxis horrible, y vas a tardar el doble en programarlo y en entender el codigo.
¿O que importa que irrlicht tenga terrenos si tu juego lo vas a hacer el 90% en interiores? Para hacer las cuatro montañitas que salgan te puede servir el propio modelador.

Si vas buscando un motor sin lista de la compra, te pasara como el que va a comprar al supermercado sin comer y sin lista: ves algo y lo quieres, aunque no lo necesites. Luego en casa te diras.. para que quiero yo un motor que tiene shaders si yo no se programarlos, o para que quiero terrenos si lo que necesito es que haga un BSP de los interiores (nooo)

Dame una lista con lo que necesita tu juego y te recomiendo un motor.

El mejor motor no existe. Existe el motor mas adecuado a unas necesidades.  

AgeR

 Lo de irrlicht es cierto, la verdad es que lo he ido trasteando días atrás y hay muchas cosas básicas que no tiene.

Lo de darkbasic... por qué dices lo del dinero? Hombre, todos van a por eso, pero no te parece buena opción?
Lo que más pereza me dá es como a tí no poder usar C++. Por eso estaba mirándome el Dark Game SDK, que digamos es un port de las funciones del dbpro a C, con lo que puedo programar más a mi gusto.

Sobre los formatos, hombre, tanto Blitz como DB soportan bastantes formatos... X, BSP, MD2, 3DS, OBJ... No debería ser problema.

Creo que echaré un nuevo vistazo al Torque por si acaso.

seryu

Cita de: "AgeR"Lo de irrlicht es cierto, la verdad es que lo he ido trasteando días atrás y hay muchas cosas básicas que no tiene.

Lo de darkbasic... por qué dices lo del dinero? Hombre, todos van a por eso, pero no te parece buena opción?
Lo que más pereza me dá es como a tí no poder usar C++. Por eso estaba mirándome el Dark Game SDK, que digamos es un port de las funciones del dbpro a C, con lo que puedo programar más a mi gusto.

Sobre los formatos, hombre, tanto Blitz como DB soportan bastantes formatos... X, BSP, MD2, 3DS, OBJ... No debería ser problema.

Creo que echaré un nuevo vistazo al Torque por si acaso.
Pues a los de darkbasic les conocí cuando el primer darkbasic y de hecho hice alguna cosilla para ellos. Obviamente cada uno tiene una experiencia distinta y supongo que habrá quien diga que son unos santos.

Por eso no te los recomiendo, aunque eres tu el que debes decidir si el darkbasic te sirve.

Otra recomendacion: valora un motor por lo que tenga en el momento de la compra, las "future features" son muchas veces una promesa bonita que puede tardar meses, años, o a veces, no llegar nunca.

zupervaca

 
CitarSobre los formatos, hombre, tanto Blitz como DB soportan bastantes formatos... X, BSP, MD2, 3DS, OBJ... No debería ser problema
cuidado con el formato bsp del blitz3d, va lentisimo, incluso una version bsp que hice yo hace años va mas rapido, el md2 olvidate de el, son solo problemas, las luces van muy mal con ellos, los demas formatos no los he probado, decirte que la mejor opcion del blitz3d es su propio formato, es muy bueno para los años que tiene, ademas hay varios programadores que estan haciendo un exportador para el 3dsmax que va de lujo segun ciertas personas que conozco

seryu

 Cierto, recuerdo que algunas cosillas que hice en blitz3d cargando un modelo en md2 me iba mas lento que usando el formato b3d, y obviamente, es el único que incluye todo lo que soporta el motor.

[Vil]

 Exportar b3d desde max va muy muy bien. El exportador trae un visorcillo q va muy bien para ver en un plis como queda en b3d lo q tas viendo en max. El editor de materiales q trae es muy sencillo y eficaz...

Aunq yo tuve algunos problemas a la hora de exportar modelos que tenian varios objeto con modificador SKIN (para los huesos)... pero descubri como arreglarlo y me hice una funcioncilla para animar, o cargar animaciones o algo... que si que funcionaba (si no recuerdo mal el problema final era de blitz, es q no me acuerdo)

Entiendo q la sintaxis de Blitz eche pa tras (la de fark basic me echa incluso a mi), ta hecho pa zoquetes como yo que se asustan cuando ven "mases" o "almohadillas" (c++, c#).

Respecto a q blitz este anticuado... no tienes shaders y efectitos... pero siempre hay q sopesar si tienes tiempo de currarte texturas q encima tengan su mapa de relieve, las propiedades de los materiales, etc, etc. Soy yo, q mi aventura tiene texturas super simples... y me tiro mucho montando un solo escenario. Si empezara con luces, sombras, relieves y demas... me podia morir de asco.

Y de otros motores... pos no te se decir, porque de 3d solo he usado dark basic y blitz... y me quedo con el segundo.

donald

 Pues sí. Blitz es bastante buena solución. Desde el punto de vista de un grafo, también.

Irrlicht...Ni idea a nivel de código. Puede que ahí esten las pegas. Eso ya lo han respondido. Pero muchos engines tienen sus vías, pero a menudo los grafistas se meten en su programa gordo de 3d y no quieren saber de nada más.

irrlicht puede exportar -lo he hecho a menudo- en formato x. Tanto Ultimate Unwrap, como max y el free panda exporter, te exportarán un x usable. Sólo que el panda tiene sus caprichos y tienes que hacer un poco de trial y error hasta que das con los valores buenos. A menudo, haces un resave en mview del sdk de las dx, y eso se lo come ya el engine.  Casi todos los programas, desde Blender, Maya, Lightwave, XSI, cuentan con un exportador gratuito de x. Y suele funcionar. El tema de escenarios, hace un tiempo no, pero ahora puedes exportar un nivel entero y sus lightmaps perfectamente usando formatos que se han currado con loaders extra gente de irrlicht, como MY3D, que dicen que va muy bien para max, Deled(que no me gusta), o el formato MIM y su loader, que es un archivo xml que puedes incluso luego tocar en cualquier editor de texto. Yo he manejado éste último y va perfecto, incluyendo incluso un visor del engine, y el grafo puede ir a golpe de ejecutar un bat, haciendo previews del nivel. Es bastante útil.

Ahora, si el motor no interesa a nivel de código, apaga y vámonos. Yo es que simplemente no lo sé. No sabía lo de que no puede ni rotar una cámara.

Blitz 3d...de lo que habla Vil es de usar el Blitz pipeline, que sí, que está increible para escenarios, porque exporta cada chuminada imaginable de una escena, es lo más parecido a un entorno de los de "verdad" en una compañía de juegos, internamente, pero no llega, claro.Pero en el mundo indy, de lo mejor que hay. Eso sí, yo optaría para las animaciones exportar los modelos con el exportador de ultimate unwrap(o el x, el que te vaya mejor), y cargar luego los u3d en Unwrap, y de ahí, exportas como b3d. No intentes luego cargar los b3d en el mismo Unwrap, porque los muestra mal, pero el exportado está perfecto.

O sea, que yo creo que, al menos a nivel de grafo, están más que bien tanto Irrlicht como Blitz 3d (blitz3d no lleva shaders...Y?..si es para juegos indies, las máquinas a las que van destindas no soportan shaders)

Blitz se muere totalmente con un determinado numero de entidades, de objetos, quiero decir.Yo diría que más que con el poligonaje. Mientras que irrlicht tira con bastante más de ambas cosas. Pero a mi juicio, Blitz es más sencillo y está más terminado, por lo que oigo. Me dicen que para un proyecto grande, es más jodido el blitz que otros lenguajes(irrlicht, no sé).

Hay una librería para hacer el 3d con irrlicht, desde Blitzmax.No sé si terminada.

Torque es un dolor auténtico en el "art path". Aunque me quedé con la curiosidad de probar un exportador dts de animaciones de personaje, que tengo por aquí.Para Blender.

Gamestudio no contaba con pesos en el exportado x(o sea, no los consideraba al importar, creo), la ultima vez que lo ví. Pero tiene su formato mdl7 que es como un md2 muy evolucionado.


el md2 puede dar mucho de sí pero sin precisión, y con los marrones de iluminación que suele dar en los engines...yo siempre optaría por un md3 sin trocear, sin blending(me refiero al que calculaba entre pieza y pieza(brazo-torso)), usado como el md2. Y aún mejor, lo que hicimos como prueba curiosa para Haddd, cargar OBJs y calcular la interpolación, vertex interpolation de esa. Es mucho más flexible y potente, y no meten cortes en el shading (ya que los meten en la malla) como el md3 y md2, cuando hay varios UV vértices por mesh vertice.

El b3d, lo que pasa es que al requerir pesos en los bones, suele ser más cálculo. Y los equipos poco potentes, si calculan eso por software, pues se mueren más. Es lo de siempre.Pero vaya, yo lo veo funcionar en máquinas bajas.

el md5 es mejor formato que todo esto. Debe haber engines que lo usen, y jeje, gente que lo use en sus motores propios...jiji.


Normalmente, no intervendría, pero hablais de la comodidad del grafo en el exportado de artwork.

Yo he usado con éxito casi todo lo que menciono (y mucho más , y de otros engines, que no menciono ;)   )


Es una pena que el irrlicht sea internamente como decís...


Me paso por aquí de cuando en cuando (1 vez cada 3 o 4 meses) ...así que si no respondo a algo no es por antipático. ;) Posteo, y me acuerdo del foro tres meses después... ;)    :-S

er_willy

 Me imagino que has descartado el 3dgamestudio por el precio (149$). por que si vas ha hacer un juego de interiores tipo aventura, seria el mas recomendable.

senior wapo

 Con todas las pegas internas que tiene irrlicht, es el que recomiendo a un programador C++ que empieza con los juegos 3D. Lo que funciona te lo pone muy cómodo, y lo que no funciona como debería te hará aprender lo que necesitas aprender.

Además, la última versión, no es taaan taaan horrible (en la escala Irrlichtiana, claro). Visualmente da el pego, ya no saltan las texturas con el nivel de mipmap que les da la gana, se reducen los efectos de banding (las texturas son ahora de 32 bits por defecto) y los lightmaps ya no parecen el quake1 :P

Eso si, sigue plagado de bugs.
Además, no tiene interfaz para vertex buffers (cada vez que dibujas una malla subes todos los datos a la tarjeta), los bones van por software solo (esto es perdonable en un motor free), los materiales solo soportan 2 texturas (multipass power), frustum clipping inexistente (hace culling contra el AABB de la camara), no soporta blending de animaciones (tu marine o corre o dispara, pero no ambos la vez), sombras superlentas (y todavia cascan en opengl), colisiones malillas (aunque al menos tienes la opción de usarlas) y en general poca flexibilidad (del diseño interno me abstengo que el objetivo del engine es ser cómodo y un experimento en simplicidad, creo que lo decía Niko en una entrada antigua de su blog).

Al menos su autor empieza a ver la luz e incorpora parches con más rapidez, no se como lleva ahora el tema de ofrecer acceso CVS/SVN al código de las siguientes versiones.

Mars Attacks

 Tendré que pasearme un poco por Andor, me estoy desactualizando de los proyectos que tienes en mente. A ver si puedo sacar tiempo de no dormir y te echo ese cable, que me hace ilu :D






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.