Difference between revisions of "Castle Game Engine"

From Free Pascal wiki
Jump to navigationJump to search
(Tried to make it a bit more "wikipedic", and added links to game development stuff.)
(Reflect features of Castle Game Engine 7.0, more screenshots, updated youtube link)
(One intermediate revision by one other user not shown)
Line 1: Line 1:
 
{{Castle_Game_Engine}}
 
{{Castle_Game_Engine}}
{{Infobox game development}}
+
{{Menu_Game_Development}}
  
[https://castle-engine.io/ Castle Game Engine] is a cross-platform 3D and 2D [[Game Engine|game engine]]. It provides an extensible API to create and manage 3D objects, with out-of-the-box levels, items, intelligent creatures and more. It support 3D models and animations in various formats, in particular [https://castle-engine.io/vrml_x3d.php very versatile VRML / X3D], but also Collada, Wavefront OBJ, and Spine JSON, that allows 2D animations. Many graphic features are available, like shadows, bump mapping, mirrors, screen effects and shaders.
+
[https://castle-engine.io/ Castle Game Engine] is a cross-platform 3D and 2D [[Game Engine|game engine]].  
  
The engine can be used to compile both desktop (Linux, Windows, Mac OS X) and mobile games (Android, iOS).
+
* You can use any 3D or 2D software to create models in various formats: [https://castle-engine.io/creating_data_model_formats.php glTF, X3D, VRML, Spine JSON, Collada...]. In particular creating game models in [https://castle-engine.io/creating_data_blender.php Blender] is fully supported, through the glTF format.
  
Rendering is done through OpenGL or OpenGLES2.
+
* The engine can be used to compile desktop (Linux, Windows, macOS), mobile (Android, iOS) and consoles ([https://github.com/castle-engine/castle-engine/wiki/Nintendo-Switch Nintendo Switch]) games.
  
It is component based.
+
* You can [https://castle-engine.io/manual_editor.php design and build applications in a visual editor]. The editor utilizes a [https://github.com/castle-engine/castle-engine/wiki/Build-Tool command-line build tool under the hood]. The build tool calls FPC and some other tools to compile and run the project.
  
The engine can be used just as a set of units and components. You can also use the [https://github.com/castle-engine/castle-engine/wiki/Build-Tool engine build tool] to easily compile and package your games, e.g. for Android or iOS.
+
* Many graphic effects are available: physically-based rendering, shadows, mirrors, bump mapping, shader effects, gamma correction. Rendering is done through OpenGL or OpenGLES.
  
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.
+
* Numerous services, like in-app purchases and game services, are available on mobile devices. See [https://github.com/castle-engine/castle-engine/wiki/Android-Services Android servcies], [https://github.com/castle-engine/castle-engine/wiki/iOS-Services iOS services].
 +
 
 +
* The user interface is cross-platform and supports anchors and automatic scaling.
 +
 
 +
The engine is open-source. [https://castle-engine.io/license.php The engine may be used under GNU LGPL with "static linking exception"], just like FPC RTL and Lazarus LCL. So you can make both open- and closed-source games.
  
 
== Screenshots ==
 
== Screenshots ==
  
VRML/X3D browser in Lazarus:
+
glTF 3D scene with outlines:
 +
 
 +
[[File:castle_game_engine_scene_outlines.png|500px|]]
 +
 
 +
Using gizmo to design 2D game:
 +
 
 +
[[File:castle_game_engine_gizmo2d.png|500px]]
 +
 
 +
"Escape from the Universe" game localized to Japanese:
  
[[Image:kambi_vrml_browser.jpg]]
+
[[File:castle_game_engine_japanese_game.jpg|500px]]
  
FPS example game:
+
Strategy game, using Tiled to design maps:
  
[[Image:castle_game_engine_fps_game.jpg]]
+
[[File:castle_game_engine_strategy_game.png|500px]]
  
 +
3rd-person camera demo:
 +
 +
[[File:castle_game_engine_third_person_camera.png|500px]]
 +
 +
3D model browser in Lazarus:
 +
 +
[[File:kambi_vrml_browser.jpg|500px]]
  
 
==External links==
 
==External links==
* [https://www.youtube.com/channel/UCq9jJ5ivIXC5VEWiUAfxBxw Castle Game Engine YouTube channel]
+
 
 +
* [https://www.youtube.com/c/CastleGameEngineX3d/ Castle Game Engine YouTube channel]
 
* [https://castle-engine.io/features.php More complete list of engine features.]
 
* [https://castle-engine.io/features.php More complete list of engine features.]
 
* [https://castle-engine.io/documentation.php Getting started]
 
* [https://castle-engine.io/documentation.php Getting started]
* [https://castle-engine.io/apidoc/html/index.html API reference]
+
* [https://castle-engine.io/apidoc-unstable/html/index.html API reference]
 
* [https://www.patreon.com/castleengine Patreon page]
 
* [https://www.patreon.com/castleengine Patreon page]
  

Revision as of 22:57, 22 February 2021

English (en) suomi (fi) français (fr)

Game Development

Castle Game Engine is a cross-platform 3D and 2D game engine.

  • The engine can be used to compile desktop (Linux, Windows, macOS), mobile (Android, iOS) and consoles (Nintendo Switch) games.
  • Many graphic effects are available: physically-based rendering, shadows, mirrors, bump mapping, shader effects, gamma correction. Rendering is done through OpenGL or OpenGLES.
  • The user interface is cross-platform and supports anchors and automatic scaling.

The engine is open-source. The engine may be used under GNU LGPL with "static linking exception", just like FPC RTL and Lazarus LCL. So you can make both open- and closed-source games.

Screenshots

glTF 3D scene with outlines:

castle game engine scene outlines.png

Using gizmo to design 2D game:

castle game engine gizmo2d.png

"Escape from the Universe" game localized to Japanese:

castle game engine japanese game.jpg

Strategy game, using Tiled to design maps:

castle game engine strategy game.png

3rd-person camera demo:

castle game engine third person camera.png

3D model browser in Lazarus:

kambi vrml browser.jpg

External links