Un motor de juego se refiere a entornos de desarrollo de software diseñados específicamente para la generación de videojuegos. Contiene la biblioteca principal de funciones utilizadas en un juego, sin embargo, existe independientemente del contenido de un juego específico. Los activos que hacen que el juego sea único, como el tema y los personajes, forman el contenido. El motor del juego se utiliza para controlar cómo interactúan los activos para darle vida al juego. Esto se logra mediante un conjunto de componentes reutilizables que pueden servir como motor para juegos de diversos géneros y estilos.

Los motores de juegos son los que hacen que los videojuegos se puedan reproducir.

La función de un motor de juego es hacer todo el trabajo pesado detrás de escena que hace que cualquier videojuego sea jugable. Los componentes centrales incluyen un motor de renderizado de gráficos, un motor de física y detección de colisiones. El motor de renderizado genera una imagen bidimensional o tridimensional a partir de un archivo de escena, que define elementos como el punto de vista, la iluminación y la textura. Los motores de física se aproximan al movimiento del mundo real de una manera familiar para el jugador, pero también significativa en el contexto del juego. La detección de colisiones implica cómo el juego detecta, muestra y reacciona a la intersección de dos o más objetos renderizados.

Otros recursos, como la capacidad de creación de redes, la inteligencia artificial y la creación de sonido, también suelen ser componentes de un motor de juego. Normalmente, los componentes están disponibles para el desarrollador a través de un entorno de desarrollo integrado visual (IDE) que simplifica la creación de juegos. Los archivos de escena se pueden crear prototipos y probar con el motor de renderizado sin salir del IDE, por ejemplo. Este enfoque también fomenta la reutilización de componentes, lo que hace que el proceso de creación sea más simple y eficiente.

La mayoría de los primeros motores de juegos eran diseños patentados, desarrollados para usarlos en la creación de un solo juego. Se valoró la flexibilidad que brinda la selección de los componentes preferidos y la construcción de una interfaz especializada. Este enfoque les dio a los desarrolladores un gran control sobre la apariencia de los juegos, pero alargó mucho el ciclo de desarrollo. Las restricciones de costos normalmente prohíben el uso de un motor de juego propietario en la mayoría de los proyectos.

Se encuentran disponibles suites de desarrollo de juegos completas y listas para usar que brindan toda la funcionalidad de los diseños patentados. Muchos son productos comerciales, pero no es difícil encontrar un motor de juegos de código abierto de calidad comparable. Estos están abiertos a ajustes de código para adaptarse a los estilos o herramientas de programación favoritos. Es posible que un creador de juegos no tenga la flexibilidad de un motor patentado, pero el tiempo y el dinero ahorrados en el desarrollo suelen superar con creces la pérdida de libertad de estilo.