Release Notes for Build 124

From C4 Engine Wiki
Jump to navigation Jump to search

Release date: June 25, 2006

  • Implemented support for version 1.4 of the Collada format. The Collada Importer tool can now read both versions 1.3 and 1.4, and everything that was supported in version 1.3 is now supported in version 1.4.
  • Introduced frame time normalization in the World Manager. This is currently applied to velocity-dependent effects like full-scene motion blur and line particles, giving them a uniform appearance at all frame rates. By default, the effects are adjusted so that they appear as if the game was running at 60 frames per second (i.e., 16.666 milliseconds between frames). The default frame time can be changed by calling the WorldMgr::SetDefaultVelocityNormalizationTime() function and passing in a new normalization time in milliseconds. When a world is loaded or created, it grabs this default time, but you can also set a per-world normalization time using the World::SetVelocityNormalizationTime() function. Longer times make the effects more prominent, and shorter times make the effects more subtle.
  • Added a new flag to remote portals that allows light to pass through them as if they were direct portals. This can be used to let light pass through windows that use remote portals to get bumpy transparency. If this flag is turned on for a remote portal that isn't a simple "pass-through" portal, then the results are undefined. That is, it won't work for mirrors and portals that look at a remote location.
  • Implemented significantly better shadow-casting set determination in the World Manager. The engine will now render far fewer shadow volumes, saving a lot of time that was previously spent both calculating and rendering shadows that couldn't be seen.
  • The Clonable class has been renamed to EntityRegistration to be consistent with the other types of objects that are registered.
  • Updated the primitive geometries where necessary so that the natural texture coordinates always form right-handed tangent space.
  • The World Editor now initially disables shadows for the planar primitive geometries since they don't form closed meshes by themselves.
  • Added an input action binding to the game module that lets you switch between the first-person camera and the chase camera. This is disabled in multiplayer mode so that you can't cheat by looking around corners.
  • Added a specialization to the String class template for arbitrary-length strings. Passing 0 as the template parameter causes this specialization to be used. This is the default value, so declaring a string as String<> will grab the class that supports arbitrary lengths. Note that it is less efficient to use this class (but more convenient), so the sized strings should be used when possible and/or practical.
  • Fixed a problem in the World Editor that would cause hidden objects to be selected by the box select tool.
  • Fixed a problem in the game code that would fail to catch a ResourceException if you tried to do a quick load, but there was no quick save file.