💻 Programming Languages
Quick Summary
Different programming languages serve different roles in game development — from low-level engine systems written in C++ to high-level gameplay scripts in C#, Python tooling, and web-based game logic in JavaScript.
Languages Overview
| Language | Primary Role | Engine/Context |
|---|---|---|
| C++ | Engine development, high-performance systems | Unreal Engine, id Tech, custom engines |
| C-Sharp | Gameplay scripting, game logic | Unity, Godot |
| Python | Tool automation, data analysis, AI/ML | Pipeline tools, data science, ML training |
| Lua | Embedded scripting, modding, UI | Roblox, WoW addons, game configs |
| JavaScript | Browser games, web tools, backend | HTML5 games, Node.js servers, tools |
Language Choice by Context
AAA Engine / Core Systems
C++ is the standard. Direct hardware access, manual memory management, and maximum performance for the engine’s render loop and physics.
Gameplay Logic (Desktop/Console)
C# in Unity; C++ or Blueprints in Unreal. Most gameplay programmers work in these languages day-to-day.
Mobile Games
C# (Unity) dominates mobile — the engine handles platform abstraction.
Tool & Pipeline Development
Python — rapid iteration, cross-platform scripting, Blender/Maya automation.
Modding / User Scripting
Lua — minimal, fast, embeddable. Used in WoW addons, Roblox, Garry’s Mod.
Web / Browser Games
JavaScript (and TypeScript) — only option for browser-based distribution.
See also: Unity, Unreal Engine, Godot