Castle Game Engine

From Lazarus wiki
Revision as of 03:00, 4 January 2015 by Michalis (talk | contribs) (Mention 2D and Spine.)
Jump to navigationJump to search

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:

  1. Tutorial
  2. Classes overview
  3. Guide to creating game data
  4. API reference

Screenshots

VRML/X3D browser in Lazarus:

kambi vrml browser.jpg

FPS example game:

castle game engine fps game.jpg

Videos


Enjoy! Author: Michalis Kamburelis