Azaezel
3afbdff871
changes a bit of the probecount logic to be based on probehit aka, how many probes specifically are hitting a given pixel. allows for attenuation-blended probe to probe, and full-override probe to skylight.
2019-03-08 06:34:51 -06:00
Azaezel
d83dac0bcf
reflection scalefix
2019-03-05 00:41:00 -06:00
Azaezel
0df6189ce4
debug crashfix. append .xyz so it knows 'yes, i do mean float4 to float3'
2019-03-05 00:28:34 -06:00
Azaezel
c75fd02bb5
boxproject converted to obb. TODO: convert defineBoxSpaceInfluence to obb as well by getting rid of that length(boxMaxLS - boxMinLS); in favor of a 3D scale calc set.
2019-03-04 23:29:23 -06:00
Areloch
ebdae5f4c1
Corrected yorks chapel materials + added to the main test level
2019-03-04 17:57:53 -06:00
Azaezel
6b261db84c
lightmap testbed
2019-03-04 16:48:28 -06:00
Azaezel
9f2f8d1d8f
1) use surface.R(reflection vector), not surface.N(worldspace normal) so we have pov based variation on skylight reflections.
...
2) use lerp based on the sum contribution of probes for a given pixel as calculated by all non-skylight probes. vs the skylight probe result. (math is currently still wrong, or we wouldn't be needing to use a saturate to get skylights showing)
TODO: find out where the attenuation went for a smooth blend. probably the same thing killing unsaturated skylight display..
2019-03-03 17:27:26 -06:00
Azaezel
479959a35b
slimmed down level save
2019-03-03 15:59:02 -06:00
Areloch
dbd0c971d3
Broke the functions out from the probeData struct
...
Moved ibl stuff back out of lighting.hlsl into probeArray shader for now.
2019-03-03 15:47:28 -06:00
Azaezel
907bac02e0
mergefix
2019-03-03 14:22:28 -06:00
Azaezel
6a7d046a19
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-03 11:54:24 -06: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
Azaezel
edccd2301c
EXPERIMENTATION: for paranoias sake, go ahead and normalize the reflection vector input for boxproject, throw out any out of range contributions (HACK ALERT!) and, what would appear to be the most corrective, reverse the blendfactor math.
2019-02-25 12:37:05 -06:00
Azaezel
89fb367f6a
shift the wip code back out of lighting.hlsl till were sure of it, and while we're at it, shove the probe methods into the probe class to more easily differentiate between blend-val and raw contribution factors
2019-02-25 02:39:00 -06:00
Areloch
df8864659a
Shift back to the seb methodology, but keep the probe struct for cleaner and easier to read code
2019-02-25 01:08:23 -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
727dbbfd8d
rolled in more of https://github.com/GarageGames/Torque3D/pull/2315 + set the mProbeShapeType(s) for the two derivative classes
2019-02-19 16:34:30 -06:00
Azaezel
0f5fe527dd
sample surface roughness for diffuse return. 0 means sharpest possible result
2019-02-19 14:37:44 -06:00
Azaezel
bdcb1aaea6
no need to z flip the diffuse box dx side. may need to gl side
2019-02-19 14:17:52 -06:00
Azaezel
cf50803e72
swap over to wireframe, plus a few misc cleanups
2019-02-19 13:58:29 -06:00
Azaezel
309d518249
scale reflection properly
2019-02-19 09:38:34 -06:00
Azaezel
742447178b
set blendfactor to blendval when only one probe.
2019-02-19 09:24:38 -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
Azaezel
e4ddfcfb01
hook editor displays back up
2019-02-19 08:55:55 -06:00
Azaezel
c359bf622b
won't be needing the flipflop after yesterdays alterations unless we also need to do up a blur pass, at which point the name wouldn't be apropriate anyway.
2019-02-18 17:11:04 -06:00
Azaezel
93377ebc16
seperated out the sum of the total weights form the sum of the factored weights
2019-02-18 16:13:17 -06:00
Azaezel
6cdbe08519
need to seperate out raw from blended blendvals
2019-02-18 14:53:21 -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
Azaezel
8d08ab2370
kill off a couple extraneous sets
2019-02-15 20:31:59 -06:00
Azaezel
e829e61452
cleanup: use radius[id] vals
2019-02-15 18:14:46 -06:00
Azaezel
528bb8740c
output ibl to it's own namedtexture, flipped the result back onto the stack post-calc to stop it polluting the backbuffer for all other render passes
2019-02-15 16:22:49 -06:00
Azaezel
cce0fe8b8a
postfx updated to correct editor mangling. (still overriding skybox at minimum)
2019-02-15 10:49:06 -06:00
Azaezel
407a6672ea
use irradiance
2019-02-15 09:28:45 -06:00
Azaezel
fce3a318c2
flip sphereical projection back on as an option to support the second class
2019-02-15 09:18:03 -06:00
Azaezel
de50110827
Merge branch 'PBR_ProbeArrayWIP' of https://github.com/Areloch/Torque3D into PBR_ProbeArrayWIP
...
# Conflicts:
# Engine/source/renderInstance/renderProbeMgr.cpp
2019-02-15 09:15:51 -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
Azaezel
cdbd0e504f
add irradiancecubemap intialised validation check, shifted cubemap vectors back to push_back and the array to size. kiled off now entriely redundant count tracking var
2019-02-13 07:33:31 -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