Fixes potential infinite loop if worker thread was running but not
enabled.
Fixes apparent bug in fading sound smoothness.
Cleans up worker class slightly.
Cleans up weird and inconsistent whitespace.
This was SVN commit r15269.
Instead of each CCmpVisualActor rendering itself individually, collect
all the units in a single CCmpUnitRenderer. This avoids the overhead of
doing Interpolate/RenderSubmit calls every frame for every object in the
world. It also allows more efficient culling.
CCmpUnitRenderer knows the positions of each object at the start and end
of each turn, and computes the bounding sphere of the object along that
path. That allows quick culling without recomputing the precise
interpolated transform every frame. (In the future it could be improved
much more.)
Clarify and clean up the sending of PositionChanged messages, and add
new InterpolatedPositionChanged.
Remove the forceFloating parameter from GetInterpolatedTransform, since
it doesn't fit the new design. Replace it with a (non-synchronised) flag
in CCmpPosition.
Move construction progress from CCmpVisualActor to CCmpPosition, so that
it consistently affects all position/transform computation.
Refs #2337.
This was SVN commit r15265.
Deserialize SYSTEM_ENTITY before any other entities. This makes it safe
for Deserialize() methods to access system components (mirroring how
Init() can already access system components).
Add a Deserialized message, sent after all entities have been
deserialized, to help with some other sequencing problems.
This was SVN commit r15264.
This allows component Init functions to make use of the terrain
immediately, instead of delaying some computations until the first
frame.
This was SVN commit r15262.
BoundingSphere is similar to a bounding box, but more spherical.
SOverlaySphere is useful for visualising BoundingSphere (it's quite
inefficient and should only be used for debug functionality).
Normalise the camera frustum clipping planes, so that IsSphereVisible
gives the correct result.
This was SVN commit r15261.
Tweaked Roman Logistics tech. Tweaked Siwa Oasis skirmish.
Balance changes: -5 attack, -4 range, -10 health for cavalry
skirmishers, after discussion with alpha123.
This was SVN commit r15245.