Many improvements: behaviors attached to TCastleTransform (a bit like MonoBehaviour), alphaMode and alphaCutoff from X3D 4.0 and glTF, Android services docs, loading/saving from TStream
We introduce a new class TCastleBehavior which can be attached to any TCastleTransfor

Castle Game Engine 7.0-alpha.1 release, view3dscene 4.0.0 release
We proudly present the first alpha pre-release of Castle Game Engine 7.0. It is time to break the long period of waiting since CGE 6.4!

We emphasize that it is a pre-release. We're still working on a finished 7.0 release, where all the features are polished, all examples are reorganized to show the new approach, all o

Simplifications, optimizations, GTK backend suitable for testing OpenGLES too
We had a few methods that needlessly traversed whole TCastleTransform hierarchy. Reworking them was an optimization and also an API simplification (IOW, a "no-brainer" :) ). Changes:

TCastleTransform.Press, TCastleTransform.Release are now only called when TCastleTransform.ListenPr

Demo of showing loading progress, WaitForRenderAndCall utility, new TCastleTouchNavigation
We have new TUIState.WaitForRenderAndCall utility, especially useful to implement loading inside TUIState descendant.

Our examples/user_interface/zombie_fighter features now a demo showing loading progress (as a descendant of TUIState, which is our advised approa

Interactive example showing our collision routines, various engine and editor improvements
I made a nice new example to demonstrate our collision checking routines examples/3d_rendering_processing/collisions:

TCastleTransform.Move - move, with collision checking and wall-sliding
Viewport.Items.WorldBoxCollision - detect collisions with axis-

Reading glTF extras (e.g. from Blender custom properties) to X3D metadata, support changing shape collision mode from Blender, documentation improvements
We now read glTF extras data to X3D nodes metadata.

In practical terms, it means that you can set custom properties in Blender, and then read i

Editor improvements: dragging scenes to viewport, undo for gizmos, better docs
You can now drag scene files (like glTF, X3D, images...) from the "Files" bottom panel onto a viewport. It will automatically create a TCastleScene instance with proper URL that displays this model.

The initial translation is determined by the point where you drop the item, with some smart

New TCastleTransformDesign component (like prefab for TCastleTransform), example advanced_editor showing advanced usage of designs and custom components
New component TCastleTransformDesign allows to reference a xxx.castle-transform file inside a parent design. This way you can define a composition o

Lots of optimizations, support for explicit tangents information in glTF and X3D, X3D 4.0 being finalized
As I mentioned in the news post 2 weeks ago, lately I've been following a trail of reworking and optimizing some renderer code. In particular this is important if you do skinned animation in glTF with bump mapping — which is a very common us

Raspberry Pi – binary builds, ready for download
You can now download Castle Game Engine for Raspberry Pi from our main page.

These are ready builds, with the editor, build tool, view3dscene already precompiled, so just download them and run bin/castle-editor and use CGE on your Raspberry Pi. Technically, they are just Linux/Arm builds, and will work on any Linux/Arm system — we simply call them "Ra

Castle Game Engine video overview (focusing on glTF, X3D, view3dscene and graphic features)
In this video I focus on the engine capabilities to render glTF and X3D content with a lot of graphic features. I show also glTF -> X3D conversion capabilities. This video has been originally made for Web3D 2020.

Video introduction to the engine and editor (from MiniDebConfOnline2)
Two weeks ago I made a presentation about Castle Game Engine at a Debian conference MiniDebConf Online #2 “Gaming Edition”. I think it turned out to be a very nice video introduction to the engine, presenting the editor, creating 3D content in Blender, and even using Docker to create an Android build — all wrapp

Shader effects demo
I added a simple demo to show our Compositing Shaders effects used in practice. The demo is available in examples/3d_rendering_processing/shader_effects.

The demo adds an Effect node by code, to a model loaded from glTF, and also shows how to manipulate custom effect parameter (which maps to GLSL uniform) at runtime. These effects use shader code (GLSL, running on GPU) that is automatically integrated with

Optimizations and improvements to our renderer
Last week we did an important fix for glTF skinned animation combined with normalmaps. It fixed the problem with incorrect lighting, but also made the code a little slower in case of skinned animation + normalmaps (we had to turn "off" one optimization). To counteract this, I'm reworking a relevant part of CGE renderer, to not only bring the old optimizat

Using 3ds Max and Maya to create assets for Castle Game Engine
Thanks to our glTF support, you can export to CGE from the latest 3ds Max and Maya versions. We have updated our documentation:

Detailed instructions how to export from 3ds Max

Detailed instructions how to export from Maya

Thanks go to Andrzej Kilijański for updating these pages!

Being an open-source eng

Various improvements (component gallery started, image loading optimizations, metadata, more)
An unorganized list of new things implemented in Castle Game Engine lately:

I started an important engine example: component_gallery. Right now it's an extensive demo of TCastleButton possibilities. It will be extended with more pages soon.

We made si

New comfortable way of using sprite sheets (and images) in viewports
Thanks to a great work by Andrzej Kilijański, we now have a brand new way of using sprite sheets in Castle Game Engine: you can load sprite sheets to TCastleScene and arrange them within a TCastleViewport.

This means that you can load, display, transform, animate sprite sheets just like all other scenes. Refer to

Debian talk about Castle Game Engine in 12h, watch Enes Geven game videos in the meantime :)
Tomorrow (Sunday, 22 November) at 13:30 there will be a presentation about Castle Game Engine at MiniDebConf Online #2 (see schedule). Come and listen :)

Here's a 37-teaser I made for it:

And in the meantime, watch pr

Upcoming Debian conference CGE talk, video from Web3D 2020 talk, engine improvements: new 2D geometry primitives, no more libGLU
I'll give a presentation about Castle Game Engine at MiniDebConf Online #2 “Gaming Edition”, an online Debian conference devoted to game development. The presentation is already recorded :), and I

Various improvements (blending documentation, AvoidNavigationCollisions fix, buttonXxx renames, CastleXMLUtils example…)
I'm happy to be swamped with things to announce about the engine! :) So, after previous announcements this weekend, one more list of new stuff :)

We have an extensive documentation how blending (partial-t

Show older

Server run by the main developers of the project 🐘 It is not focused on any particular niche interest - everyone is welcome as long as you follow our code of conduct!