Torque3D/Engine/source/math
Azaezel 2753f562e8 shadow caching
SPECIAL NOTE: highly suggest https://github.com/GarageGames/Torque3D/pull/1441 or a variation thereof to prevent debug spew and false-postives for occlusion results.

With significant research, development and prototyping assistance from both @andr3wmac (shaders and partial hook work), and @LuisAntonRebollo (additional culling)

System operates as follows:
1) materials are given an additional castDynamicShadows boolean entry. (Default at time of writing is true by request. Personal usage at time of writing defaults to false. value is default-initialized in materialDefinition.cpp. script/gui exposed)
2) lights are given a staticRefreshFreq and dynamicRefreshFreq (in milliseconds). script/gui exposed
3) materials are (effectively) sorted into dynamic and static shadowmap render lists based on flag. (see shadowMapPass.cpp)
4) initial shadowmaps are generated for each light and 'list'.
5) as each refreshFreq times out, the relevant shadowmap for a given light is refreshed.

Special notes:
dynamicRefreshFreq for all lights is set to a (script exposed) 8MS refresh timer.
StaticRefreshFreq for the lions share of lights defaults to 250 MS (1/4 of a second)
scattersky's embedded light, which is intended to operate in a mobile manner, defaults to 8
to reiterate, these are all customizable per-light via script/inspector gui in the case of alternate project needs.
2015-10-13 18:12:19 -05:00
..
test proper fix for https://github.com/GarageGames/Torque3D/issues/1197 2015-02-15 15:20:32 -06:00
util Oculus VR DK2 Support 2015-05-06 23:09:51 +01:00
mAngAxis.cpp Engine directory for ticket #1 2012-09-19 11:15:01 -04:00
mAngAxis.h Engine directory for ticket #1 2012-09-19 11:15:01 -04:00
mathIO.h Engine directory for ticket #1 2012-09-19 11:15:01 -04:00
mathTypes.cpp Merge pull request #1283 from Azaezel/randiiiiiii 2015-04-26 11:27:03 +10:00
mathTypes.h New console type for Point3I 2013-01-22 17:37:57 -05:00
mathUtils.cpp shadow caching 2015-10-13 18:12:19 -05:00
mathUtils.h shadow caching 2015-10-13 18:12:19 -05:00
mBox.cpp Simple pass over the codebase to standardize the platform types. 2013-08-04 16:26:01 -05:00
mBox.h Fixed Box3F::overlap 2014-02-08 23:49:20 +11:00
mBoxBase.h Engine directory for ticket #1 2012-09-19 11:15:01 -04:00
mConsoleFunctions.cpp Fixes after feedback from Luis. 2014-12-23 18:48:02 +11:00
mConstants.h Engine directory for ticket #1 2012-09-19 11:15:01 -04:00
mEase.cpp Engine directory for ticket #1 2012-09-19 11:15:01 -04:00
mEase.h Issue found with PVS-Studio: 2015-07-13 23:45:55 -05:00
mIntersector.h Engine directory for ticket #1 2012-09-19 11:15:01 -04:00
mMath.h Engine directory for ticket #1 2012-09-19 11:15:01 -04:00
mMath_ASM.asm Engine directory for ticket #1 2012-09-19 11:15:01 -04:00
mMath_C.cpp Engine directory for ticket #1 2012-09-19 11:15:01 -04:00
mMathAltivec.cpp Update for float, double and unsigned char, unsigned short, short, etc. char was left alone: read why here http://msdn.microsoft.com/en-us/library/cc953fe1.aspx 2013-08-04 16:58:59 -05:00
mMathAMD.cpp Engine directory for ticket #1 2012-09-19 11:15:01 -04:00
mMathAMD_ASM.asm Engine directory for ticket #1 2012-09-19 11:15:01 -04:00
mMathFn.h Replaced a ton of ConsoleMethods with the DefineConsoleMethod Macro. 2014-11-03 22:42:51 -05:00
mMathSSE.cpp Engine directory for ticket #1 2012-09-19 11:15:01 -04:00
mMathSSE_ASM.asm Engine directory for ticket #1 2012-09-19 11:15:01 -04:00
mMatrix.cpp Fixed angle conversion issues 2015-02-03 12:16:06 -08:00
mMatrix.h C4458 declaration hides class member. 2015-07-23 20:13:04 +10:00
mOrientedBox.cpp Fix for Issue #136 for Zoning Bug 2012-11-08 18:19:33 -05:00
mOrientedBox.h Engine directory for ticket #1 2012-09-19 11:15:01 -04:00
mPlane.cpp Engine directory for ticket #1 2012-09-19 11:15:01 -04:00
mPlane.h Little optimization in mPlane, originally by Winterleaf 2014-11-05 21:17:12 +11:00
mPlaneSet.h Fixed Return value from false to 0 (which is U32) 2014-11-05 21:13:01 +11:00
mPlaneTransformer.cpp Engine directory for ticket #1 2012-09-19 11:15:01 -04:00
mPlaneTransformer.h Engine directory for ticket #1 2012-09-19 11:15:01 -04:00
mPoint.cpp Engine directory for ticket #1 2012-09-19 11:15:01 -04:00
mPoint2.h shadow caching 2015-10-13 18:12:19 -05:00
mPoint3.h Fixed spacing and optimized 2015-02-12 08:31:54 -08:00
mPoint4.h zero() method added to all point classes 2013-04-09 11:38:48 -04:00
mPolyhedron.cpp Engine directory for ticket #1 2012-09-19 11:15:01 -04:00
mPolyhedron.h Simple pass over the codebase to standardize the platform types. 2013-08-04 16:26:01 -05:00
mPolyhedron.impl.h Add missing include guards to some headers 2015-01-06 00:42:33 -05:00
mQuadPatch.cpp Simple pass over the codebase to standardize the platform types. 2013-08-04 16:26:01 -05:00
mQuadPatch.h Simple pass over the codebase to standardize the platform types. 2013-08-04 16:26:01 -05:00
mQuat.cpp Optimized code 2015-02-12 11:00:25 -08:00
mQuat.h Fixed angle conversion issues 2015-02-03 12:16:06 -08:00
mRandom.cpp U32 MRandomLCG::randI() was using longs 2015-09-09 15:22:19 -05:00
mRandom.h U32 MRandomLCG::randI() was using longs 2015-09-09 15:22:19 -05:00
mRandomDeck.h Engine directory for ticket #1 2012-09-19 11:15:01 -04:00
mRandomSet.h Engine directory for ticket #1 2012-09-19 11:15:01 -04:00
mRect.cpp Engine directory for ticket #1 2012-09-19 11:15:01 -04:00
mRect.h Fix for RectF::intersectTriangle() 2013-11-06 14:17:44 -05:00
mSilhouetteExtractor.h Source changes needed for Linux build. 2012-09-23 15:31:56 +04:00
mSolver.cpp Engine directory for ticket #1 2012-09-19 11:15:01 -04:00
mSphere.cpp Addresses roughly half of the C4189 errors though the following methodologies: 2015-07-29 03:03:27 -05:00
mSphere.h Engine directory for ticket #1 2012-09-19 11:15:01 -04:00
mSplinePatch.cpp Simple pass over the codebase to standardize the platform types. 2013-08-04 16:26:01 -05:00
mSplinePatch.h Simple pass over the codebase to standardize the platform types. 2013-08-04 16:26:01 -05:00
mTransform.h Engine directory for ticket #1 2012-09-19 11:15:01 -04:00