Release Notes for Build 134

From C4 Engine Wiki
Jump to navigation Jump to search

Release date: April 14, 2007

  • Added a new PolygonZone class that allows a zone to have the shape of an extruded convex polygon. In the World Editor, polygon zones are drawn in a manner similar to portals, in which new vertices can be inserted, and existing vertices can be individually dragged around or removed. The polygonal shape defines the base of the zone, and the height of the zone is controlled by an additional handle at the top center of the zone.
  • When a node is cloned, links between any pair of its subnodes are now replicated in the cloned subtree. (Any connectors that lead out of the subtree being cloned continue to be cleared in the new copy.) This also affects connectors in referenced worlds, since these worlds are cloned when more than one instance is used in a level. Connectors inside a referenced world will now be replicated in all copies of that world.
  • In the World Editor, panel effects are now rendered in the perspective viewport when lighting is enabled. Panels are only shown in their initial state because controllers do not run in the editor.
  • Particle systems are now subclassed from the Configurable class and can expose settings in the World Editor. If a particle system exposes any settings, then a Particles pane will appear in its Get Info dialog.
  • Several improvements have been made to the burning rain effect in the demo game. The flames can now be rendered as particles, so a single particle system is used to render all of the flames at once. The BurningRain class also exposes some settings in the editor now.
  • Added a color setting to the waterfall particle effects in the demo game.
  • Added the Select Connected Node command to the Node menu in the World Editor. This command is available when one or more connectors are selected, and it selects the nodes that they are connected to.
  • Added virtual functions BeginRendering() and EndRendering() to the World class. These contain the code previously in the World::Render() function that should only be executed once per frame. The render callback function that could be installed in the last build is no longer necessary since it's exact behavior can now be implemented by overriding the World::Render() function and executing extra code after calling the base class's Render() function. Thus, the World::SetRenderProc() function has been removed.
  • The Compressor and Decompressor classes now support 64-bit integers for network messages.