Commit graph

3755 commits

Author SHA1 Message Date
AzaezelX
8d2d357948 invert surface.NdotV contribution for brdf texture lookup in keeping with authoring tool outputs 2019-05-05 20:09:35 -05:00
AzaezelX
6957e69d83 normal orientation debug lines (remmed) 2019-05-05 18:35:08 -05:00
AzaezelX
d1b24af399 go back to using raw wsNormal with a few additional prep-lines for if that hasn't been made a var for that shader yet 2019-05-05 18:34:39 -05:00
AzaezelX
8a295b5b1c remed out stray code cleanups, added more remmed out code for referencing the way defered calculates bbminmax (as a percentage of the probes actual scale so folks can just copypaste most times) 2019-05-05 18:30:40 -05:00
AzaezelX
bd667b5bf5 Merge branch 'PBR_ProbeArrayGLWIP' of https://github.com/Areloch/Torque3D into PBR_ProbeArrayGLWIP 2019-05-03 00:40:57 -05:00
Areloch
9d36d10eea uncommented a bit that was done up for debugging/testing 2019-05-03 00:30:05 -05:00
AzaezelX
6f963ff2a8 Merge branch 'PBR_ProbeArrayGLWIP' of https://github.com/Areloch/Torque3D into PBR_ProbeArrayGLWIP 2019-05-03 00:21:01 -05:00
Areloch
f1a355c04c WIP of forward probe scoring. 2019-05-03 00:03:58 -05:00
AzaezelX
7cfa12633b simgroup to scene conversions 2019-05-02 03:15:42 -05:00
Areloch
25f27318f7 Added fetch for BRDF texture for forward rendering use, re-enabled brdf logic in the lighting shader and got the probe arrays properly sampling into forward as well.
TODO: core::rendering pref on the BRDF texture instead of hardcode path, add best-pick logic for forward probes and double-check ogl forward is playing nice.
2019-05-02 00:05:12 -05:00
AzaezelX
97ec99f704 Merge branch 'development' of https://github.com/GarageGames/Torque3D into PBR_ProbeArrayGLWIP
# Conflicts:
#	Engine/source/gfx/D3D11/gfxD3D11Device.cpp
#	Engine/source/lighting/lightManager.cpp
#	Templates/Full/game/levels/Empty Room.mis
#	Templates/Full/game/levels/Empty Terrain.mis
2019-05-01 23:18:31 -05:00
AzaezelX
2b997d2d9c nonbreaking 'specularcolor' to 'pbrConfig' var conversion. (TODO: specularMap entries) 2019-04-29 19:40:22 -05:00
AzaezelX
cd937fca30 shifted forward lit probe lighting to pre-rt lighting in keeping with the deferred methodologies. in diong so, also needed to add a vertex feature for in/out tangent space normals detection. also in keeping with the fact we sample the deferred albedo result-buffer, fed the createForwardSurface the output target so that can take color multiplication et al instead of just raw albedo 2019-04-29 17:39:47 -05:00
AzaezelX
a67e6d109c Merge branch 'PBR_ProbeArrayGLWIP' of https://github.com/Areloch/Torque3D into PBR_ProbeArrayGLWIP 2019-04-29 00:32:40 -05:00
Areloch
19a1237dcb Ongoing fiddling with correcting the forward render behavior. 2019-04-29 00:07:38 -05:00
AzaezelX
2ec197c38c Merge branch 'PBR_ProbeArrayGLWIP' of https://github.com/Areloch/Torque3D into PBR_ProbeArrayGLWIP 2019-04-28 20:37:03 -05:00
Areloch
240e940572 random testing bits trying to isolate remaining forward issues. 2019-04-28 18:32:23 -05:00
AzaezelX
636a83e155 gl conversionwork - forward lit variant. do note, crashs with
`Engine\source\gfx\gfxDevice.cpp(837,0): {Fatal} - GFXDevice::setTexture - out of range stage! -1>16` though the shaders themselves are now in a compling state (ostensibly)
2019-04-28 06:24:19 -05:00
Areloch
337a12b084 Make the gl cubemap array init that takes a pointer list of cubemaps actually have parity to the updateTexture gl calls(aka, actually works). 2019-04-27 03:09:01 -05:00
AzaezelX
129c59e8bb we likely don't want to be overwriting that set of cubemap array registers for every forward lit object instance 2019-04-26 13:33:28 -05:00
AzaezelX
413d756b80 1) bumped bytesPerTexel on up to 8 and got rid of the explicit fillin
2) fed glTexSubImage3D GL_RGBA instead of a second GFXGLTextureType[mFormat]. this tells it what order colors come in, not what size
3)for safeties sake, skipped out on updatetexture if the fed cubemap isn't initialized yet
2019-04-26 13:32:23 -05:00
Areloch
871fdf3664 ongoing WIP of openGL cubemap arrays.
Got the initialization of the arrays to work, but currently fill the supplied cubemaps with flat 1 values(effectively filling with garbage) as sampling from the cubemap to feed to the array leads to memory/heap corruption.
2019-04-26 01:57:07 -05:00
AzaezelX
e6a14514e0 tweaked the updating behavior in the probe manager so calling updateProbes just flags a ProbesDirty bool, which is used to kick the update of the static parameters when the bin's render() is called
that way if multiple probes get updated at once, we don't hit the update loop for each one, which is obviously silly
also fixed the 'probes' cubemaps aren't ready until you nudge them'
turns out when we were setting out global var which we used for the irradiance and prefilter cubemap paths, it was being set AFTER the probes got loaded
so it was using an invalid path to look up the cubemaps
-@areloch
2019-04-22 15:39:55 -05:00
Areloch
7daa243057
Merge pull request #2345 from Areloch/FullSceneFixaroo
Full template Scene conversion
2019-04-20 01:46:07 -05:00
Areloch
534746b8fe
Merge pull request #2354 from Areloch/isRenderEnabledOptimization
Modification of #2145
2019-04-20 01:45:27 -05:00
AzaezelX
bf10d48287 specify lod (mip) 0 for the brdf texture 2019-04-18 19:31:33 -05:00
AzaezelX
f871b965cd specify samplerstates for all input textures to resolve odd 'edgeing' effect on skylights 2019-04-18 19:30:50 -05:00
AzaezelX
63bc2215fd no point in resetting effectiveprobecount or mipcount in the compute4probes method. the latter is going to remain a fixed global var to support the cubemap arrays while the latter isn't even used by forward lit (though it likely should be, rather than trying to cook up 2 bound vectors) 2019-04-16 11:47:21 -05:00
AzaezelX
3c57954308 cleanups 2019-04-16 09:36:00 -05:00
AzaezelX
28f55b9cc8 Merge branch 'PBR_ProbeArrayForward' into PBR_ProbeArrayGLWIP
# Conflicts:
#	Engine/source/renderInstance/renderProbeMgr.cpp
2019-04-16 09:34:01 -05:00
Areloch
95962cbcbc GL work 2019-04-15 23:11:18 -05:00
AzaezelX
b79cff7530 resource count and type sync with the computeForwardProbes call-insertion for shadergen. probly going to need to cook up a cubearray type 2019-04-11 12:31:15 -05:00
AzaezelX
7f2c57f18b use the right recreation when lacking a composite map (still need to do up matinfo flags) 2019-04-11 12:30:03 -05:00
AzaezelX
33b3798bc2 removed extraneous finalcolor set mangling specular input 2019-04-10 17:47:56 -05:00
AzaezelX
c3ea3593ea typofix+ *add* computeForwardProbes to replicate the stateblock used in deferred 2019-04-10 17:46:42 -05:00
AzaezelX
8be413d53a stray var killoffs 2019-04-10 17:44:54 -05:00
AzaezelX
4730dfcf3f leverage the macros for a bit more legibility 2019-04-10 14:14:10 -05:00
AzaezelX
dac25f1e2c conform some of the "specularColor" entries (TODO: matinfo flags, like emissive/glow ect) 2019-04-10 12:56:20 -05:00
AzaezelX
07827b8032 cleanup duplicate var, and constructor-init skylight shaderconsts 2019-04-10 12:54:46 -05:00
AzaezelX
b64b84b843 defaults for diffusecolor, specularcolor (reminder todo: shift that to composite) and normal for createForwardSurface 2019-04-10 11:48:22 -05:00
AzaezelX
ce4220ad55 enhanced stage check 2019-04-10 11:43:45 -05:00
Areloch
2d2f66f388 Modification of #2145
Original PR broke class-type visibility toggles in the editor, so this adjustment on the same setup keeps the optimized path, but also enables the original class-based render toggle if the editor is open.
(Also adds TORQUE_TOOLS check to have it be even leaner if the project doesn't have tool support at all)
2019-04-08 10:20:13 -05:00
Areloch
ec9e8c3563 Majority of forward work. Some state/register count issues and further testing required.
Also requires proper binding of forward probe values, as well as scoring probes for forward selection.
2019-04-07 23:57:05 -05:00
Areloch
861308ae57
Merge pull request #2352 from Azaezel/lightCullKill
adress  #2344
2019-04-06 15:37:53 -05:00
Azaezel
ae8bc232a2 surpress nonrendered lights killoff method till we've time to revisit that 2019-04-04 20:56:57 -05:00
Areloch
283348f7bc Cleanup/consolidation of shader logic. moved the common methods over to lighting.hlsl
Did all the setup work to feed data for forward probestuffs, just have to rewrite the shaderFeature to replicate the regular probe array logic.
2019-04-03 00:13:58 -05:00
Areloch
8d85a56095 Failed to get the Scene changes for the Full template rolled up. This corrects that. 2019-03-31 22:12:38 -05:00
Areloch
852f82b8a5
Merge pull request #2000 from saxonschmauderer/patch-3
Fix for bug #1975
2019-03-31 14:45:15 -05:00
Areloch
b759bde0c0
Merge pull request #2043 from John3/toolShapes_3
cleaning the modules
2019-03-31 14:41:35 -05:00
Areloch
fa6bdd9027
Merge pull request #2024 from John3/SnapToMenu
snapTo Menu
2019-03-31 14:32:50 -05:00