Sistemas

Anteriormente, hemos mencionado la palabra sistema. Ahora bien, ¿qué es un sistema de cara de nuestro proyecto?

SAMSUNG

Podemos definir este concepto como un módulo o componente del motor que se encarga de una función específica para la cual ha sido designado. Por ejemplo, el GameObject_Manager se encargará de encapsular todos los objetos del juego, iniciar los objetos necesarios, y trabajar con ellos en cada iteración del bucle principal (ejecutando las funciones behaviour(), event() y keyevent(), en caso de que existan.

Así pues, nuestro motor tendrá una serie de sistemas de distintos tipos, de los cuales sólo habrá un único sistema por tipo, siendo globales a todo el proyecto, y derivando todos los sistemas de una clase común llamada CSystem, que por defecto tendrá dos estados: activado y desactivado. Por ejemplo, la instanciación global de las clases CSystem_GameObject_Manager y CSystem_Render sería tan sencilla como:

CSystem_Render gSystem_Render;
CSystem_GameObject_Manager gSystem_GameObject_Manager;
// etc...

Como se puede apreciar en la imagen adjunta, en un principio (seguramente añadamos o quitemos sistemas) se destacarán dos tipos de sistemas:

  • Sistemas de control: Se encargan de trabajar con los GameObjects para dar “vida” al juego. Principalmente son el GameObject_Manager y el Render.
  • Sistemas auxiliares: Se encargarán de dar ciertos servicios a los objetos y a los sistemas para que estos puedan operar de forma cómoda. Por ejemplo, proporcionar funciones matemáticas (Math), de tiempo (Time), un sistema de depuración (Debug), etc.

En los próximos posts hablaremos de cada uno de ellos de forma más clara y precisa, explicando el contenido de cada uno de ellos y sus funciones principales.

Advertisements

2 thoughts on “Sistemas

  1. Pingback: Sistemas de control | GO-Engine

  2. Pingback: Sistemas auxiliares | GO-Engine

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s