Units described here are deprecated.
In particular, using viewport and scenes directly allows to design your levels using our visual editor, and benefit from all the features we have (composing level from a number of scenes and primitives, assigning skybox) and will have (placing lights, editing materials) in the CGE editor.
The most prominent reason to keep still using these units is that
gives you "ready creatures AI (artificial intelligence)".
We don't have an equivalent of if yet in non-deprecated units... but we work on it.
We will expose flexible creature AI as
TCastleBehavior descendant class
Units described in this section implement a common logic typical to 3D games.
Using these units is optional. You can implement a perfect 3D game without them (just use viewport and scenes, the viewport already gives you flexible camera and navigation features) and have full flexibility of a general 3D engine. Using these units makes sense if your game concepts fit within typical concepts of the 3D first-person shooter games, described below.
The features provided are:
Single player management.
Player has hit points, may collect items, may use weapons (short-range,
missile shooting), may be swimming, may have footsteps sound
depending on the terrain.
Creatures with various AI (artificial intelligence).
AI ranges from smart walk-attack-flee, to a trivial "missile" (fly along a direction,
explode on hit) AI.
Items that are pickable, may lie on the level, may be in player's inventory,
Levels allow to load a 3D scene with placeholders to define creatures and items,
to define water volume, to define move limit for player etc.
And utilities for the above units: