Release 3, Sprint 48

This release introduces a combination of both "fun" and "practical" features. On the "fun" side we have provided some powerful new camera features that will make your 3D animations more compelling to watch and fun to demonstrate. We have also continued our efforts to make the Standard Library more powerful by adding support for using secondary resources directly within our Standard Library objects without using Processes. Responding to frequent requests, we have also added more flexibility in animating queues, as well as the ability to add and delete vertices to existing queues, links, poly lines, and curves.

Camera Position Enhancements

We have added significant new controls for manipulating the 3D camera position and orientation. New controls include:

  • Ctrl+Scroll wheel changes the viewing angle of the camera
  • Shift+Scroll wheel moves the camera straight up and down
  • Up arrow moves forward
  • Down arrow moves left
  • Left arrow rotates left (or moves left in top-down mode)
  • Right arrow rotates right (or moves right in top-down mode)
  • Shift+Left arrow moves left
  • Shift+Right arrow moves right
  • [W] key sets the camera 1.7 meters off the ground, with the angle pointing almost straight out (i.e. "walking mode")

Camera Tracking Enhancements

The camera can now be attached to an object in the system and move with the object, track the object from a fixed position or follow behind/sit in front of it.

  • A new Track With Camera option has been added when you right-click on a dynamic object while running.
  • A Camera Placement button has been added to the View Ribbon under Camera Tracking. This allows you to provides four choices on how you would like the camera to follow (or track) the specified object.
  • A Change Item button has been added to the View Ribbon under Camera Tracking to allow easy change between potentially tracked objects.

Secondary Resources

Within the Server, Combiner and Separator objects, we've added secondary resources that can be specified within the Facility window, instead of using the Processes window and Add-On Process Triggers to seize and/or release resources and workers.

  • Under the category Secondary Resources, for simplicity you can specify a single resource (or list member) that is used for processing at the object.
  • When more flexibility is required, you can specify multiple resources that can be seized and released at various times within the object (upon entering, before processing and after processing).

Queue Enhancements

  • Animated queues may now be specified as Point Queue or Oriented Point Queue, in addition to the original line queues.
  • In an Oriented Point Queue you can change the entity orientation (the direction they face) for each point on the queue.
  • Users may also now add vertices to the middle or end of an existing queue.

Vertices Enhancements

Users can now add vertices to an existing polyline, curve or link.

  • By simply highlighting a line or curve, a vertex can be added to the end or middle of that line or curve.
  • With links, simply highlight the link and add a vertex to be placed anywhere along the existing link.

Math.NaN and Math.IfNaN(value)

We've added the math functions NaN and IfNaN(value) that will return the constant NaN (Not a Number) and will evaluate whether a value is NaN. This can be useful with the Math.If() function when there isn't a value that is returned from the If.

Tables and Candidate Keyword

You can now address tables that are bound to candidate objects in expressions using the Candidate keyword. For example, "Candidate.TableName.ColumnName > 100" could be used within a Selection Condition for selecting a resource from a list if the resources are bound to given rows in the table (as opposed to using the Candidate keyword to apply to the executing entity).