Commit graph

547 commits

Author SHA1 Message Date
Areloch
b19a4b22c8 Implementation of reflection and skylight probes.
Moves lighting math to the diffuse/specular two-channel logic.
2018-09-16 22:15:07 -05:00
Areloch
1f7cf55204 Add cubemap arrays, as well as control for generation of MIPs on texture targets. 2018-09-16 18:19:04 -05:00
Areloch
0c3fc59ccc Image format code tweaks. 2018-09-16 17:54:21 -05:00
Areloch
b4a1d18f42 Core implementation of Physical Based Rendering. 2018-09-15 20:19:57 -05:00
Azaezel
ae5fce6169 alternative to #2268 : remove secondary profiling 2018-07-27 22:00:49 -05:00
Areloch
4cb701b0c3 Merge pull request #2247 from rextimmy/d3d11_tex_lock_fix
Corrects a problem with the D3D11 texture lock/unlock mechanism
2018-07-12 15:17:49 -05:00
rextimmy
a48b70d5b1 d3d11 copyToBmp fix for new lock/unlock function 2018-07-10 14:13:22 +10:00
Areloch
703ac27cf2 Merge pull request #2265 from OTHGMars/vmParseFromString
Fix for bug in GFXVideoMode::parseFromString()
2018-07-09 13:56:12 -05:00
OTHGMars
bab3d9d5f3 Fix for bug in GFXVideoMode::parseFromString()
When testing PR #2264 I discovered that GFXVideoMode::parseFromString() will never assign false to the fullScreen value. That value must be initialized to false going in. I found it hard to believe that that could be the case and not have caused a problem before now, so I dropped:
```c++
   GFXVideoMode vmTest = GFXInit::getDesktopResolution();
   vmTest.fullScreen = true;
   vmTest.parseFromString("800 600 false 32 60");
   Con::printf("%s becomes %s", "800 600 false 32 60", vmTest.toString().c_str());
```
into the end of _GFXInitGetInitialRes() and the output string is:
800 600 false 32 60 becomes 800 600 true 32 60 0

None of the values get assigned by the macro [here](https://github.com/GarageGames/Torque3D/blob/development/Engine/source/gfx/gfxStructs.cpp#L46-L48) if their function evaluates to zero or the token is missing from the string. This commit corrects that for the boolean case to only skip the assignment if the string token is not found.
2018-07-07 02:23:59 -04:00
chaigler
38237bfb62 _GFXInitGetInitialRes() cleanup
Removes unnecessary code that sets default video mode params. This is
already handled by the GFXVideoMode constructor. The settings are also
immediately overwritten by vm.parseFromString().

Resolves #740
2018-07-05 14:19:05 -04:00
Areloch
5a1af9ccd7 Merge pull request #2236 from Azaezel/memberMess
cleans up all 'hides' warnings (at time of writing)
2018-05-30 20:36:43 -05:00
rextimmy
96c71a4d5d Corrects a problem with the D3D11 texture lock/unlock mechanism 2018-04-21 18:19:17 +10:00
Lukas Joergensen
2bbc716db6 Eliminate unnecessary uses of ConsoleFunction 2018-04-17 21:41:29 +02:00
Lukas Joergensen
6be736ff85 Eliminate DefineConsoleStaticMethod 2018-04-17 21:03:16 +02:00
Lukas Joergensen
76908eae3c Eliminate DefineConsoleMethod 2018-04-17 21:01:50 +02:00
Lukas Joergensen
e718841467 Eliminate DefineConsoleFunction 2018-04-17 20:54:08 +02:00
Azaezel
cbce2ee805 Merge branch 'development' of https://github.com/GarageGames/Torque3D into memberMess
# Conflicts:
#	Engine/source/console/consoleFunctions.cpp
2018-03-28 15:42:34 -05:00
Azaezel
96093bd3ec augmentation to drawArrow to allow one to explicitly define a radius. 2018-03-27 14:57:23 -05:00
Azaezel
2580e3329c gfxDrawutil, gizmo shadowvar cleanups 2018-03-15 20:44:13 -05:00
Glenn Smith
47d5b6ead7 As suggested, extract strlen calls from sizes into variables so it isn't called twice 2018-03-08 20:59:40 -05:00
Glenn Smith
79c34c68db Use strncpy instead of strcpy because again, buffer overflows 2018-03-06 02:35:33 -05:00
Glenn Smith
7769da9434 Use strncat instead of strcat to prevent some buffer overflows 2018-03-06 00:48:44 -05:00
Azaezel
8bc4858fa3 companion to #2203: corrects a couple backend profile assignment mismatches found with @rextimmys debug spew 2018-02-13 02:51:28 -06:00
Areloch
45879b67ff Loader files didn't properly get deleted with the libmng and lungif library removal. 2018-01-10 09:49:28 -06:00
Richard Marrevee
592e443c77 Update gfxD3D11Device.cpp 2017-12-22 17:11:31 +01:00
Areloch
217df073b4 Merge pull request #2057 from OTHGMars/GFXFormatStrs
Adds missing GFX Texture format strings
2017-09-21 16:56:15 -05:00
Areloch
84ec076f97 Merge pull request #2086 from Azaezel/ProfileProblemPing
textureProfile conflict reporting
2017-09-14 22:19:01 -05:00
Azaezel
f70e11c7d7 from@rextimmy: reports the same texture used with 2 conflicting textureProfiles (flipping back and forth causes duplicates) 2017-09-14 13:28:13 -05:00
rextimmy
54970b0ad6 Corrects OpenGL projection matrix
Corrects OpenGL glPolygonOffset values
Corrects Direct3D11 DepthBias values
2017-08-25 13:13:47 +10:00
rextimmy
5f69ab1264 Fix potential crash with D3D11 2017-08-12 19:24:09 +10:00
Areloch
18c60df4b2 Merge pull request #2055 from Areloch/CommonShaderPath_Improvement
Reworks the $Core::commonShaderPath variable usage
2017-08-04 00:58:34 -05:00
Areloch
8a0074eb1d Merge pull request #2041 from Azaezel/clearTextureStateImmediate
method to make sure we're not getting pixel shader inputs mixed with …
2017-08-04 00:58:13 -05:00
OTHGMars
d8eef376c8 Adds missing GFX Texture format strings
This commit eliminates 5 warnings output from VALIDATE_LOOKUPTABLE here: https://github.com/GarageGames/Torque3D/blob/development/Engine/source/gfx/gfxStringEnumTranslate.cpp#L167
And prevents a fatal error here: https://github.com/GarageGames/Torque3D/blob/development/Engine/source/gfx/gfxTextureManager.cpp#L1371
that occurs when called from GuiOffscreenCanvas::_setupTargets() for an OpenVROverlay because GFXFormatR8G8B8A8_LINEAR_FORCE  is used.
2017-07-27 16:49:02 -04:00
Areloch
8c807485b1 Reworks the $Core::commonShaderPath variable usage to be a static variable in ShaderGen for efficiency(only one getVariable when shadergen is initialized), as well as implements the ability to set a default value, and ensures that it tries to set a path even if the pref variable is missing which is important for ported projects from older builds. 2017-07-24 00:40:27 -05:00
Azaezel
181f95510a method to make sure we're not getting pixel shader inputs mixed with outputs. 2017-07-09 15:15:30 -05:00
rextimmy
a2fa9838e5 DDS cubemap support 2017-07-07 15:59:02 +10:00
Areloch
e2f98f2641 Includes the D3D feature level detection. 2017-07-05 22:27:37 -05:00
Areloch
25686ed4be Implementation of sRGB image support. Overhauls the linearization setup to utilize the sRGB image types, as well as refactors the use of ColorF and ColorI to be properly internally consistent. ColorIs are used only for front-facing/editing/UI settings, and ColorFs, now renamed to LinearColorF to reduce confusion of purpose, are used for color info in the engine itself. This avoids confusing and expensive conversions back and forth between types and avoids botches with linearity. Majority work done by @rextimmy 2017-06-23 11:36:20 -05:00
Areloch
edd1e0a270 Removes Direct3D9 functionality. 2017-05-28 16:51:31 -05:00
OTHGMars
5349bf226b Prevents GFXDrawUtil::drawTextN() from drawing one character more than requested if in_string has more than n characters. 2017-05-12 18:54:01 -04:00
Areloch
124ecb2fe0 Merge pull request #1984 from FooBarbarians/fix-1912
Reordering initialization methods #1912
2017-04-26 01:11:51 -05:00
Areloch
0f2819049b Merge pull request #1979 from Azaezel/purdyPitureProfiler
adds profiling to the various gbitmap loaders*
2017-04-26 01:01:54 -05:00
Masquara
15f67015d3 Reordering initialization methods #1912 2017-04-19 14:02:45 -04:00
Azaezel
66c7173fda adds profiling to the various gbitmap loaders*
*note, DDS bypasses the gbitmap method chain in question.
2017-04-10 21:43:38 -05:00
Areloch
ed14b6fced Removes bits of code and includes that are based on old 360, xbox and PS3 flags that are no longer needed. 2017-04-08 20:30:57 -05:00
Thomas "elfprince13" Dickerson
9fbea728d7 Merge branch 'development' of github.com:GarageGames/Torque3D 2017-03-07 20:08:17 -05:00
Thomas "elfprince13" Dickerson
849a1c1eb1 merged numerous changes from upstream 2017-03-03 21:17:07 -05:00
Areloch
1ed8b05169 Initial implementation of the new Base Game Template and some starting modules.
This makes some tweaks to the engine to support this, specifically, it tweaks the hardcoded shaderpaths to defer to a pref variable, so none of the shader paths are hardcoded.

Also tweaks how post effects read in texture files, removing a bizzare filepath interpretation choice, where if the file path didn't start with "/" it forcefully appended the script's file path. This made it impossible to have images not in the same dir as the script file defining the post effect.

This was changed and the existing template's post effects tweaked for now to just add "./" to those few paths impacted, as well as the perf vars to support the non-hardcoded shader paths in the engine.
2017-02-24 02:40:56 -06:00
Areloch
501b55d939 Adds a check to the record movie call so that it only happens in Release mode, to avoid crash issues with theora and debug mode. 2017-01-30 20:36:48 -06:00
Thomas Dickerson
6963d35145 Merge branch 'development' into stringTableEmptyString 2017-01-24 12:35:34 -05:00