Commit graph

128 commits

Author SHA1 Message Date
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
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
Areloch f110158654 Probe Array WIP 2019-01-07 20:34:19 -06:00
Azaezel 1eed979a9c Merge branch 'method_Unmangle' into PBR_PR 2018-12-12 14:54:22 -06:00
Azaezel c3f0157331 ReflectProbeMaterialInfo::setProbeParameters buffer binding correction (again, set order as colorbuffer = 1, matinfo = 2 for gbuffer consistency) 2018-12-10 03:39:31 -06:00
Areloch 6cf0c9e360 Merge branch 'development' into EngineAPI-Refactor 2018-12-09 14:48:50 -06:00
Areloch 1fc38d496f Added deletion tracking so when we delete a probe, it'll delete the prefilter/irrad bakes if they exist.
WIP of static cubemap bake(not working).
2018-12-07 00:30:08 -06:00
Azaezel 74ca8d106c retweaked filter for wether ot not to supress the zonelight culling methods when not in the diffuse pass 2018-12-05 10:55:29 -06:00
Azaezel bd742bbf75 registergloballights now taks a (by default on) cullSceneLights. off for reflection capture as that is presently acting up 2018-12-04 12:41:15 -06:00
Azaezel 0974902cc8 put lerp back after verifying we were indeed getting values passed along. 2018-11-28 14:25:48 -06:00
Azaezel 4ef1a25610 put sphereical influence back via the new spherical attenuation methods, shifted the stateblock for probes specifically to max of either source or desitination alpha (though not entirely convinced that is in fact the case) 2018-11-28 12:00:06 -06:00
Tim Barnes ab10cc0c87 timmy merge work 2018-11-28 17:51:52 +10:00
Azaezel f1e584ca69 stateblocks: skylight uses one+(dest)zero. probes use (src)alpha+(dst(1.0-alpha) for a lerp blend. skylight writes out 0 alpha to ensure probes always win if even only a little. 2018-11-27 08:50:44 -06:00
Azaezel 0f0fc5279b missed mscore pasalong in .set 2018-11-27 08:03:04 -06:00
Azaezel 79d506d439 1)use standard setupPass inheritance chain. already checks for !mprocessedmaterial and a few other things
2)pass along mIsSkylight from probes to matinstances
3) stubbs in a seperate setupPass for skylightmatinstance
2018-11-23 02:05:36 -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 c64aee9dcc point light WIP & moved lighting position/direction to WS 2018-11-14 20:58:47 +10:00
Azaezel 79e2d5d459 REVIEW LATER: invert the world transform for probes to shove them into cam space as far as rotation goes. keep position. 2018-11-09 20:16:15 -06:00
Tim Barnes 6e17475f86 WIP shader work - not complete! 2018-11-02 09:08:45 +10:00
Tim Barnes 9a39afa0eb reflection probe updates 2018-10-28 20:42:26 +10: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 1b8549b146 stateblock work for probe blending 2018-10-24 18:27:59 -05:00
Azaezel b4e28343da crashfix. free will eventually lead to destroyself so don't doubleup or it trys to kill the dead. zombu bad. 2018-10-17 21:05:38 -05:00
Areloch aad37bc0f5 Corrected some missed bits in the template, and a check in the forward-lit probes 2018-10-10 01:52:19 -05:00
Areloch 57f8549abe Shifted to the static-list arrangement for probe instance tracking to help performance as well as drastically streamline the data submission/material instance flow for probe rendering. 2018-10-07 17:32:23 -05:00
Areloch f31445751f Updates and fixes to probe and lighting logic. 2018-09-17 01:52:18 -05:00
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 b4a1d18f42 Core implementation of Physical Based Rendering. 2018-09-15 20:19:57 -05:00
Lukas Joergensen e718841467 Eliminate DefineConsoleFunction 2018-04-17 20:54:08 +02:00
Azaezel 33ebe34440 more gfx shadowvar cleanups 2018-03-13 21:25:45 -05:00
Azaezel 1c62080f7f cleaned up member::radius 2018-03-13 15:31:00 -05:00
Azaezel 654fc29dc2 bounds to mBounds conflict avoidance 2018-03-13 01:05:15 -05:00
chaigler 4a72d54782 Fix assert on exit when Basic Lighting is removed
Occurs because ShadowMapManager is destroyed before
AdvancedLightManager.
2018-01-24 16:30:34 -05:00
chaigler 37b0ec68f7 Fixes linker errors when Basic Lighting is removed 2018-01-24 16:27:29 -05:00
Areloch 212fc80dfc Includes a fix to get lights to render more correctly in the reflection pass. Also includes a helper function to force a render from a passed in transform and frustum. 2017-07-07 02:55:56 -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 adb875cb54 Conflict resolution with devhead.
Cleaned up a few remaining d3d9 references in the cmake file.
2017-06-01 23:54:44 -05:00
Areloch edd1e0a270 Removes Direct3D9 functionality. 2017-05-28 16:51:31 -05:00
Areloch ec3806bb0a Catches the remaining prepass to deferred changes on the engine side. 2017-05-14 18:28:17 -05:00
Areloch 124ecb2fe0 Merge pull request #1984 from FooBarbarians/fix-1912
Reordering initialization methods #1912
2017-04-26 01:11:51 -05:00
Masquara 15f67015d3 Reordering initialization methods #1912 2017-04-19 14:02:45 -04:00
Areloch dba8b5b327 Merge branch 'development' into Xenon_Removal 2017-04-18 20:47:43 -05:00
Areloch af8fbf0e3a Goes and replaces the references/names that use Prepass to be Deferred, since we're actually using deferred. 2017-04-11 00:23:14 -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 1c2b096a72 Whitespace consistency 2017-01-06 23:10:14 -05:00
Thomas "elfprince13" Dickerson 88106f9032 Fixed type inference for nulls in console functions 2017-01-06 17:18:37 -05:00
Azaezel 55b26be9ba account for fov change (also, internal docs) 2016-11-29 15:57:41 -06:00
Azaezel 01419d7935 motion based updates for shadow caching
adds a $pref::Shadows::teleportDis and $pref::Shadows::turnRate (defaults 4, and 1 respectively)
if either is exceeded during a given frame, shadow chaches are forced to refresh themselves.
2016-11-29 14:13:23 -06:00