AzaezelX
d034895e8f
shifts glowmap out of the composite and to it's own texture, as well as featureset. (GL port pending design finalization)
2019-11-01 19:29:31 -05:00
AzaezelX
501990c3b6
from @rextimmy: ssao work
...
shifts ssao from the vectorlight to ibl-only via the reflectionProbearray postfx shader
2019-10-31 19:06:40 -05:00
AzaezelX
8fac88dadc
more misc cleanup, including cutting down on sampling the pbrconfigmap by filling that out first, and drawing the smooth and metal vars from it, and filling out an ao var in case folks wanna use that later, as well as a bit more doubled up functionality prune-down. still tracing why forward lit seems to have lost the map config feature
2019-10-23 20:38:13 -05:00
AzaezelX
bfccfca0ce
more conversionwork from specular entries to pbrconfig ones, adds backend glowmul and glowmap var tracking, as well as pbrconfigmap composite slip-in for the glowmap (sans shaderfeatures just yet). seems to have busted forward lit application though...
2019-10-22 15:11:39 -05:00
AzaezelX
65cbf49c4a
backend specularMap to PBRConfigMap alts.
...
left:
addField( "specularMap", TypeImageFilename, Offset(mPBRConfigMapFilename, Material), MAX_STAGES,
scripthook till last since that *will* break all current materials.
2019-10-16 15:51:02 -05:00
Areloch
ff4c2d59fc
Utilizes old method to clean up tree items in GuiTreeViewCtrl to resolve guiEditor crashes
...
Updates probeManager to correctly utilize skylight idx to infer if a skylight is active, and set the SKYLIGHT_ONLY macro correctly, resolving erroneous behavior
Cleaned up some of the guiEditor initialization script to remove redundancy
Cleaned up tools modules loading script to remove redundancy
2019-09-18 01:41:57 -05:00
Areloch
7c3bd49615
Adds ability to adjust padding to guiTextListCtrl's rows
...
ForcedMaterialMeshMgr tweaked to allow proper setting of override material
Ongoing WIP of update/fixing of options menus
WIP of expanded visualizers, including material complexity viz
Adds no-pie flag when compiling on linux with non-clang compilers
2019-09-06 00:00:17 -05:00
Areloch
600859bd63
Force proper update of box probe when attenuation changes
...
Fixed multiple case sensitivity issues
Adds GL ARB check for cubemap arrays for certain cases where the driver only supports the extension, not as core
Fixes undeeded namespace declaration in an inline operator function
Cleaned up/reordered some modules default in the data dir
WIP of Das Boot test map
Begun refactoring visualizer tools
Added default cloud and water textures to core/rendering so water and cloud objects work correctly
Added default Fog_Cube mesh so volumetric fog works correctly
2019-08-19 01:14:34 -05:00
AzaezelX
9859d9b7bc
'correct' refscale back to mismatching between forward and deferred. Because Reasons. >.>
2019-07-21 23:01:15 -05:00
Jeff Raab
38b0d0f1fe
Updates names of probe forward shader consts to be consistent with shadergen, allowing proper data throughput
2019-07-16 09:34:31 -05:00
AzaezelX
e83eabcb87
refbox calc parity, and killed off some doubled up alpha subtraction
2019-07-14 10:44:50 -05:00
AzaezelX
09c8e70e1c
Merge branch 'Preview4_0' into alpha40translucency2
2019-07-11 03:45:21 -05:00
Areloch
98f50a4453
Fixed probe cubemap reindexing assignment
...
Fixed BRDF texture binding in forward pass so it doesn't screw with the probes or regular lighting results during bakes
Fixed early-out check on probe manager so probes can be rendered during reflect pass as well.
2019-07-10 23:41:55 -05:00
AzaezelX
bc77ff0833
Revert "Updated SDL, Bullet and OpenAL soft libs"
...
This reverts commit 370161cfb1 .
2019-07-08 09:49:44 -05:00
Areloch
f8750dd8ed
Updated SDL, Bullet and OpenAL soft libs
...
Fixed case sensitivity problem
Fixed clang compiler problem with having the class namespace used in an inline for the == operator
Tweaked some theme stuff to be more consistent.
Added initial test of no-pie for linux
test sidestep of getTexCoord in shadergen hlsl feature so we don't assert when getting the terrain's shaderstuffs(which uses float3 instead of normal float2)
2019-07-07 02:43:49 -05:00
Areloch
e87dc787ee
Corrected probe init'ing so they don't fight for the cubemap idx order
...
Also correct deleting behavior so it updates indicies when a probe is removed
Updated forward lighting to utilize the same math as deferred
2019-06-30 23:04:16 -05:00
AzaezelX
4d714091b7
missed a few conversions
2019-06-28 10:56:38 -05:00
AzaezelX
01f6938746
nomenclature shift for clarity: bunch of stuff tagged as probe that refferenced things properly tied conceptually to the reflection refrence box.
2019-06-28 10:21:50 -05:00
Areloch
af77444ec9
Merge branch 'MatInstanceViewer' of https://github.com/Areloch/Torque3D into Preview4_0
...
Fixed up forward IBL
Reimplemented old forward light shader code as a baseline so it can be updated to new PBR math
2019-06-27 00:36:56 -05:00
Areloch
e5c12f4aab
Reduce console spam from probe manager when not in debug
...
Added ability to activate height override on inspector fields from script
Further refinements of theme usage as well as editor settings
2019-06-17 23:48:20 -05:00
Areloch
dd3422b5a2
Added ability to pass ints to post effect shader consts
...
Reorg'd probe init to flow better and be more robust on load
Cleaned up various parts of the probe render manager to be more stable
Fixed issue with crash on release due to numProbe in loops being 0
Updated glsl probe array shader
Beginning of rework of editor settings
Beginning of conversion of asset import config to similar system as editor settings
2019-06-13 00:37:12 -05:00
Areloch
b40d33a663
WIP of shifting the skylight cubemap to be packed into the cubemap array
2019-06-05 01:04:47 -05:00
Areloch
27b304eec3
Various fixes
...
Separated baked cubemap load/processing logic into a separate function for clarity
various corrections for when fields change so it properly notifies down to the client
Fixed enable flag logic to actually work
Fixed skylight enable flag so it properly disables if flipped off
2019-06-05 00:07:46 -05:00
Areloch
a552471e4e
Reorg of the probe initialization/update code to streamline parts of it, and make it flow more obviously
...
Added some initial asset stuffs for Das Boot for building out a better testing level.
2019-06-04 00:21:52 -05:00
Areloch
17cec11b97
Added refactor of Editor Settings window
...
Various fixes for asset handling.
WIP of crash tracking
2019-06-03 02:47:30 -05:00
Areloch
8196ad9d32
Removed old code that set the BRDF texture and caused a texture profile conflict with the probe array post effect, leading to a crash.
...
Renamed hasSkylight to mHasSkylight to avoid var ambiguity.
2019-05-26 03:13:16 -05:00
AzaezelX
afa52850c3
Merge branch 'CustomShaderFeaturesPR' of https://github.com/Areloch/Torque3D into alpha40Macwork
...
# Conflicts:
# Engine/source/materials/materialDefinition.cpp
# Engine/source/materials/processedFFMaterial.h
# Engine/source/materials/processedShaderMaterial.cpp
# Engine/source/renderInstance/renderBinManager.cpp
# Engine/source/renderInstance/renderGlowMgr.cpp
# Engine/source/renderInstance/renderMeshMgr.cpp
# Engine/source/renderInstance/renderPassManager.h
# Engine/source/renderInstance/renderTranslucentMgr.cpp
# Engine/source/shaderGen/customShaderFeature.cpp
# Engine/source/shaderGen/customShaderFeature.h
2019-05-22 23:36:15 -05:00
Areloch
529558f671
Initial implementation of Custom Shader Features
2019-05-17 01:20:19 -05:00
Areloch
3697737498
Merge branch 'ModernEditorLayoutWIP' of https://github.com/Areloch/Torque3D into development
2019-05-13 00:28:23 -05:00
Areloch
c283295f22
Merge branch 'CustomShaderFeatures' of https://github.com/Areloch/Torque3D into development
2019-05-11 21:53:08 -05:00
Areloch
3fa7a0d4fa
Various fixes
2019-05-11 21:42:27 -05:00
Areloch
cedbd387d9
Updating BaseGame to work with PBR, and a PBR example module
2019-05-08 01:27:51 -05:00
AzaezelX
57ee1882fa
strip out unused pixspecular to cut down on sources of confusion
2019-05-05 20:10:14 -05:00
AzaezelX
ae752a04e8
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
Areloch
bd170b5abe
WIP of forward probe scoring.
2019-05-03 00:03:58 -05:00
Areloch
4e557aec83
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
Areloch
65fb8bc5f3
Ongoing fiddling with correcting the forward render behavior.
2019-04-29 00:07:38 -05:00
Areloch
6db975e81c
random testing bits trying to isolate remaining forward issues.
2019-04-28 18:32:23 -05:00
AzaezelX
404cb929c1
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
b5436b6cb7
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
AzaezelX
d034ea2be8
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
a0d1a076d5
Merge branch 'PBR_ProbeArrayForward' into PBR_ProbeArrayGLWIP
...
# Conflicts:
# Engine/source/renderInstance/renderProbeMgr.cpp
2019-04-16 09:34:01 -05:00
Areloch
000c7b2263
GL work
2019-04-15 23:11:18 -05:00
AzaezelX
0cd8948fcf
stray var killoffs
2019-04-10 17:44:54 -05:00
AzaezelX
15ca6eabb4
cleanup duplicate var, and constructor-init skylight shaderconsts
2019-04-10 12:54:46 -05:00
Areloch
c025760422
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
afb5a589c3
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
Azaezel
5703618dc0
shift bbminmax to relative when sent to the gpu so folks can stick to realworld values
2019-03-26 06:48:56 -05:00
Areloch
e2b194182c
Undid debug work, shifted logic over entirely to utilize the updateTexture methods. Refactored probe init'ing so they'll load correctly without nudging, properly sequestered skylights from the probe array and updated the shader to contain az's changes as well as skylight and probe array changes.
2019-03-25 23:17:53 -05:00
Areloch
1627cbabe6
ongoing WIP to sort out init'ing issues as well as correcting values so the probes actually correctly update data into the arrays
...
Additional sanity checks on the updateTexture calls added by timmy
2019-03-25 00:06:08 -05:00
Areloch
26471aaa77
WIP of timmy's changes merged in. Not properly initializing the probes/array slots just yet.
2019-03-24 18:18:44 -05:00
Azaezel
ba8948a5b1
hook up attenuation value. todo: sort networkjing properly
2019-03-21 23:47:01 -05:00
Azaezel
df6b7f3351
put probe.boxmax/min code back as it was prior to merge. still having that /4 oddness.
2019-03-20 07:38:14 -05:00
Azaezel
04a6130df8
sync correction
2019-03-18 04:09:34 -05:00
Azaezel
caf73ea84f
Merge branch 'PBR_ProbeArrayWIP' of https://github.com/Areloch/Torque3D into PBR_ProbeArrayWIP
...
# Conflicts:
# Templates/Full/game/shaders/common/lighting/advanced/reflectionProbeArrayP.hlsl
2019-03-18 00:18:49 -05:00
Areloch
2bf67f7fa5
Corrections to make it use the correct transform, as well as passing along the scale as our extents in the bbMax.
...
Adjusts the box influence logic to try the bsf method.
2019-03-18 00:14:06 -05:00
Azaezel
edcdd21379
suggested alterations to the probe.worldToLocal math feeding and usage (and a divnull safety for attenuation)
2019-03-17 20:14:58 -05:00
Areloch
70d85d2241
Begun hook-in of skylight into array
...
Reworked the reflection reference offset/scale behavior to re-integrate into the editor interface via button(and work)
Hid irrelevent fields from given probe types.
Filter out editPosOffset and bake button fields from being saved to avoid weird loading behavior
2019-03-02 04:48:07 -06:00
Areloch
2903aaeea0
WIP of the rewrite of blend/projection to follow BSF's math approach.
2019-02-22 08:12:03 -06:00
Azaezel
c1bf59bf07
destructor code+ removed a crash-causing redundancy in onRemove
2019-02-20 16:59:58 -06:00
Azaezel
309d518249
scale reflection properly
2019-02-19 09:38:34 -06:00
Azaezel
5bce2d0904
seperated offset from position (we pass the net to the shader for use in the reflection box), and added a scalar (also only used in the reflection box). maked both as probeRef to denote reflection parameters.
2019-02-19 08:58:02 -06:00
Areloch
87e9d3edbd
Correct stateblock settings to display probes more correctly without crushing other forward elements.
2019-02-18 00:43:21 -06:00
Areloch
b754c022ba
Corrected the blending logic somewhat, added visualization modes for spec/diffuse probe influences, attenuation and contribution.
2019-02-17 03:47:40 -06:00
Areloch
788e265477
Finished current cleanup/reorg.
...
Temporarily disabled logic for forward render of probes to avoid data mangle. TODO: fix up forward once deferred math is locked in
Split probe modes out into distinct environmental probe objects
Removed the probes from tracking their own baked cubemap file paths and instead have a pref store it
Removed old probe shaders and materials that aren't used now.
Fixed mLastConst memory leak by removing nono line.
2019-02-14 00:35:22 -06:00
Areloch
58e3349286
Further cleanup, proper hook-in of CubeReflector for bake capture.
...
Shifted update of probe data to be triggered by probe changes.
Pack probes into the data arrays forward-first instead of keeping strict indicies.
todo: move bake to probeManager, clean up old/commented code, remove old probeMaterial stuff
2019-02-13 16:56:28 -06:00
Areloch
050f1e226a
WIP of adjusting the reflection probe's bake to utilize the ReflectionManager and CubeReflector instead of duplicating the capture code.
2019-02-13 00:37:50 -06:00
Areloch
fd8840ff53
Updated the PostFX ability to setShaderConsts and cubetextures for probes
2019-02-12 01:10:30 -06:00
Areloch
64db2b1d15
Ongoing PostFX org rework.
2019-02-11 00:17:53 -06:00
Areloch
b221b312d2
Org rework and postFX-setup WIP
2019-02-08 01:35:35 -06:00
Azaezel
72acec0a3f
set the alignedarray sizes to maxprobes, reguardless of actual probe count
2019-02-07 09:55:52 -06:00
Azaezel
f031ee9e39
duplication cleanups
2019-02-07 09:46:54 -06:00
Azaezel
0caac1a28c
cut down on some of that per-frame allocation via prepping our vector 'registers' during the constructor
2019-02-07 09:34:23 -06:00
Azaezel
4aa371cea2
remove push_back uses in favor of consistent [i], fill probe data with defaults before overriding to ensure no garbage data is getting referenced.
2019-02-07 08:05:39 -06:00
Azaezel
7837576de7
conversionwork courtessy of jeff. seeems float3f aligned arrays were nonfuncntional, so shifts a few over to float4s
2019-02-06 10:59:36 -06:00
Areloch
847d58a967
Progress in getting array data to comply.
2019-02-02 23:28:51 -06:00
Azaezel
2eb58e4cb7
portwork from jeff to use farFrustumQuad for the vertex shader
2019-01-31 13:00:52 -06:00
Areloch
b03e7a79b7
Broke it down to work with a single probe for confirmation of general math and behavior.
2019-01-31 11:44:09 -06:00
Areloch
3efbdbf9e1
Shifts the verts used to match the fullscreen quad setup of vector light, utilizing FarFrustuQuadVerts
2019-01-30 13:52:59 -06:00
Azaezel
26ee0d986f
reference cleanups:
...
1) kill off extraneous cubemap and irradiancecubemap source-to-shader variable ties
2) use the cubemap arrays (renderdoc for instance doesn't list them as being input at all if they're never used)
3) use the vert file
2019-01-30 06:29:39 -06:00
Azaezel
1dfd130d85
explicitly bound the namedtexttargets to input slots. shifted brdf slot on up to 3 (from 5) to cluster flat vs array entries. though it does not appear at time of writing that that is in fact binding...
2019-01-28 22:10:57 -06:00
Azaezel
7a8dd96808
should only need to set the brdf texture the once
2019-01-28 01:36:17 -06:00
Azaezel
1607f58bc4
typofix for bbMinArray, cubemap array lookups for irradiance and spec
2019-01-28 00:31:01 -06:00
Areloch
2abdef7459
Collapse the ProbeManager into RenderProbeMgr to simplify the probe management/rendering behavior(as the game sim doesn't require simple access to probe data, unlike lights)
2019-01-26 02:05:18 -06:00
Azaezel
26a89882c7
tracks wether or not a cubemap has been fully intitialised (as well as defautls for other shared entries). skips out including an uninitialized cuebmap in probe array (inthoery. in practice, need to root arround a bit more)
2019-01-22 02:03:14 -06:00
Areloch
5b7e2edb66
WIP hook-in of the cubemap array.
...
Also inversed probe transforms to make them correct.
2019-01-21 01:50:13 -06:00
Areloch
c0e8b047f5
Shifted the rest of the probe render code to hook into the array'd uniforms, made the reflection probe shader definition refer to the array shader.
2019-01-19 00:31:42 -06:00
Azaezel
4d3d800051
skylights do actually have a position. 0,0,0. so we can include those without messing with things. and we'll want to sum/count for blending purposes down the line. not render over each other
2019-01-08 11:16:05 -06:00
Areloch
f110158654
Probe Array WIP
2019-01-07 20:34:19 -06:00
Azaezel
47c36ff59d
THIS IS AN ABOMINATION UNTO THE CODEBASE AND SHOULD BE REMOVED THE SECOND WE CAN SORT OUT WHAT THE HECK IS GOING ON WITH THAT QSORT
...
stops flickering by itterating through the probe list twice. once looking for the skylight, then doing the rest
2018-11-28 18:12:12 -06:00
Azaezel
65ab39a2d2
cast to pointer to pointer, not just pointer. (confused yet?)
2018-11-27 08:28:33 -06:00
Azaezel
2c1a5f5647
qsort compilation, though still not quite correct
2018-11-25 12:35:35 -06:00
Tim Barnes
9e65e940d0
lighting single buffer
2018-11-21 15:53:02 +10:00
Areloch
c4a4fe5304
Implemented registration of probes to avoid rendering all probes when unneeded.
2018-11-19 01:18:09 -06:00
Tim Barnes
9a39afa0eb
reflection probe updates
2018-10-28 20:42:26 +10:00
Azaezel
86e5fe2adf
removed redundant cleartarget, added clearcolorattachment 4, tagged gbuffer slots
2018-10-25 20:03:28 -05:00
Azaezel
8fadf880a3
Merge branch 'PBR_Bins_Reordered' of https://github.com/Areloch/Torque3D into PBR_PR
...
# Conflicts:
# Engine/source/gfx/D3D11/gfxD3D11Device.cpp
# Engine/source/renderInstance/renderDeferredMgr.h
2018-10-25 14:30:12 -05:00
Areloch
e72f04648a
Adjusts the lightbin manager to be a regular bin, and shifts ownership of both lighting targets to the deferred manager. Probes now render ahead of lights to make the additive order jive.
...
Also reordered the probe targets used so they match lights for consistency.
2018-10-24 23:43:12 -05:00
Azaezel
a5cad08ba6
Merge branch 'PBR_PR' of https://github.com/rextimmy/Torque3D into PBR_PR
2018-10-24 20:48:45 -05:00
Azaezel
83ef5db910
work on getting render bin ordering correct
2018-10-24 18:27:43 -05:00