Difference between revisions of "Castle Game Engine"

From Free Pascal wiki
Jump to navigationJump to search
(→‎Videos: Link to youtube channel, add dragon spine movie link. list only some most important movies)
(Reflect features of Castle Game Engine 7.0, more screenshots, updated youtube link)
(8 intermediate revisions by 5 users not shown)
Line 1: Line 1:
[http://castle-engine.sourceforge.net/ 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 [http://castle-engine.sourceforge.net/vrml_x3d.php 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).
+
{{Castle_Game_Engine}}
 +
{{Menu_Game_Development}}
  
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).
+
[https://castle-engine.io/ Castle Game Engine] is a cross-platform 3D and 2D [[Game Engine|game engine]].  
  
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.
+
* 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.
  
[http://castle-engine.sourceforge.net/engine.php This page links to engine downloads, documentation and lists all the engine features is more detail].
+
* 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.
  
== Documentation ==
+
* 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.
  
We have a lot of documentation about using the engine:
+
* Many graphic effects are available: physically-based rendering, shadows, mirrors, bump mapping, shader effects, gamma correction. Rendering is done through OpenGL or OpenGLES.
  
# [http://castle-engine.sourceforge.net/tutorial_intro.php Tutorial]
+
* 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].
# [http://castle-engine.sourceforge.net/tutorial_classes_overview.php Classes overview]
+
 
# [http://castle-engine.sourceforge.net/creating_data_intro.php Guide to creating game data]
+
* The user interface is cross-platform and supports anchors and automatic scaling.
# [http://castle-engine.sourceforge.net/apidoc/html/index.html API reference]
+
 
 +
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:
 +
 
 +
[[File:castle_game_engine_japanese_game.jpg|500px]]
 +
 
 +
Strategy game, using Tiled to design maps:
  
[[Image:kambi_vrml_browser.jpg]]
+
[[File:castle_game_engine_strategy_game.png|500px]]
  
FPS example game:
+
3rd-person camera demo:
  
[[Image:castle_game_engine_fps_game.jpg]]
+
[[File:castle_game_engine_third_person_camera.png|500px]]
  
== Videos ==
+
3D model browser in Lazarus:
  
See [https://www.youtube.com/channel/UCq9jJ5ivIXC5VEWiUAfxBxw Castle Game Engine YouTube channel] for all videos. Most interesting:
+
[[File:kambi_vrml_browser.jpg|500px]]
  
* [https://www.youtube.com/watch?v=AuI4zgmT-YQ Dragon Spine demo]
+
==External links==
* [https://www.youtube.com/watch?v=ICH3N7OZXx8 FPS game using Castle Game Engine 4.0.0]
 
* [https://www.youtube.com/watch?v=9dH234o5dqo Water with caustics in view3dscene]
 
  
Enjoy! Author: [[User:Michalis|Michalis Kamburelis]]
+
* [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/documentation.php Getting started]
 +
* [https://castle-engine.io/apidoc-unstable/html/index.html API reference]
 +
* [https://www.patreon.com/castleengine Patreon page]
  
 
[[Category:Components]]
 
[[Category:Components]]
 
[[Category:Graphics]]
 
[[Category:Graphics]]
 
[[Category:Games]]
 
[[Category:Games]]
 +
[[Category:Game Development]]

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