¿Algún motor 3D ligero, sucio y barato, apto para principiantes? [cerrado]

8

Tengo 2 preguntas, la segunda es más una especie de pregunta de opinión.

1ra pregunta:

Todo el mundo escuchó de panda3d, OGRE e IrrLicht: son grandes motores, con muchas características. Con OGRE puedes hacer casi cualquier cosa imaginable si solo aprendes el motor, con Irrlicht puedes hacer mucho, pero el motor es un poco más amigable para los principiantes y más liviano. Panda3D también es genial, Python facilita las cosas, pero muchas cosas también son factibles.

Antes de la nueva era de programación traída por la evolución de C ++, los juegos 3D que debían ejecutarse en máquinas lentas se programaban en C, pero desde entonces, todos los días empujamos los transistores a límites más altos, olvidando lo horrible que era programar juegos en El "viejo tiempo". De acuerdo, tal vez no fue horrible, pero dado que la programación 3D es complicada haciendo 2D, y dado que la mayoría de los motores admiten cosas brillantes como sombreadores, gestor de escena, nodos de escena, NURBS, sombras, animaciones, etc., no existe un motor o renderizador 3D simple ¿eso se adaptaría a las personas que tienen suficiente con 3D simple y simple, sin texturas o simplemente texturas realmente simples?

Como escuché "no reinventes la rueda", estoy seguro de que es demasiado aprender a hacer un motor completo con D3D u opengl, y como aprenderé D3D a continuación en una escuela de programación 3D, pensé que con todos los motores libres disponibles, debe haber uno que se ajuste a mis necesidades.

2da pregunta:

Desde los viejos tiempos de PlayStation, sigo viendo los próximos gráficos de alta definición (como 360, PS3) como una plaga: siempre es más difícil aprender a programar un software más sofisticado, es desafiante y ofrece un resultado satisfactorio , pero al final, ¡sigue siendo un programa estúpido que renderiza píxeles!

Siento que la diversión en los juegos no ha evolucionado en absoluto o simplemente se ha reducido en comparación con los viejos tiempos en los que los muchachos que hacían el juego no eran necesarios para alimentar al ojo del jugador, sino que estaban destinados a brindar una experiencia y diversión.

Siento que hoy en día los juegos son solo un software que muestra la tecnología disponible, pero excepto algunas perlas, los juegos ya no son ideas, son solo una especie de demostración de cómo los dólares invertidos pueden brillar en belleza para el CEO que no sabe una mierda sobre cómo se hace un juego y qué es realmente posible hacer.

Bueno, excepto los juegos independientes, por supuesto, que brillarán un día u otro gracias a XBox Live y Steam, pero está lejos de permitir que los programadores y diseñadores hagan lo que quieran. No estoy diciendo "corporaciones malvadas", etc., pero tengo la sensación de que el realismo fotográfico es un fastidio: incluso si tenemos miles más de poder de la computadora, ¿cuál es el punto a intentar: realmente no podemos "simular la realidad", ya que contradice las leyes de la física ... Podríamos calcular una realidad alternativa, pero aún así sería muy complicado diseñar ...

jokoon
fuente
55
Realmente solo debería haber una pregunta por, um, pregunta.
Tetrad
Trata de hacer la pregunta más corta y simple. Además, parece que no puedo encontrar la parte de la pregunta de la pregunta 2, solo veo muchas opiniones y declaraciones.
AttackingHobo
1
pregunta 1 tl; dr -> Buscando un motor 3D fácil de usar sin todos los trucos. pregunta 2 tl; dr (¿creo?) -> Los nuevos juegos sacrifican la diversión por la tecnología, ¿no crees?
Deleter
Creo que sería divertido discutir tus opiniones en la sala de chat de gamedev. chat.meta.stackoverflow.com/rooms/73/game-development : no es su sala de chat tradicional en tiempo real; Si no hay nadie, deje un mensaje y luego regrese más tarde y lea las respuestas.
Ricket
duh necesita 20 repeticiones, pero en meta.stackoverflow
jokoon

Respuestas:

3

En el lado de OpenGL, creo que Horde3D vale la pena mencionar. Tal vez no sea tan amigable para principiantes, ya que no ofrece muchas herramientas GUI como Unreal SDK, pero eso lo hace muy liviano. Sobre todo, creo que es genial para aprender.

Horde te enseña a ser muy organizado con tu código. Utiliza XML para datos (mallas, sombreadores, gráficos de escena, etc.) y C ++ para control.

Me gusta el hecho de que no es un "motor de juego". Es un motor de renderizado 3D que maneja el sacrificio, los niveles de detalle, los rayos, la animación, etc., pero le deja toda la lógica del programa.

Como dijo bummzack, todos los motores disponibles te permitirán hacer cosas básicas de polígonos. Pero dado que está en un camino de aprendizaje, es posible que desee aprender un motor que también le permita abordar temas más complejos en el futuro.

Usuario no encontrado
fuente
Al diablo con las herramientas de UI, olvidé mencionar que estas realmente no son necesarias, y a menudo no hacen su trabajo como lo necesito o se comen las funciones del motor para permitir mejores funciones de editor. Horde3D está todavía en fase beta, pero parece que es lo que estoy buscando ...
jokoon
3

Bueno, lo intentaré.

Con respecto a su primera pregunta, le recomiendo SDL de todo corazón . No es un motor de gráficos de escena, y todos sus gráficos se realizarán con OpenGL, pero maneja lo esencial para usted, como crear una ventana, configurar el contexto de OpenGL, recibir entradas y reproducir audio. Absolutamente siento tu dolor cuando se trata de motores 3D, y he encontrado que mi estudio de OpenGL es bastante interesante y desafiante. Personalmente me mudé a Java, usando LWJGL (o JOGL si lo prefieres), porque disfruto el lenguaje de nivel superior y el uso de applets, y Java maneja de manera similar la creación de ventanas, entrada, sonido, etc.

Sin embargo, el hecho de que pronto aprenderá DirectX podría significar que debería centrarse en eso. No conozco ningún equivalente a SDL para DirectX, pero creo que DirectX hoy en día tiene algunas funciones auxiliares que lo ponen en funcionamiento bastante rápido. Desafortunadamente, realmente no sé mucho acerca de DirectX, así que no puedo hablar sobre ningún detalle. Pero te recomiendo que lo pruebes.

Estoy seguro de que es demasiado aprender a hacer un motor completo con D3D u opengl

Si, es demasiado. Y lo veo todo el tiempo. No hagas un motor; hacer un juegoNo se deje atrapar en la creación de un montón de clases con código no probado y no utilizado en ellos y llámelo "biblioteca" o "motor" porque es más probable que sea solo un "desastre teórico". Solo haz lo que necesites hacer para crear un juego.


Su segunda "pregunta" es solo una observación, y una deprimente y (en mi opinión) muy equivocada. Ciertamente hay malos juegos, juegos con muchos gráficos y poca jugabilidad. Los juegos de películas me vienen a la mente, ya que a menudo son los que no son tan buenos. Pero los gráficos y la jugabilidad no son mutuamente excluyentes . Al leer tu diatriba casi me pregunto si has jugado algún juego últimamente; Hay una gran variedad de opciones y estoy seguro de que hay algo para ti. Pero no veo en absoluto por qué buenos gráficos implican una mala jugabilidad. Y si estás completamente en contra de los gráficos sofisticados, todavía hay juegos disponibles para ti. Incluso podría ir a eBay y comprar un sistema antiguo y juegos antiguos a un precio muy bajo.

Lo curioso es que estaría dispuesto a apostar que esta opinión ha existido desde hace mucho tiempo, a través de las últimas generaciones de consolas. Estoy seguro de que la gente miró la Nintendo 64 cuando salió y pensó lo mismo: excelentes gráficos (para su época) = mala jugabilidad. Y hubo buenos y malos juegos de N64. Y luego sé que la gente estaba preocupada por este tipo de cosas durante la era de Gamecube y PS2 y Xbox. Diablos, me recosté y vi cómo los juegos para Xbox hacían exactamente esto. Por lo tanto, siempre hay buenos y malos juegos, y solo necesitas calmarte, respirar profundamente y buscar algunos juegos que te atraigan. Siempre habrá juegos en cualquier extremo del espectro; juegos de baja resolución que no puedes dejar de jugar años después (¿CounterStrike 1.6 alguien?), y juegos de alta resolución que son fracasos totales.

Y sí, siempre habrá más de esto último, porque los gráficos son más fáciles de producir que las buenas ideas de juego . Su existencia no quita la existencia de los buenos juegos, ni reduce sus números. Simplemente dan a los diseñadores más evidencia de lo que no deben hacer al diseñar su próximo juego. ¿Es eso algo malo?

Ricket
fuente
Buena respuesta y una excelente respuesta a la segunda pregunta / declaración del OP.
bummzack
Es una buena respuesta, pero SDL no es más un motor 3D que la API Win32.
Kylotan
1

Si no quieres todos los beneficios (¿y la hinchazón?) De un motor 3D, ¿por qué no usar GLUT ?

Creo que SceneManagers y similares en realidad se suman a la facilidad de uso de un motor 3D en lugar de hacer las cosas más complicadas.

Puedes hacer renderizado muy básico (sin texturas, sin sombreadores) con todos los motores 3D que mencionaste. Algunos de ellos incluso tienen una arquitectura modular (Plugin) para que pueda quitar todo lo que (actualmente) no necesita.

En mi humilde opinión, no existe un motor 3D amigable para principiantes o incluso un marco / biblioteca amigable para principiantes . Siempre tendrá que aprender y acostumbrarse primero a un paquete de software. Me parece que estás tratando de saltarte ese paso :)

bummzack
fuente
(Esto pretende ser un comentario a la respuesta de bummzack) En lugar de usar GLUT directamente, creo que GLFW podría ser más adecuado para los juegos, ya que también maneja la entrada y el tiempo.
Usuario no encontrado
-2
  1. a. SDL (Simple Direct Layer) tiene un motor de renderizado 3D bastante simple y extensible que es de código abierto. Sin embargo, C ++ es eficiente, es una curva de aprendizaje empinada.

    si. sdlbasic es un intérprete BASIC pequeño, eficiente y multiplataforma para crear juegos utilizando el poder de la biblioteca SDL. Fue inspirado por el viejo y glorioso AMOS. - está en el repositorio de Ubuntu y probablemente también en otros.

    C. ?

  2. a. Estoy de acuerdo con sus sentimientos, aunque los "juegos casuales", como los rompecabezas en 2D, y los juegos de diversión fáciles en línea y como paquetes de coleccionista parecen haber adquirido más bienes raíces en el mercado de juegos que el tipo intensivo en hardware, simplemente debido a la naturaleza práctica de un juego con bajos requisitos del sistema. Sería bueno ver un poco más de creatividad en los sustratos inferiores de las creativas creaciones en 3D del hemisferio de games world inc.

kmonke
fuente