Un moteur logiciel est un programme d'ordinateur, ou une partie d'un programme d'ordinateur, qui sert de base de noyau pour un plus grand morceau de logiciel. Ce terme est souvent utilisé dans le développement de jeu, dans lequel il fait généralement référence soit à un moteur graphique ou un moteur de jeu autour duquel le reste d'un jeu vidéo est développé. Bien que le terme puisse également être utilisé dans d'autres domaines du développement de logiciels, de sa signification particulière peut être plus nébuleux dans ces cas. Un moteur de logiciel peut être développé par une société qui l'utilise, ou peut être développé par une autre société, puis autorisé à d'autres développeurs.
Lorsqu'ils sont utilisés dans le contexte général de développement de logiciels, un moteur logiciel se réfère généralement à des éléments de base d'un programme particulier. Ce n'est généralement pas inclure des fonctionnalités telles que l'interface utilisateur (UI) et de nombreux éléments artistiques ajoutés au moteur de base elle-même. Pour un système d'exploitation (OS), par exemple, le moteur de logiciel pourrait être le code source qui établit fichier hiérarchie, l'entrée et les méthodes de sortie, et la façon dont le système d'exploitation communique avec d'autres logiciels et matériels. Le contenu exact d'un tel moteur peut varier d'un programme à l', cependant.
Dans le développement de jeu d'ordinateur et de la console, un moteur logiciel fait généralement référence soit au moteur graphique d'un jeu ou le moteur de jeu global. Le moteur graphique pour un jeu est généralement le logiciel utilisé pour rendre correctement les graphiques vus par les joueurs. Il utilise souvent des actifs d’art créé dans d'autres programmes, qui sont ensuite importés dans le moteur graphique pour une utilisation pendant le jeu. L'utilisation d'un moteur logiciel pour les graphiques d'un jeu peut faire rendre beaucoup plus facile, et peut également simplifier le processus visant à garantir logiciel et la compatibilité matérielle.
Un moteur de logiciel de conception de jeu peut également se référer à un moteur de jeu, ce qui est un vaste programme qui constitue le noyau d'un match. Ce moteur gère souvent comment l'intelligence artificielle (IA) pour les personnages du jeu sont traitées, la physique dans le monde du jeu, et fournit même des outils pour l'entrée des actifs de l'art et de la création d'une interface utilisateur pour un match. En utilisant un moteur de jeu, les créateurs peuvent faire du développement futur beaucoup plus facile, surtout pour les suites. Ce type de moteur logiciel est souvent créé la première partie du développement du jeu, et peut avoir une license à d'autres sociétés pour leur permettre de répondre plus rapidement et facilement développer de nouveaux jeux utilisant le moteur de base.