Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Estructura De Un Motor

Iniciado por NeLo, 30 de Septiembre de 2004, 06:45:43 PM

« anterior - próximo »

NeLo

 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)
Drowning deep in my sea of loathing

Haddd

 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í!!

Astat

 
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

jpastor

 Hola Astat, una preguntilla de novato descarado ¿A que te refieres con kernel (metasistema)?

NeLo

 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.
Drowning deep in my sea of loathing

Astat

 
Citar¿A que te refieres con kernel (metasistema)?

Un sistema que maneja sistemas. Presta servicios comunes a los demas sistemas.

NeLo

 Como la metafísica. El hombre que estudia al hombre.

(uoh)  
Drowning deep in my sea of loathing

Pogacha

 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
 }
}

ethernet

 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.  

nsL

 el mas dificl todavia, querra hacer un motor adaptado pa el juego que tiene en mente ;)
Yo no muero hasta la muerte -

Pogacha

 En mi motor los Juegos son DLLs y se conectan con una clase virtual.

AgeR

Cita de: "nsL"el 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  ;) .

Magallanes

  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.

uando se es peón la unica salida es la revolución.

[EX3]

 
Cita de: "Pogacha"En 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...
José Miguel Sánchez Fernández
.NET Developer | Game Programmer | Unity Developer

Blog | Game Portfolio | LinkedIn | Twitter | Itch.io | Gamejolt

kbks

Cita de: "[EX3"]
Cita de: "Pogacha"En 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).






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.