![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
We did some rearrangement of our examples, to showcase better engine features and some good demos.
- First of all, we now have 3d_games and 2d_games subdirectories in our engine examples.
The names
2d_games
,3d_games
are alphabetically first — which is a nice bonus, we want them to be noticeable. -
Example 3d_games/walking_adventure has been added to the engine repository.
It’s a simple walking simulator where you can talk with NPCs (horses), interact with objects, spawn and push physical objects. Full game controller support.
This is not really new. This was done from Delphi Summit 2025 presentation, it is now just repurposed as a regular engine example that we want to maintain and recommend to check out.
-
Example 3d_games/dungeons_and_skeletons_fight has been added to the engine repository.
This is FPS game where you shoot at skeletons and try to find dungeon exit. Using 3D assets from OpenGameArt, Sketchfab, Quaternius, modified by Blender. Enemy logic using
TCastleMoveAttack
.This is also not really new demo. This was done for “Zlot Programistów Delphi” at 2024 presentation. As it is useful, we decided to put it in engine “core” repository.
-
We have added an example ask_openai_assistant to the
examples/network/
. Shows how to use ourTCastleDownload
for REST communication, with OpenAL in particular. This is, again, not really new — it was presented already last year, but was in a separate repo. Given the popularity of AI, and the usefulness of theTCastleDownload
for REST, we want to showcase this demo better, by having it part of the engine.And if you haven’t, check out also the new random_image_from_unsplash demo, announced just yesterday.
-
We have also renamed previous
examples/fps_game
demo into examples/3d_games/explore_impressive_castle.The previous name was causing (understandable) confusion — because it wasn’t really a functional FPS game, it was “in the middle of rework” for a long long time. And in practice, our 3d_games/dungeons_and_skeletons_fight is already better as “FPS game” demo.
The new name and new README better describe what it actually is, right now. The README also documents why this example demands better GPU to work fast, and what do we plan to do about it, which was somewhat a FAQ.
-
We also moved eye_of_beholder demo to
3d_games
. -
We also moved platformer and space_shooter to
2d_games
.
Note about engine size: Engine download size grew because of new demos.
- We fought to keep this growth limited. We removed some old deprecated demos, to keep size lower. We removed all unused data and even decreased some textures from new demos and/or converted them to jpg. We also took care to not commit to GIT history large files, since GIT repo size grows even after things are removed.
-
But in total, some growth could not be avoided. Downloads are now about +80 MB bigger.
-
We hope that the increased engine size is worth it. The new demos are cool, and hopefully demonstrate nicely what you can do with our engine.
-
But we’re aware this is a problem in the long run. It would be nice to have a small engine download size. Some other game engines are also large (much larger than us!), but some others are small… it would be nice to get back to “small size” category. But at the same time we have a priority to provide you great examples, out-of-the-box, with the engine. We think (hope!) our existing examples are valuable.
-
Possibly, in the future our examples library could be auto-downloaded as you open each example, this would reconcile our 2 desires (to have “lots and useful and discoverable examples” with “have smaller engine download size”).
Like this? As always, we appreciate your support.
Start the discussion at Castle Game Engine Forum