The Castle Game Engine is a pretty unique option. It’s a long running open source 2D/3D game engine for Pascal and Delphi developers with a recent emphasis on improving the editing experience. Hand and hand with the Castle engine is the Lazarus IDE and the open source Pascal implementation Free Pascal, which are required for Castle game development.
Top features of Castle include:
- Use any 3D or 2D software to create your models in various formats: glTF, X3D, VRML, Spine JSON, Collada…
- Develop cross-platform applications, for desktop (Windows, Linux, macOS, FreeBSD…), mobile (Android, iOS), consoles (Nintendo Switch) and other devices (Raspberry Pi).
- Visual editor to design games UI and to build applications, powerful command-line build tool under the hood.
- Optimized rendering with a lot of graphic effects (physically-based rendering, shadows, mirrors, bump mapping, shader effects, gamma correction…).
- Build and edit the scene graph (X3D) at runtime. Create 3D processing, visualization tools and CAD applications.
- Extensible system for game objects, with physics, creatures with AI and navmesh, and more.
- Access numerous services, like in-app purchases and game services on mobile devices.
- Create cross-platform user-interface with anchors and automatic scaling.
- Code in modern Object Pascal, an efficient OOP language with cross-platform open-source compiler (FPC), compiled to a native optimized code.
If you are interested in learning more about the Castle game engine be sure to check out the video below. The Castle developers have also recently released a document making it easier for Unity developers to get up to speed with key concepts in Castle, which is available here. If you are interested in getting started with Castle and Lazarus, step by step instructions are available here.