Commit graph

104 commits

Author SHA1 Message Date
Azaezel 300d9eefbf ease member vars tagged as member vars 2018-03-14 15:45:45 -05:00
Azaezel d979cf9d2d PolyhedronVectorData core membervar cleanups 2018-03-14 15:18:00 -05:00
Azaezel d57287cf75 adds an mWrap and mWrapF method for cycling values to within a given range.
examples of usage would be say, keeping a rotation within 360 degrees, or hitting a tile boundary and resetting the offset
2018-01-16 13:40:09 -06:00
Areloch 0fde97f254 Corrects the documentation. 2017-10-17 21:50:53 -05:00
Areloch 1407f3953c Tweaks the asMatrixF for RotationF, as well as exposes additional console methods for rotation manipulation 2017-10-15 03:41:26 -05:00
rextimmy 54970b0ad6 Corrects OpenGL projection matrix
Corrects OpenGL glPolygonOffset values
Corrects Direct3D11 DepthBias values
2017-08-25 13:13:47 +10:00
Areloch c2c34cdd5d Adds the getSignedAngleBetweenVectors function, which is like the existing getAngleBetweenVectors, but will returned a signed angle value, which helps to inform the full 360 angle, rather than the 'nearest 180'. 2017-02-19 23:00:54 -06:00
rextimmy 11532e10cc Add log2 function to mMathFn.h 2017-01-16 15:35:25 +10:00
Areloch 31ed509c1c Adds some helpful utility math functions. 2016-11-28 22:42:29 -06:00
Areloch 1a851f167d Merge pull request #1807 from Azaezel/boxBaseBorked
clang catch: boxBase's getPlanePointIndex method wasn't returning values in all cases.
2016-10-24 01:28:25 -05:00
Areloch 6cc7bcd2e0 Merge pull request #1805 from Azaezel/startRightEndRight
clang: constructor initialization order
2016-10-19 08:39:12 -05:00
Areloch 65f25cb0e6 Merge pull request #1796 from Azaezel/notSoEasy
retooled circular ease methods
2016-10-18 22:41:31 -05:00
Areloch 121d65215e Tweaks any enums that use uint_max values so that they have hard types to avoid any compiler kerfluffles with C++11 value narrowing, specifically pertaining to clang. 2016-10-17 01:00:12 -05:00
Azaezel 8d4dd14144 clang catch: boxBase's getPlanePointIndex method wasn't returning values in all cases.
assertfatal doesn't do anything in release builds, so also added a failure enum.
2016-10-16 15:31:56 -05:00
Azaezel fbfd3ed8ed clang: constructor initialization order
while not a major issue per-se, the sheer number of times the engine has to jump back in memory and backfill data in a given class can add up. First run of... many.,
2016-10-14 18:16:55 -05:00
Azaezel 2f5321ddfb tabs/space + transcription typofix 2016-10-14 13:40:53 -05:00
Azaezel d50762cbef self modifying variables made clang unhappy. retooled circular ease methods
basis: http://gizma.com/easing/#circ1
2016-10-14 13:00:27 -05:00
RexTimmy dd64004eaf MacOS platform support. 2016-09-28 11:09:48 +10:00
Areloch 7e4095d610 Merge pull request #1688 from jamesu/dx11_openvr_pr
Basic OpenVR Support code
2016-09-14 00:24:20 -05:00
James Urquhart c6d2456a7c Fix lens flares in VR 2016-09-11 22:42:42 +01:00
James Urquhart 14628e3937 Fix setNearFarDist for off-center projections 2016-09-11 22:42:42 +01:00
Marc Chapman 00cf5ab577 Added x64 check for SSE Intrinsic functions 2016-09-02 05:10:46 +01:00
Duion 1a405264c2 changes "Rotation" instead of "rotation" #1702
Changes back "Rotation =" values in mission files to the old "rotation =" since all other values are also lowercase.
2016-07-31 19:40:06 +02:00
Areloch 8a7159c00e Fixes the drawUtil rendering of polyhedrons by correcting the index ordering to work with triangleStrip as opposed to Fan. 2016-05-22 23:51:58 -05:00
Areloch 65f51a89d8 Merge pull request #1595 from Areloch/EpoxyProjectMatrixFix
Rolls back OGL Projection correction.
2016-05-20 00:23:45 -05:00
Areloch c1f02c05e1 Adds some console methods to the non-class namespace Rotation for some convenient utility functions for dealing with rotations. 2016-05-16 16:03:24 -05:00
Areloch 8568ed19be Merge branch 'RotationFPR_Cleaned' of https://github.com/Areloch/Torque3D into development 2016-05-16 15:49:54 -05:00
James Urquhart 49a735e051 Fix axis check in Box3F::extend method 2016-05-13 12:09:40 +01:00
Areloch 1b47bdd972 Git apparently forgot to commit ALL the changes. 2016-05-12 23:49:06 -05:00
Areloch 383d27f2ec The class is designed as a general-purpose rotation/orientation class to make it easy to work with rotations and swap between math types as easily as possible. 2016-05-12 00:45:16 -05:00
Areloch bc9033da2e Rolls back OGL Projection correction.
Epoxy looks to handle the projection depth range so it behaves more like D3D, so this change was doubling up and causing problems.
2016-05-06 16:45:18 -05:00
Azaezel 223e9a8264 corrects projection matricies for opengl 2016-04-05 20:36:13 -05:00
Anis A. Hireche b3662d801a Merge remote-tracking branch 'refs/remotes/origin/development' into pr/1334
# Conflicts resolved:
#	Engine/source/console/consoleFunctions.cpp
2016-02-26 21:58:01 +01:00
Anis 794f1b9536 Merge pull request #1532 from GarageGames/pr/1143
[CLONE] More consolefunctions #1143
2016-02-26 18:57:49 +01:00
Anis A. Hireche 0fb62de4b8 restored old signature of mRound as it's used from scripts. 2016-02-26 18:41:29 +01:00
Azaezel 7a60056365 Merge branch 'ColorPickerAdvanced' of https://github.com/Azaezel/Torque3D into ColorPickerAdvanced 2016-02-21 16:07:51 -06:00
Anis 2a1f81d3aa removed tabs 2016-02-21 22:48:10 +01:00
Azaezel ca2ffea6cd Merge branch 'development' of https://github.com/GarageGames/Torque3D into ColorPickerAdvanced 2016-02-21 15:30:54 -06:00
Anis 664f6c0639 Merge pull request #1518 from Azaezel/mathUtilsMangle
http://stackoverflow.com/questions/8461832/explicit-qualification-in-
2016-02-16 19:19:19 +01:00
Azaezel f8c4dd9d1d http://stackoverflow.com/questions/8461832/explicit-qualification-in-declaration 2016-02-15 19:08:03 -06:00
Anis 168a2fe029 Merge pull request #1419 from irei1as/patch-1
mQuat.h change to fix QuatF::angleBetween
2016-02-16 00:22:39 +01:00
irei1as 6891d348af Update mQuat.h 2016-02-15 18:50:18 +01:00
irei1as 39613c0d87 Optimized
You're right. If the normalized quaternions are in a variable or something for normal uses it's just a waste to force the change hidden inside again.
2016-02-15 18:43:56 +01:00
Areloch 6235f63deb Merge pull request #1395 from Azaezel/AssertDivNULL
credit to @MusicMonkey5555 for spotting. asserts for Div/NULLs
2016-01-16 17:53:00 -06:00
Areloch 1a009d6dd3 Merge pull request #1443 from Areloch/TAM_Implementation
TAML, Assets and Modules implementation
2015-11-12 23:54:27 -06:00
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
Areloch 7a3b40a86d Initial Implementation of the Taml, Asset and Modules systems.
Only has example and shape assets currently.
2015-10-13 15:19:36 -05:00
irei1as 1733ecc315 Updated normalize()
It seems normalize() already changes the quaternion so the asignation is not needed.
2015-09-29 16:13:01 +02:00
irei1as 3630f97ab1 mQuat.h change to fix QuatF::angleBetween
The old version doesn't have that 2.0f in the return that seems to be needed.
Also added normalizing inside so it can be used for not-normalized quaternions too.
2015-09-22 19:37:42 +02:00
Azaezel 58ae331609 U32 MRandomLCG::randI() was using longs
32 and 64 bit windows can handle that. 64 bit linux no likey mixing longs and ints.
2015-09-09 15:22:19 -05:00