Actualmente estoy estudiando desarrollo de juegos y practicando hacer juegos.
Yo uso mucha OOP en mis juegos. Por ejemplo, cada misil que se dispara es una instancia de un Missile
objeto y se agrega a una lista de Missile
objetos. Cada tanque en el juego es un Tank
objeto. Etc.
Todo el diseño del programa se basa en esto. Por ejemplo, tener una lista de Missile
objetos me permite cada cuadro mover los misiles, dibujarlos, etc. Y tener una instancia de un Tank
objeto para cada tanque me permite verificar si cada tanque choca con algo, etc.
Me resulta difícil imaginar cómo se podría programar un juego (que es más complejo que Pac-Man) en un lenguaje que no sea OO. (Sin faltarle el respeto a los programadores que no son OO, por supuesto). No solo en términos de cuánto tiempo llevará, sino principalmente en términos de cómo se podría diseñar un juego de esta manera.
No puedo imaginar diseñar un juego sin usar programación orientada a objetos, porque toda mi comprensión de cómo diseñar un programa de juego se basa en OOP.
Me gustaría preguntar: Hoy, ¿hay algún juego que no esté programado usando OOP, de manera similar a lo que describí anteriormente? ¿Hay algún juego 'profesional' que no use OOP como un factor importante en el proceso de desarrollo?
Si es así, ¿podría darme una idea de cómo, por ejemplo, se podría implementar la detección de colisión entre un tanque y N número de misiles, sin OOP?