Advertisement · 728 × 90

Posts by Castle Game Engine

Preview
Support for PLY model format and InlineGeometry node We support now loading models in PLY format, commonly used for 3D scanning and printing. We support all common variants, which means ASCII and binary with any endianness. We support both models with faces (loaded to ) and without (loaded to ). As usual, "support" means we support them everywhere in our engine and tools. In particular Castle Model Viewer…

Support for PLY model format and InlineGeometry node

We support now loading models in PLY format, commonly used for 3D scanning and printing. We support all common variants, which means ASCII and binary with any endianness. We support both models with faces (loaded to ) and without (loaded to ).…

2 weeks ago 4 1 0 0
Preview
PasDoc 1.0.0 release with with many features and fixes: modern HTML look, show source position, visibility of membes toggleable, show inherited members… This a bit non-standard news post: I wanted to announce a new release of PasDoc, documentation generator we use to create Castle Game Engine API docs. PasDoc is a documentation generator for Pascal source code. Documentation is generated from comments found in the source code (or in special description files). We support many output formats, like HTML, LaTeX (for PDF, PS), XML and PHP.

PasDoc 1.0.0 release with with many features and fixes: modern HTML look, show source position, visibility of membes toggleable, show inherited members…

This a bit non-standard news post: I wanted to announce a new release of PasDoc, documentation generator we use to create Castle Game Engine API…

3 weeks ago 8 3 0 0
Preview
Tower Fight game by Phomm, various engine fixes (GTK 3 and Wayland, float textures and Skin and web, macOS editor…) and website updates Phomm posted about a cool new game he made in our forum: Tower Fight - Samurai Arcade for testing math skills. Available for various platforms including web. I recommend also his accompanying post about deploying web builds on itch.io for great instructions how to release your web games on itch.io. There's a lot of more in that thread, including our immediate plans for more work on the web -- stay tuned:)

Tower Fight game by Phomm, various engine fixes (GTK 3 and Wayland, float textures and Skin and web, macOS editor…) and website updates

Phomm posted about a cool new game he made in our forum: Tower Fight - Samurai Arcade for testing math skills. Available for various platforms including web. I…

1 month ago 2 0 0 0
Preview
AI usage guidelines and thoughts updated, and… test of vibe-coding with Castle Game Engine As most of us, I spend lately considerable amount of time researching and talking about AI implications (for coding and beyond). It's a big subject. The technology offers us various applications, and various new ways for misuse too. I think the following statement manages to summarize my hopes + concerns best: When working to solve the problem, we should be gaining understanding, not losing it.

AI usage guidelines and thoughts updated, and… test of vibe-coding with Castle Game Engine

As most of us, I spend lately considerable amount of time researching and talking about AI implications (for coding and beyond). It's a big subject. The technology offers us various applications, and various…

1 month ago 2 0 0 0
Preview
Upgrade to GTK 3 We are upgrading our engine usage on Linux and FreeBSD from GTK 2 to GTK 3. Our installation instructions and scripts include now information to add GTK 3 packages. This is as simple as installing libgtk-3-dev package on Debian-based systems (including Ubuntu and Raspberry Pi). See the compiling from source for instructions for other distros. Our under the hood uses now GTK 3 instead of GTK 2 (on Linux and FreeBSD).

Upgrade to GTK 3

We are upgrading our engine usage on Linux and FreeBSD from GTK 2 to GTK 3. Our installation instructions and scripts include now information to add GTK 3 packages. This is as simple as installing libgtk-3-dev package on Debian-based systems (including Ubuntu and Raspberry Pi).…

2 months ago 4 1 0 0
Preview
macOS improvements: work flawlessly on Apple Silicon (Aarch64), bundled with FPC, signed and notarized; Cocoa mouse positioning; fixes to OnDropFiles; universal binary support We are proud to announce numerous improvements to how our engine works on macOS: As hinted in previous news, our macOS builds are now provided with "bundled FPC" which means that building your games works out-of-the-box with our engine. Castle Game Engine downloads now feature a native macOS/Silicon (Aarch64) build. With everything working natively on Apple Silicon, including our engine, tools, and bundled FPC.

macOS improvements: work flawlessly on Apple Silicon (Aarch64), bundled with FPC, signed and notarized; Cocoa mouse positioning; fixes to OnDropFiles; universal binary support

We are proud to announce numerous improvements to how our engine works on macOS: As hinted in previous news, our macOS…

2 months ago 8 2 0 0
Preview
Engine downloads with “bundled FPC” for all platforms, castle-build-ci to easily use CI with our engine, Woodpecker (Codeberg) CI examples and impressions We have a number of news related to using CI (continuous integration) / CD (continuous delivery) with our engine. The idea of CI / CD is that you let some automatic process to be performed on your code, usually each time you make a commit / push to the repository. There are a number of useful things you can do this way (e.g.

Engine downloads with "bundled FPC" for all platforms, castle-build-ci to easily use CI with our engine, Woodpecker (Codeberg) CI examples and impressions

3 months ago 6 2 0 0
Preview
December news (unlimited skin joints on shaders, PointProperties), and plans for 2026 (next release, signpath, better macOS Silicon, shadow maps…) Hello everyone! I hope you have a peaceful time at the end of December and spend it doing what you love -- whether it means developing games, or playing games, or just resting (and thinking about games) 🙂 I wanted to share some of the recent engine developments and plans for the nearest future. First of all, I have to admit I failed.

December news (unlimited skin joints on shaders, PointProperties), and plans for 2026 (next release, signpath, better macOS Silicon, shadow maps…)

Hello everyone! I hope you have a peaceful time at the end of December and spend it doing what you love -- whether it means developing games, or…

3 months ago 4 1 0 0
Preview
November improvements: huge animation upgrade, guidelines about AI usage, Codeberg mirror, various fixes We have a few things to report from November. Enjoy 🙂 We have merged a big branch with numerous improvements to our animation handling (skinned animation and other). The important new functionality is documented here. This merge features: Skinned animation loaded from glTF is now performed on GPU (mesh is deformed using shaders). This allows such animations to be loaded much faster, take much less memory, and be more efficient at the same time.

November improvements: huge animation upgrade, guidelines about AI usage, Codeberg mirror, various fixes

We have a few things to report from November. Enjoy 🙂 We have merged a big branch with numerous improvements to our animation handling (skinned animation and other). The important new…

4 months ago 10 1 0 0
Preview
Various October Improvements – VS Code and VS Codium, Google Play 16k requirement, Nintendo Switch update We released a new version (1.6) of our extension to integrate with VS Code: We fixed how it detects OS on win64. This in turn fixes Code Completion, jumping to declaration and other LSP features on Win64. In addition to the VS Code marketplace, we're now also in OpenVSX marketplace. This means that you can use our extension in…

Various October Improvements – VS Code and VS Codium, Google Play 16k requirement, Nintendo Switch update

We released a new version (1.6) of our extension to integrate with VS Code: We fixed how it detects OS on win64. This in turn fixes Code Completion, jumping to declaration and other LSP…

5 months ago 5 1 0 0
Advertisement
Preview
KTX support improvements, ability to load images faster Our support for the KTX image format was greatly improved, to make it the best format for images (in some cases -- when you don't care about image size on disk, but care about loading time). Note that the post below discusses various details, but you don't really to do anything special to benefit from these improvements. Just use KTX, as any other image, for your textures / images.

KTX support improvements, ability to load images faster

Our support for the KTX image format was greatly improved, to make it the best format for images (in some cases -- when you don't care about image size on disk, but care about loading time). Note that the post below discusses various details,…

5 months ago 5 1 0 0
Preview
Demo how to distribute web application with encrypted data We present a demo showing how you can keep your web application data encrypted (with decryption key embedded in your application code). By default, when you build a web application, the data is packed into a ZIP file, and a person that wants to access your data can download this ZIP and unpack the data on their own system (and e.g.

Demo how to distribute web application with encrypted data

We present a demo showing how you can keep your web application data encrypted (with decryption key embedded in your application code). By default, when you build a web application, the data is packed into a ZIP file, and a person that…

6 months ago 3 1 0 0
Preview
IFC support in Castle Game Engine We've been extending in recent months our IFC support. I talked about it at conference in Germany and I will talk about it at conference in Poland next week 🙂 General overview of what IFC is about: You can open, save and manipulate 3D models in the IFC format. This is the standard 3D format used by the BIM (

IFC support in Castle Game Engine

We've been extending in recent months our IFC support. I talked about it at conference in Germany and I will talk about it at conference in Poland next week 🙂 General overview of what IFC is about: You can open, save and manipulate 3D models in the IFC format.…

6 months ago 6 1 0 0
Preview
September engine progress: IFC, web, CastleHttps, VS Code debugging, zen mode, X3D 4.0 4.1, downloads mirror This was a busy month, with lots of engine work and also a great conference in Germany organized by Sorpetaler. Let me then announce a bag of engine improvements and news all across the board from last month (and more): We've been working a lot in recent months on our IFC support. More details about the IFC improvements will be announced later this week.

September engine progress: IFC, web, CastleHttps, VS Code debugging, zen mode, X3D 4.0 4.1, downloads mirror

This was a busy month, with lots of engine work and also a great conference in Germany organized by Sorpetaler. Let me then announce a bag of engine improvements and news all across the…

6 months ago 3 1 0 0
Preview
Castle Model Viewer available on iOS, Android version updated too We have released Castle Model Viewer Mobile on iOS (iPhone, iPad) and you can get it right now from the App Store! Open this link to the AppStore on your iPhone/iPad, or just search for "Castle Model Viewer" in the AppStore. We're available in all AppStore regions (including US and EU). You can open a number of built-in models (in…

Castle Model Viewer available on iOS, Android version updated too

We have released Castle Model Viewer Mobile on iOS (iPhone, iPad) and you can get it right now from the App Store! Open this link to the AppStore on your iPhone/iPad, or just search for "Castle Model Viewer" in the AppStore. We're…

7 months ago 2 0 0 0
Preview
Ton of mobile (iOS, Android) improvements: iOS + OpenGL3, Google Play Biling upgrade, shadow maps precision, more As we're preparing to release Castle Model Viewer on iOS, we've done a number of improvements to our mobile support for both iOS and Android: With big thanks to Jan Adamec, we have: Upgraded our OpenGLES usage on iOS to OpenGES 3 (if only your system supports it; otherwise we still fallback to OpenGLES 2). This brings features like shadow maps to iOS rendering.

Ton of mobile (iOS, Android) improvements: iOS + OpenGL3, Google Play Biling upgrade, shadow maps precision, more

As we're preparing to release Castle Model Viewer on iOS, we've done a number of improvements to our mobile support for both iOS and Android: With big thanks to Jan Adamec, we have:…

7 months ago 5 1 0 0
Preview
Enjoy new examples: 3d_games/walking_adventure, 3d_games/dungeons_and_skeletons_fight and more 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.

Enjoy new examples: 3d_games/walking_adventure, 3d_games/dungeons_and_skeletons_fight and more

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…

7 months ago 4 1 0 0
Preview
New example: get random image using Unsplash REST API We have a new example in our repository: examples/network/random_image_from_unsplash. This shows using our to access Unsplash API and ask for a random image matching a given search term (like a "cute fox"). The main part of the example is the unit gameunsplash.pas with a reusable class to download images from Unsplash. There are 2 ways how this can be useful:

New example: get random image using Unsplash REST API

We have a new example in our repository: examples/network/random_image_from_unsplash. This shows using our to access Unsplash API and ask for a random image matching a given search term (like a "cute fox"). The main part of the example is the…

7 months ago 3 1 0 1
Preview
Android: Updated applications (Castle Model Viewer, Platformer…) in Google Play, on the engine side: upgraded Google Play Services to v2 and Android SDK to 35 Castle Model Viewer for Android version 2.8 has been released! This brings: Support for IFC format right in our mobile viewer. Small UI improvements: better button order (left-most changes model), show more built-in files. Opening ZIP files underneath doesn't create temp directory on your device. Internally, this is achieved by using to open ZIP files. The class also makes code simpler, and compatible with both FPC and Delphi.

Android: Updated applications (Castle Model Viewer, Platformer…) in Google Play, on the engine side: upgraded Google Play Services to v2 and Android SDK to 35

Castle Model Viewer for Android version 2.8 has been released! This brings: Support for IFC format right in our mobile viewer. Small UI…

8 months ago 1 0 0 0
Advertisement
Preview
Lazarus packages: moved, renamed We did a few moves and renames to our Lazarus packages. After upgrading to the latest engine version, be sure to run again "Register Lazarus Packages" button (from the "Preferences -> FPC and Lazarus" in our editor, as documented in our Lazarus docs). Note that the existing applications will continue to work even without you doing the above, because new packages…

Lazarus packages: moved, renamed

We did a few moves and renames to our Lazarus packages. After upgrading to the latest engine version, be sure to run again "Register Lazarus Packages" button (from the "Preferences -> FPC and Lazarus" in our editor, as documented in our Lazarus docs). Note that the…

8 months ago 1 0 0 0
Preview
14 engine improvements from June/July — window sizing docs, TCastleAbstractPrimitive and TCastleImageTransform extensions, cubemaps and 3D textures in all texture slots, VS Code integration improved, rendering optimizations… Presenting a big batch of engine improvements done last ~month. Lots of small things. Everyone, pick what you like 🙂 Upgrade to the latest engine version and enjoy them all! If you like what you see, we appreciate your support on Patreon (we also have other ways to donate). We added a new documentation page Window size and fullscreen…

14 engine improvements from June/July — window sizing docs, TCastleAbstractPrimitive and TCastleImageTransform extensions, cubemaps and 3D textures in all texture slots, VS Code integration improved, rendering optimizations…

Presenting a big batch of engine improvements done last ~month. Lots of…

8 months ago 0 0 0 0
Preview
More scenes are shadow casters for shadow volumes out-of-the-box, because of the auto-detection of 2-manifold scenes (Yes, it's a 3rd news about Castle Game Engine in 3 days. More to come -- we have a backlog of things to announce! Brace yourselves 🙂 ) We introduced an algorithm to detect 2-manifold scenes better, meaning that all scenes that are really 2-manifold (even if not all shapes inside are 2-manifold) are automatically shadow casters for shadow volumes…

More scenes are shadow casters for shadow volumes out-of-the-box, because of the auto-detection of 2-manifold scenes

(Yes, it's a 3rd news about Castle Game Engine in 3 days. More to come -- we have a backlog of things to announce! Brace yourselves 🙂 ) We introduced an algorithm to detect…

8 months ago 2 0 0 0
Preview
Register for the upcoming Pascal Conference in Germany (Early Bird price until 31.07) I will be at the Pascal Conference 2025 in Germany, on September this year. And you can be there too 🙂 The schedule is announced at the conference site. A number of great people, influential in both FPC and Delphi development, are going to give a talk, so this is going to be very interesting. I will also present. On Friday I will talk about a real use-case of our…

Register for the upcoming Pascal Conference in Germany (Early Bird price until 31.07)

I will be at the Pascal Conference 2025 in Germany, on September this year. And you can be there too 🙂 The schedule is announced at the conference site. A number of great people, influential in both FPC and…

8 months ago 5 2 0 0
Preview
Delphi advancements: groundwork for more platforms (Android, macOS, iOS), Castle Model Viewer + Delphi, cli Delphi tools on macOS, fixes for C++ Builder, Delphi 64-bit IDE We have a few treats for Delphi users in this post: Base engine units (but not yet rendering!) are now compatible with more Delphi platforms. To opens the door to make our engine compatible with more platforms with Delphi. This means we have a "groundwork" to add support for more targets with Delphi: Android (tested both "Android 64-bit" and "Android 32-bit"

Delphi advancements: groundwork for more platforms (Android, macOS, iOS), Castle Model Viewer + Delphi, cli Delphi tools on macOS, fixes for C++ Builder, Delphi 64-bit IDE

We have a few treats for Delphi users in this post: Base engine units (but not yet rendering!) are now compatible with more…

8 months ago 2 1 0 0
Preview
Support for new Tangent node in X3D, with vectors as 4D, better aligned with glTF The short version of this post, if you don't want to go into technical details, is that one aspect of using bump mapping is now better in Castle Game Engine. Our data transfer and logic is more efficient and more aligned with glTF and latest X3D specifications. And if you still don't want to go into technical details, you can…

Support for new Tangent node in X3D, with vectors as 4D, better aligned with glTF

The short version of this post, if you don't want to go into technical details, is that one aspect of using bump mapping is now better in Castle Game Engine. Our data transfer and logic is more efficient and more…

9 months ago 1 0 0 0
Preview
URL improvements: castle-config:/ protocol, use UriExists and FindFiles on any URL (including e.g. zip), TCastleMemoryFileSystem We present a number of improvements to our URL system, which is the basis for all engine resource loading and saving: We introduced castle-config:/ URL protocol, to save files in a system-specific place (directory) that is "persistent" for given user. It points to a specific directory that is by convention writeable and should be used to save user data. For example, something like…

URL improvements: castle-config:/ protocol, use UriExists and FindFiles on any URL (including e.g. zip), TCastleMemoryFileSystem

We present a number of improvements to our URL system, which is the basis for all engine resource loading and saving: We introduced castle-config:/ URL protocol, to save…

9 months ago 1 0 0 0
Preview
Slides and example from Delphi Day 2025 presentation and after-thoughts (Afterwarp, shadow maps, BGFX and deferred rendering) I'm traveling back home after enjoying Delphi Day 2025 in Piacenza. I think I've made a nice presentation about the engine features. Slides are available here and one new (simple and fun 🙂 ) example is part of the engine now: examples/physics/physics_throw_chickens. During the talk, I also showed a number of existing projects, including platformer, fps_game, …

Slides and example from Delphi Day 2025 presentation and after-thoughts (Afterwarp, shadow maps, BGFX and deferred rendering)

I'm traveling back home after enjoying Delphi Day 2025 in Piacenza. I think I've made a nice presentation about the engine features. Slides are available here and one new…

9 months ago 1 0 0 0
Preview
Shaders! Large new documentation how to use shaders with Castle Game Engine, and new “shader libraries” (for now: to convert worldeye space comfortably), and new SetEffects methods We've done a number of improvements to our shaders support, and it starts with one big thing: We have a new documentation how to use shaders with Castle Game Engine. Recommended reading! This documentation shows the most recommended way to use shaders in Castle Game Engine, combining simplicity with power: It starts with up-to-date explanation of why we recommend to use "shader effects" () to express your shaders.

Shaders! Large new documentation how to use shaders with Castle Game Engine, and new “shader libraries” (for now: to convert worldeye space comfortably), and new SetEffects methods

We've done a number of improvements to our shaders support, and it starts with one big thing: We have a new…

10 months ago 0 0 0 0
Preview
Game controllers (gamepads, joysticks) – new comfortable API, and example of walking and talking using gamepad from Delphi Summit 2025 We're proud to present a completely new comfortable API to handle game controllers (which includes gamepads, joysticks and similar devices). Everything is documented, with links to examples, in the dedicated manual page about game controllers. Highlights of the new support: You receive information about pressing / releasing gamepad buttons by overriding and methods. Usually you define these overridden methods in your…

Game controllers (gamepads, joysticks) – new comfortable API, and example of walking and talking using gamepad from Delphi Summit 2025

We're proud to present a completely new comfortable API to handle game controllers (which includes gamepads, joysticks and similar devices). Everything is…

10 months ago 2 1 0 0
Advertisement
Preview
Meet me in Netherlands (Amsterdam), Italy (Piacenza), Germany (Sundern) at the upcoming Pascal conferences As many of you know, I looove talking about Castle Game Engine and our many features. But my wife, though she loves me dearly, eventually says "enough" 🙂 So I learned to travel around the world and speak at various conferences. Catch me at these upcoming events: I will be at the Delphi Summit, in Amsterdam (Netherlands)

Meet me in Netherlands (Amsterdam), Italy (Piacenza), Germany (Sundern) at the upcoming Pascal conferences

As many of you know, I looove talking about Castle Game Engine and our many features. But my wife, though she loves me dearly, eventually says "enough" 🙂 So I learned to travel around the…

10 months ago 2 0 0 0