Skip to content

Cross-platform (desktop, mobile, console) 3D and 2D game engine supporting many asset formats (glTF, X3D, Spine...) and using modern Object Pascal

License

Notifications You must be signed in to change notification settings

HotariTobu/castle-engine

 
 

Repository files navigation

Castle Game Engine

"Castle Game Engine" is an open-source cross-platform 3D and 2D game engine.

We have many graphic features (physically-based rendering, shadows, mirrors, screen effects, gamma correction...) and support many data formats for game assets (glTF, X3D, Spine JSON, Collada, ...). We have many user-interface components, with a powerful viewport to display 3D or 2D content. We're cross-platform (desktop, mobile, Nintendo Switch).

See https://castle-engine.io/features.php for the complete list of engine features.

Documentation:

  • Manual is the most recommended way to learn the engine.

  • API reference.

    It is also available offline in the engine archive (if you downloaded the binary engine release), just open the file doc/reference/index.html in your WWW browser.

  • Numerous examples are provided in the examples/ subdirectory.

  • Guide to creating game data.

Questions? Talk to us on forum or Discord chat.

Support us on Patreon.

Installation and building your first application

See the Installation and building your first application manual page.

If you got this source code straight from our GitHub repository then read first Compiling from source.

In short:

  • Our editor is used to design and build your applications.

  • Our build tool is used to build your applications from the command-line.

    Both the build tool and editor use the project settings from the CastleEngineManifest.xml file.

  • You can also use Lazarus ( https://www.lazarus-ide.org/ ).

    Install in Lazarus two packages:

    • packages/castle_base.lpk and
    • packages/castle_components.lpk

    Also, compile (but don't install) this package:

    • packages/castle_window.lpk
  • You can also use FPC fpmake / fppkg. See https://castle-engine.io/fpmake

License

The engine is available on the terms of LGPL >= 2 license with "static linking exception". This is the same license as used by FPC RTL and Lazarus LCL. In short, you can make commercial and closed-source games using the engine, you only have to share your modifications to the engine core. See COPYING.md for details.

Have fun!

Authors

This is the life project of Michalis Kamburelis.

Thank you to all the contributors for developing the engine with me throughout the years. Keep it going please :)

About

Cross-platform (desktop, mobile, console) 3D and 2D game engine supporting many asset formats (glTF, X3D, Spine...) and using modern Object Pascal

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Pascal 96.8%
  • C 1.2%
  • C++ 0.8%
  • Java 0.5%
  • Objective-C 0.3%
  • GLSL 0.2%
  • Other 0.2%