Softverski mehanizam je računalni program ili dio računalnog programa koji služi kao temeljni temelj za veći dio softvera. Ovaj se izraz često koristi u razvoju igara, u kojem se obično odnosi na grafički motor ili motor za igre oko kojeg se razvija ostatak video igre. Iako se pojam također može koristiti u drugim područjima razvoja softvera, njegovo posebno značenje može biti nejasnije u tim slučajevima. Softverski mehanizam može razviti tvrtka koja ga koristi ili ga može razviti druga tvrtka, a zatim licencirati drugim programerima.
Kada se koristi u općem kontekstu razvoja računalnog softvera, softverski mehanizam obično se odnosi na ključne elemente određenog programa. To obično ne uključuje značajke kao što su korisničko sučelje (UI) i brojna umjetnička sredstva dodana samom jezgru motora. Za operativni sustav (OS), na primjer, softverska mašina može biti izvorni kod koji uspostavlja hijerarhiju datoteka, metode unosa i izlaza i način na koji OS komunicira s drugim softverom i hardverom. Međutim, točan sadržaj takvog motora može varirati od programa do programa.
U razvoju računalnih i konzolnih igara, softverski mehanizam obično se odnosi na grafički mehanizam igre ili na cjelokupni motor igre. Grafički mehanizam za igru obično je softver koji se koristi za ispravan prikaz grafike koju vide igrači. To često koristi umjetnička sredstva stvorena u drugim programima, koja se zatim prenose u grafički mehanizam za korištenje tijekom igranja igre. Korištenje softverskog motora za grafiku igre može znatno olakšati renderiranje, a također može pojednostaviti proces osiguravanja kompatibilnosti softvera i hardvera.
Softverski motor u dizajnu igara također se može odnositi na motor igre, koji je veliki program koji čini jezgru igre. Ovaj motor često upravlja načinom na koji se rukuje umjetnom inteligencijom (AI) za likove u igrici, fizikom u svijetu igara, pa čak pruža alate za unos umjetničkih sredstava i stvaranje korisničkog sučelja za igru. Koristeći game engine, kreatori mogu znatno olakšati budući razvoj, posebno za nastavke. Ova vrsta softverskog motora često se stvara kao prvi dio razvoja igara, a može se licencirati drugim tvrtkama kako bi im se omogućilo brži i lakši razvoj novih igara pomoću osnovnog motora.