Estoy en las etapas de planificación para un motor de juego interno que estoy a punto de comenzar a crear, que se utilizará para todos mis juegos en el futuro. Pero estoy luchando un poco con cómo debería construirse.
Las opciones se reducen a: marco o biblioteca.
Mi objetivo básico es ocultar los detalles del motor tanto como sea posible para mantener el desarrollo de juegos de alto nivel en scripts y archivos de configuración tanto como sea posible. Pero también para reutilizar el motor central para cualquier herramienta que podamos desarrollar en el futuro.
Los marcos pueden hacer que las cosas sean agradables y fáciles de desarrollar, pero luego estás encerrado. Las bibliotecas son buenas si solo estás interesado en un subsistema específico. Pero necesitamos unir todo en un juego por juego.
Bueno, también hay otro, construir el motor como un exe independiente que maneja todos los recursos del juego y todos los subsistemas. La lógica del juego (y otras cosas dinámicas por juego) se realiza exclusivamente en scripts con archivos de configuración para configurar cada subsistema interno del motor.
Cuál me dará más flexibilidad en el futuro.
Gracias.
Editar: Gracias a todos, supongo que estaba viendo esto desde una perspectiva incorrecta. Realmente no podemos planificar algo como esto sin un conocimiento a priori de lo que necesitan los juegos, supongo que es por eso que no existe un motor general para todos los géneros.
Me enfocaré primero en el juego propiamente dicho y luego analizaré iterativamente al final de cada juego cómo hacer abstracciones decentes para bibliotecas o marcos dependiendo de mi flujo de trabajo (o posiblemente el de un futuro equipo).