Castle Game Engine
Castle Game Engine is a cross-platform 3D and 2D game engine. We provide an easy and extensible API to create and manage 3D objects, with out-of-the-box levels, items, intelligent creatures and more. We support 3D models and animations in various formats, in particular very versatile VRML / X3D, but also Collada, Wavefront OBJ, and (especially nice for 2D animations) Spine JSON. Many graphic features are available, like shadows, bump mapping, mirrors, screen effects, shaders. The engine can be used to compile both standalone games (Linux, Windows, Mac OS X) as well as mobile games (Android, iOS).
Rendering is done through OpenGL or OpenGLES2. You can use Lazarus TCastleControl component, so that engine rendering can be a part of your normal Lazarus form. We also provide TCastleWindow class, specialized in creating windows with OpenGL context for games (with optional menu bars and dialog boxes, all without the need for LCL).
The engine is open-source --- the core engine may be used under GNU LGPL, with "static linking exception" like FPC RTL, so you can make both open- and closed-source games. Developed using a clean Object Pascal, for FPC/Lazarus.
This page links to engine downloads, documentation and lists all the engine features is more detail.
Documentation
We have a lot of documentation about using the engine:
Screenshots
VRML/X3D browser in Lazarus:
FPS example game:
Videos
- FPS game using Castle Game Engine 4.0.0
- Castle Game Engine - castle demo
- Castle Game Engine - GLSL and parallax mapping demo
- Castle Game Engine - rift demo
- Castle Game Engine - dynamic collisions
- Castle Game Engine - flames animation
- Animated cloth with bump mapping
- Triangulation by ear clipping
- Water with caustics in view3dscene
- Explosion rendered using Castle Game Engine
Enjoy! Author: Michalis Kamburelis