Release Notes for Version 5.0
Jump to navigation Jump to search
Release date: September 20, 2016
(C4 version 5.0 corresponds to Tombstone version 1.0.)
- All C-style casts have been changed to constructor syntax.
%operators for dot product and cross product have been removed from the engine. The
Cross()functions should always be used instead.
- The container modification and iteration functions have been made more verbose.
- In all callback-type functions, the term "proc" has been changed to "callback".
GraphEdgeclass has been renamed to
Singletontemplate has been named to
Manipulatorclass has been renamed to
CommitSetting()functions have been added to replace the
- CPU timings have been added to engine, and they are displayed in the Time window.
- All of the various resource formats have been updated. There is now a common header followed by resource-specific data.
- The cell graphs into which objects are organized for each zone are now octrees instead of tall quadtrees.
- Detail rings have been added to the engine. Each geometry node has a detail ring setting that determines at what distance the geometry starts to fade out. A world can have detail property that specifies the detail ring sizes. Indirect portals and camera widgets can specify a distance scale that modifies the sizes of all detail rings for geometry that is rendered through them.
- A special root region graph has been added for lights to solve shadowing problems when lights are rooted in multiple zones that can see each other through portals.
- The impostor system has been updated. Impostors now have better transition blends, and they are no longer required to be vertical.
- The remote portal cover render stage has been removed from the engine.
- Remote cameras have been renamed to indirect cameras, and remote portals have been renamed to indirect portals.
- Parallel code for shadow map generation has been added to the engine to improve performance.
- Multisampled rendering is now permanently on, and the engine uses a custom downsampling shader.
- Infrastructure necessary for upcoming secondary frame buffer effects has been implemented.
- The motion blur effect has been improved for discontinuous screen-space velocities.
- Clipping plane support has been added to vertex shaders. Clipping planes are exposed for widgets.
- The engine now has the ability to reference material resources from material objects.
- The fog rendering code has been enhanced.
- All text rendering in the engine has been replaced with a new technology that renders glyphs directly from outline data directly on the GPU. Support for kerning and tracking have been added.
- The engine now uses a new proprietary audio format.
- The sound streaming code has been changed to use triple buffering. This ensures that there can be no breaks when a streaming sound loops or starts a new file.
Controller::ScheduleSleep()function and Schedule Sleep script method have been added to the engine.
- The ability now exists for a script method to delete the node to which the script is attached or one of its predecessors.
- The Shape node now supports dynamic shape substances.
- The Set Shape Substance modifier has been added to the engine.
- Custom versions of all transcendental functions and inverse trig functions have been implemented in the engine.
- The various vector, bivector, and trivector classes have been improved.
- The World Editor now has a complete set of landscaping paint tools.
- The performance of radiosity space generation has been improved by breaking the work into parallel jobs.
- A new tilt setting has been added to the placement adjuster in the World Editor and Landscaping Editor.
- A new director cell graph has been implemented in the World Editor. This drastically improves performance for scenes containing a lot of vegetation.
- The rendering code and picking code in the World Editor have been modified to use the cell graph. Director bounding spheres have been removed.
- The list of available materials in the World Editor is now displayed in the Material Page, and the Material Manager has been renamed to Material Editor.
- Material Editor functionality for external material resources has been added.
- The method appearance in the Script Editor has been changed to a larger box size.
- The configuration files for Texture Importer have been updated to use the OpenDDL format.
- A Sound Importer tool has been added, and it converts
.wavfiles to the new format.