Buenas!
Pues he decidido, después de probar varios motores, realizar el mio propio.
Quiero hacer un jueguecillo, y necesito un motor con ciertas características. No muchas. Y la mayoría, por no decir todos, los engines que he probado las tienen. Pero el problema es que soy muy "tiquismiquis", y la estructura que tienen no me convencen del todo, y la forma de uso tampoco.
Entonces en pensado en hacer el mío, limitándome a mis necesidades, que si no nunca lo acabaría. :)
Y quería saber cual es la estructura y la forma de uso más correcta para un motor, por ver si aparte de "tiquismiquis" soy muy cerrado, y los motores que he visto son correctos y yo tengo una mala idea (¿y de donde la habré sacado?).
Tenía pensado en hacer namespaces como OGRE, con las clases del render, input, red y sonido separadas por namespaces.
Dentro del render, pues clases para mallas, texturas y nodos. Los nodos son objetos visibles de las mallas y las texturas, mientras estas últimas son "lógicas" (únicas y no visibles, sino a través de nodos).
¿Qué pensais?
Saludos y gracias por leer hasta aquí. (ole)
Es el mes de los motores. :D
Echale un vistazo al nuestro. Es muy sencillo. Verás las estructuras que usamos y porque las usamos así!!
CitarPues he decidido, después de probar varios motores, realizar el mio propio.
En mi modesta opinion, lo mejor que puedes hacer (ole)
CitarTenía pensado en hacer namespaces como OGRE, con las clases del render, input, red y sonido separadas por namespaces.
Para mi es la mejor forma de estructurar un motor. Un namespace proporciona una "isla" perfecta donde crear los distintos sistemas que crees.
Personalmente yo los uso para:
video (temas relecionado con la tarjeta grafica y gestion de sus recursos (mallas, texturas, etc)).
scene (organizardor de escenas y nodos (camaras, entidades, division de espacio, etc)
input (teclado, raton, pad, etc)
filesystem (lectura/escritura de datos)
gui (interfaz grafico de usuario)
script (maquina virtual)
kernel (metasistema)
CitarLos nodos son objetos visibles de las mallas y las texturas
Un nodo basico deberia ser, en mi opinion, cualquier "cosa" que estubiera en la escena (modelo, luz, camara, trigger, etc).
Citar¿Qué pensais?
Pues que veo que no soy el unico que se preocupa por la estructura de un motor jeje
Hola Astat, una preguntilla de novato descarado ¿A que te refieres con kernel (metasistema)?
Muchas gracias Haddd y Astat.
Haddd, sólo con ver que es español, ya no me convence (uoh)
No, en serio, necesito uno con las características necesárias, ni más ni menos.
Y lo que me ha dicho Astat ("En mi modesta opinion, lo mejor que puedes hacer") me ha animado ;)
Creo que me vendrá bien volver a trastear con DirectX como antaño.
Ahora sólo necesito ánimo y perseverancia, que últimamente me ha estado flaqueando bastante :(
Saludos.
Citar¿A que te refieres con kernel (metasistema)?
Un sistema que maneja sistemas. Presta servicios comunes a los demas sistemas.
Como la metafísica. El hombre que estudia al hombre.
(uoh)
Bien es hora de replantear la loca estructura del mio,
No uso namespaces, por loco que soy nada mas.
Aplicacion
{
Maquina_De_Estados
Consola
Recursos
{
Video
Sonido
Red
Entrada
Mundo
{
Fisica
}
}
Juego
{
... propias del mod
}
}
una pregunta:
vas a hacer un motor o vas a hacer un juego? (nótese que son totalmente **incompatibles**) XDDD
creo que este post es el resumen de todos los post de motores de stratos, lamentablemente. Creo que uno de los debates que debería haber en una futura reunión/congreso (jiji) stratero es este precisamente.
el mas dificl todavia, querra hacer un motor adaptado pa el juego que tiene en mente ;)
En mi motor los Juegos son DLLs y se conectan con una clase virtual.
Cita de: nsLel mas dificl todavia, querra hacer un motor adaptado pa el juego que tiene en mente ;)
Hombre, pues eso precisamente es mucho más fácil que hacer un motor "genérico", así que si quiere un motor sencillo para ponerse rápidamente con el juego, es lo que debería hacer ;) .
Los juegos *NO NECESITAN MOTORES*, los motores son opcionales para cada juego, y su gracia es poder reducir el trabajo cuando se realizan distintos proyectos que van a utilizar ese motor, si vas a hacer un solo proyecto entonces es una perdida de tiempo hacer un motor.
Por ejemplo la iniciacion grafica :en un programa comun, tan solo inicializas la pantalla, ves los caps de la tarjeta de video y envia un mensaje de error si no puede proceder, con un motor todo esto es mucho mas largo y complicado.
Cita de: PogachaEn mi motor los Juegos son DLLs y se conectan con una clase virtual.
No es asi como funciona el motor de Half-Life? Los mods son reprogramaciones de la dll principal del motor, que me corrija alguien si me ekivoco.
Salu2...
Cita de: [EX3]Cita de: PogachaEn mi motor los Juegos son DLLs y se conectan con una clase virtual.
No es asi como funciona el motor de Half-Life? Los mods son reprogramaciones de la dll principal del motor, que me corrija alguien si me ekivoco.
Salu2...
Sip, asi es. Yo ahora mismo estoy como programador en un mod del HL2 y he hecho alguna cosilla en el 1 y el codigo del mod es una modificacion de la dll (la del servidor y la del cliente si es multijugador).
Ya he vuelto de vacaciones :(
Pues quiero hacer lo justo y necesario que necesita el juego que tengo en mente.
Saludos.
Para empezar deberias no tomar vacaciones. ;)