Ballistic projectiles are no longer bouncing when they collide, assuming
they have the correct properties set. These changes move the point that
a projectile's velocity is zeroed during a collision to fix this.
- This is a fix for issue
https://github.com/GarageGames/Torque3D/issues/228
- This fixes sortna() and sortnd() as outlined in the issue.
- This also fixes sortnka() and sortnkd(), as well as the sorting method
that take a console function as a parameter.
- Fix for issue https://github.com/GarageGames/Torque3D/issues/525 This
fix takes into account the skewed view into the world when you have a
projection offset and the ability to see further into the scene at the
edges opposite to the offset.
- SceneCullingState now has two frustum rather than one: a culling
frustum and camera frustum.
- The camera frustum should be referenced when you need the projection
matrix or don't want a skewed frustum.
- The culling frustum should be referenced during any scene culling or
when determining what dynamic geometry to render. It currently skews
itself to take into account any projection offset (automatically
calculated in SceneCullingState constructor).
- When there is no projection offset, the camera frustum and culling
frustum are the same. This usually means any time when not using the
Oculus Rift.
This reverts the change made by
https://github.com/GarageGames/Torque3D/pull/490 It actually goes
further and comments out the Player's buoyancy calculation rather than
just the change in velocity.
Set the default WaterFogData plane distance to be the same as global
bounds. This solves an issue with the connection's control object
mistakenly thinking it is under a water plane in a debug build.
- PostEffect class now offers the current projection offset and target
viewport as shader constants.
- Turbulence postFX now takes the current projection offset into
account.
- Turbulence postFX now clamps itself to the current viewport.
- Turbulence postFX now renders after the glow bin, specifically after
the glow postFX renders. This ensures that it can take advantage of
knowing the current viewport rather than affecting the entire render
target.
During side-by-side rendering the refraction texture needs to be updated
for both the left and right fields. These changes add a new GFXDevice
event type to track when a field is about to be rendered. The
ReflectionManager listens to this new event and ensures that the
refraction texture will be updated if it is referenced by a material.
- Frustum comparison now includes comparing the projection offset.
- Fixes objects that only set the projection matrix if the frustum has
changed during side-by-side rendering, such as the WaterPlane.