Commit graph

225 commits

Author SHA1 Message Date
AzaezelX fad8e12667 take ibl amount into account for translucent opacity 2025-12-13 20:52:36 -06:00
marauder2k7 050d704e77 requirements for windDeformation unified featuer 2025-06-23 02:18:42 +01:00
marauder2k7 ac909e26bd Update featureSet.cpp 2025-06-23 02:18:40 +01:00
marauder2k7 8c7ddb7cf1 Ground work for node editor
Added ability to shader features and shaderGen to create multiple instances of the same feature with the option of calling a static creation function that can take arguments in the form of a struct.

FEATUREMGR now has createFeature to take advantage of this.

The node editor requires this ability as the same node could be used multiple times with different arguments so in its update function we will be calling

```FEATUREMGR->registerFeature(feature_type, (optional default constructor), createFunction);```

then adding it to the feature set with the required arguments to build the shader feature.
```FeatureSet->add(feature_type, index, ParameterStruct);```
2025-06-23 02:18:39 +01:00
Brian Roberts f41cdaaa7e
Merge pull request #1430 from Azaezel/alpha41/GFXRedundancyCleanups
clean up (some) shader variation redundancies
2025-04-02 16:21:57 -05:00
AzaezelX d82e8dbec4 clean up (some) shader variation redundencies
don't need to use macros for the shader textfile hashkeys
several no longer used GFXVertexFormats removed
2025-04-01 18:23:29 -05:00
AzaezelX b92b5b34fd clean up shadergen ambient handling
fallback needs to a) set the same value as elswhere. b) treat uniforms the same. c) exist on both ends to ensure order of ops doesn't mangle things
2025-03-29 14:43:03 -05:00
AzaezelX 56e4484ff6 remove glowbin as it's own render pass 2024-05-30 17:29:42 -05:00
AzaezelX 824b9a9cd5 fix dynamicCubemaps on objects 2024-04-18 13:57:29 -05:00
AzaezelX fe26ffc375 shift capturing from a globalMacro to a sceneRenderstate S32
lets us ditch shader recompilation so that can be done on the fly without hitches, though does cost us a per-shader const for objects and postfx
2024-04-16 13:51:41 -05:00
Brian Roberts 05a083ca6f
Merge pull request #1234 from marauder2k9-torque/virtuals-override
Virtuals override
2024-03-21 10:43:26 -05:00
AzaezelX c337d5a9d2 clang tidy misc fixes
adress mixed || plus && concerns raised
2024-03-18 20:11:44 -05:00
marauder2k7 2b295fb7f0 rest of virtuals removed
virtuals removed and replaced with override where necessary on the rest of the code base, clang-tidy to the rescue.
2024-03-18 18:40:22 +00:00
marauder2k7 efbe5e90f5 virtuals removed
virtuals removed and replaced with override where necessary, clang-tidy to the rescue.
2024-03-18 18:13:00 +00:00
marauder2k7 e6c653c441 warnings cleanup
cleanup and some warning fixes
2024-03-14 08:28:11 +00:00
marauder2k7 808e2f4200 Groundwork for other shaders
Adds the ground work for geometry shaders
Expands shaderData and gfxShader to allow for more shader types

note: when building a GFXShader in source you have to call setShaderStageFile with the shaderStage and the filepath for that stage.

Once we add compute shaders this will become more apparent as compute shaders are a stage of their own and do not require vertex and pixel files whereas other shaders sometimes do.
2024-03-06 13:26:39 +00:00
AzaezelX ad6880ec0d fizzle fix for gl
correct  ShaderFeatureGLSL::getInVpos to more closely match directx outcomes so we can keep using the same math across incudes
2024-02-21 14:16:38 -06:00
AzaezelX 62b6b57405 re-fix vert color swizzle 2023-08-22 21:23:54 -05:00
AzaezelX 3f2113bf7d revert some removals of vert to pixel shader getters to avoid register mismatches.
(cherry picked from commit 1e1e39f4f72ac6d4ce19704f69ba34bbff29d89c)
2023-05-01 17:10:38 -05:00
AzaezelX 0d4221fa59 uninitialized and unused value cleanups
(cherry picked from commit 1f08602cf0ad84409cd8b3520510f9c6ce7d5f9c)
2023-05-01 10:40:02 -05:00
AtomicWalrus 75625dc679 Reverse depth & 32F buffer format
-Adds reversed depth projection model, dramatically increasing depth buffer effective resolution.
-Adds 32F depth 8U stencil format GFXFormatD32FS8X24 (following DX naming conventions). Note this is a 64-bit format, and likely not suitable for mobile platforms. Revert to GFXFormatD24S8 in renderManager.tscript for mobile & "ancient" platforms.
-Corrects alignment of texture type details array.
2023-04-14 20:13:28 -06:00
Johan Mattsson e46e744dc7
Release memory 2023-03-04 21:59:17 +01:00
AzaezelX f5a34308f9 add a docsURL; macro to link a given set of script config vars to git or similar storage urls via clicking on the inspector 2023-01-27 01:13:15 -06:00
Brian Roberts 120691abee
Merge pull request #923 from Azaezel/alpha402/puppies
adds wetness
2022-11-29 12:33:21 -06:00
Jeff Hutchinson 1940becb2d Compilation fixes for C++20 2022-11-28 21:39:06 -05:00
AzaezelX d23ee397e6 adds wetness
cliffsnotes:
   $Core::WetnessTexture = "core/rendering/images/wetMap.png"; //for the influence degree map
probes/skylight have a new canDamp boolean, set to off for probes, on for skylight by default.
:levelinfo has a dampness multiplier (0-1)
kicked up numTextures from 8 to 16 for shaderdata and postfx since that hit the 8 texture-in prior limit, and we've already adopted apis that can handle the higher count
2022-11-21 21:12:23 -06:00
AzaezelX 691eb5f2ba fix computeForwardProbes shadergen gl side 2022-06-14 22:40:40 -05:00
AzaezelX 01ba199dc7 fix vectorlight visualizer varnames 2022-06-12 14:43:26 -05:00
AzaezelX de6ee93159 slim ambient down to vec3, default to premul for translucency 2022-06-07 22:05:47 -05:00
AzaezelX 0e0088cab9 forward lit ambient application. fix GL side IBL overwriting forward lit color.a 2022-06-07 11:18:53 -05:00
JeffR 1acf4b2dae Adjusts engine cleanup ordering on shaderFeatureMgr to avoid periodic crashes on Mac ARM machines
Adds missing disconnect/timeout handling callbacks to the clientServer core module
Adds page refresh function to UINavigation to be able to selectively nudge the current page to refresh its contents if needbe
2022-06-05 01:21:38 -05:00
JeffR cbf758e089 Removes the BGRA inversion when displaying vertex colors on materials 2022-04-25 23:53:40 -05:00
AzaezelX 8dcd74ff18 point baseline fog color at the right target hen in deferred mode 2022-03-09 18:21:47 -06:00
JeffR e04f844240 Scaling correction to probes in deferred mode to improve parallax adjustment
Ensure that probes are masked to be rendered during bake passes so they can contribute during a bake allowing multibakes
Adjusted order of the connect data for the forward shaders to fix a mis-port issue
2022-02-13 19:24:01 -06:00
JeffR c1a88ec423 Complied connect var data in GL to D3D for the wsPosition
Made the use of ints for the cubemapIdx in the shaders consistent
2022-02-12 17:32:30 -06:00
JeffR 79eebdd5f3 Cleaned and repacked work to update the probe bin and reflection probe behavior to clean and standardize it. 2022-02-12 15:53:40 -06:00
AzaezelX 8685173207 typofix 2021-10-27 16:01:37 -05:00
AzaezelX 42bc6fa358 differentiate forward lit and deferred ibl vars
since we're not currently using the same arrays et al for the whole pass, need to make sure those don't fight
2021-10-26 12:32:37 -05:00
AzaezelX a05c83493e adress gl spotlights disapearing for deferred
It was mixing vars up between it and forward. resolved by prefixing the forward vars with "in" as the rest are, as well as pointing the val at the const String ShaderGenVars::lightSpotParams("$inlightSpotParams");
2021-10-21 22:08:56 -05:00
AzaezelX f7cf1c020c inject getworldtotangent and getworldnormal to ensure var order 2021-10-09 18:20:57 -05:00
Jeff Hutchinson 24bf807713 various shadergen fixes. 2021-10-06 21:53:26 -04:00
AzaezelX 42e90ad3fb RTLightingFeat work.
1) we do *not* in fact want to early out in the presence of MFT_ImposterVert. it mangles the position-send.
2) dx sucessfuly handles the    if ( !fd.features[MFT_NormalMap] ) case, so use the same for gl
2021-10-05 14:46:37 -05:00
AzaezelX 661a192e87 orderfix for RTLightingFeatHLSL vert vs pixel shader. the order needs to match, same as network comunicating 2021-10-03 21:53:16 -05:00
AzaezelX a1117b1c41 add getInWorldNormal method glsl side 2021-10-03 21:51:40 -05:00
Jeff Hutchinson e784b0140c Let's fix the texcoord alignment for RT Lighting. 2021-09-22 21:41:38 -04:00
AzaezelX 8ce207561e revert a bit causing crashes on certain 'nix boxes. 2021-09-20 16:56:53 -05:00
AzaezelX 21c17d0ed1 cleanups for shadergen and the visibility feature
math fixes, feature inclusion removal. will still need to circle back on why the crosshatch.. isn't
2021-09-17 01:24:20 -05:00
Jeff Hutchinson 6e072dbf91 Merge branch 'Preview4_0_DevHead' into tsneo 2021-08-29 22:28:42 -04:00
AzaezelX 2287c28d32 be clear where we're referencing gbuffer render targets 2021-08-28 17:21:45 -05:00
Jeff Hutchinson 717c7acca9 Merge remote-tracking branch 'devhead/Preview4_0' into tsneo
# Conflicts:
#	Templates/BaseGame/game/data/ui/guis/loadingGui.gui
#	Templates/BaseGame/game/data/ui/guis/mainMenu.gui
#	Templates/BaseGame/game/tools/MainEditor/guis/MainEditorWindow.gui
#	Templates/BaseGame/game/tools/assetBrowser/guis/assetPreviewButtonsTemplate.gui
#	Templates/BaseGame/game/tools/forestEditor/brushes.tscript
2021-08-13 20:14:39 -04:00