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
AzaezelX
57ee1882fa
strip out unused pixspecular to cut down on sources of confusion
2019-05-05 20:10:14 -05:00
AzaezelX
80c9f35ee1
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
98a3ff604a
nonbreaking 'specularcolor' to 'pbrConfig' var conversion. (TODO: specularMap entries)
2019-04-29 19:40:22 -05:00
AzaezelX
d519479562
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
26b3ecff4c
Merge branch 'PBR_ProbeArrayGLWIP' of https://github.com/Areloch/Torque3D into PBR_ProbeArrayGLWIP
2019-04-28 20:37:03 -05:00
Areloch
6db975e81c
random testing bits trying to isolate remaining forward issues.
2019-04-28 18:32:23 -05:00
AzaezelX
d2a01ece03
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
AzaezelX
9597014bc2
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
7108c8cc64
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
d2ed2555c9
typofix+ *add* computeForwardProbes to replicate the stateblock used in deferred
2019-04-10 17:46:42 -05:00
AzaezelX
8118f42411
leverage the macros for a bit more legibility
2019-04-10 14:14:10 -05:00
AzaezelX
ed385ff342
conform some of the "specularColor" entries (TODO: matinfo flags, like emissive/glow ect)
2019-04-10 12:56:20 -05:00
AzaezelX
68f47d6041
defaults for diffusecolor, specularcolor (reminder todo: shift that to composite) and normal for createForwardSurface
2019-04-10 11:48:22 -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
Tim Barnes
9e65e940d0
lighting single buffer
2018-11-21 15:53:02 +10:00
Azaezel
518bcaaabf
from @rextimmy: shifts sybox rendering to last (kils a bit of overdraw)
2018-11-18 06:36:16 -06: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
Azaezel
cbce2ee805
Merge branch 'development' of https://github.com/GarageGames/Torque3D into memberMess
...
# Conflicts:
# Engine/source/console/consoleFunctions.cpp
2018-03-28 15:42:34 -05:00
Azaezel
1138637718
crashfix from prior commit
2018-03-14 18:44:51 -05:00
Azaezel
02541ab1f9
shader hooks and gen cleanups
2018-03-13 18:07:58 -05:00
Glenn Smith
d9a723d533
More cats and cpys in files that xcode doesn't see
2018-03-07 01:13:56 -05:00
Areloch
9ad2e18766
Initial setup for shader connectors
2018-01-16 14:24:21 -06:00
Areloch
7219899287
Working on shader const binding
2017-10-17 08:48:31 -05:00
Areloch
70c154c7d3
Implement of the shader consts binding.
2017-10-10 15:54:54 -05:00
Areloch
74138342d1
Added support for uniforms, textures and samplers.
2017-10-09 17:15:57 -05:00
Areloch
512c4515fc
Updates
2017-10-06 16:49:50 -05:00
Areloch
dc5e502dec
Initial implementation of Custom Shader Features.
2017-10-05 17:04:51 -05:00
Areloch
8c807485b1
Reworks the $Core::commonShaderPath variable usage to be a static variable in ShaderGen for efficiency(only one getVariable when shadergen is initialized), as well as implements the ability to set a default value, and ensures that it tries to set a path even if the pref variable is missing which is important for ported projects from older builds.
2017-07-24 00:40:27 -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
edd1e0a270
Removes Direct3D9 functionality.
2017-05-28 16:51:31 -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
1ed8b05169
Initial implementation of the new Base Game Template and some starting modules.
...
This makes some tweaks to the engine to support this, specifically, it tweaks the hardcoded shaderpaths to defer to a pref variable, so none of the shader paths are hardcoded.
Also tweaks how post effects read in texture files, removing a bizzare filepath interpretation choice, where if the file path didn't start with "/" it forcefully appended the script's file path. This made it impossible to have images not in the same dir as the script file defining the post effect.
This was changed and the existing template's post effects tweaked for now to just add "./" to those few paths impacted, as well as the perf vars to support the non-hardcoded shader paths in the engine.
2017-02-24 02:40:56 -06:00
Azaezel
c6e2563a38
went overzealous on the bitangent cleanup when reviewing parallax. the W multiplier can and should stay. the y flip can remain gone.
2016-12-11 15:04:33 -06:00
Azaezel
a5755be681
factoring in tangentW casues parallax (but not normals) to swap specular highlight directions. removed that, as well as a prior attempted workaround.
2016-12-06 23:30:35 -06:00
James Urquhart
3496c549b5
Hardware Skinning Support
...
- Supports GL, D3D9 & D3D11
- Extends vertex formats & shadergen to support blend indices and weights
- Adds basic support for using 4x3 matrices for shader constants
- Supports software fallback
2016-08-21 01:43:30 +01:00
Anis
e13513f059
Merge pull request #1713 from Azaezel/c4189_cleanup
...
adresses C4189 warnings
2016-08-07 00:38:51 +02:00
Azaezel
76fe7937ce
adresses C4189 warnings ('identifier' : local variable is initialized but not referenced)
2016-07-31 10:46:52 -05:00
Azaezel
21d1bfa64c
3.9 fix: on the hlsl side: corrects improperly applied specularpower
...
(slider in conjunction with cubemap). gl side kills a redundant test
2016-07-27 16:48:55 -05:00
rextimmy
92017332eb
Fixed AccuTexFeatHLSL implicit truncation error
2016-06-09 16:23:53 +10:00
rextimmy
ddfa4eaf18
DX11 accumulation shadergen fix.
2016-06-09 15:23:54 +10:00
Azaezel
942235d114
Fixes vertcolor code insertion order, and applies it adaptively based on defered or forward lit context
2016-05-25 03:08:28 -05:00
Azaezel
d79b9a2988
removes w=z trick (was causing fisheye, effectively)
2016-05-18 06:38:13 -05:00
rextimmy
41e5caf22b
Direct3D11 Engine/source changes
2016-03-20 21:52:11 +10:00
Azaezel
9472bfd3ca
addresses https://github.com/GarageGames/Torque3D/issues/1537 via the following:
...
908be4818f/Engine/source/materials/materialDefinition.cpp (L261) denotes power as sharpness, reflected in the size/falloff of a highlight halo *
908be4818f/Engine/source/materials/materialDefinition.cpp (L264) denotes strength as overall brightness of highlights. **
*and sharpness of reflection if using a cubemap.
** reflected in cubemapped objects as also degree of 'reflection' vs diffuse/albedo coloration.
2016-03-01 20:25:52 -06:00
Azaezel
496b6a3ea8
truncation warning cleanups dx side (was also causing cornercase crashes gl side)
2016-02-26 00:21:01 -06:00
Azaezel
8c5810adad
The final step (barring any overlooked missing bits, requested refactors, and of course, rolling in dependencies already submitted as PRs) consists of:
...
renderPrePassMgr.cpp related:
A) shifting .addFeature( MFT_XYZ); calls from ProcessedShaderMaterial::_determineFeatures to ProcessedPrePassMaterial::_determineFeatures
B) mimicking the "// set the XXX if different" entries from RenderMeshMgr::render in RenderPrePassMgr::render
C) fleshing out ProcessedPrePassMaterial::getNumStages() so that it shares a 1:1 correlation with ProcessedShaderMaterial::getNumStages()
D) causing inline void Swizzle<T, mapLength>::ToBuffer( void *destination, const void *source, const dsize_t size ) to silently fail rather than fatally assert if a source or destination buffer is not yet ready to be filled. (support for #customTarget scripted render targets)
Reflections:
A) removing reflectRenderState.disableAdvancedLightingBins(true); entries. this would otherwise early out from prepass and provide no color data whatsoever.
B) removing the fd.features.addFeature( MFT_ForwardShading ); entry forcing all materials to be forward lit when reflected.
C) 2 things best described bluntly as working hacks:
C1) when reflected, a scattersky is rotated PI along it's z then x axis in order to draw properly.
C2) along similar lines, in terraincellmaterial, we shut off culling if it's a prepass material.
Skies: scattersky is given a pair of rotations for reflection purposes, all sky objects are given a z value for depth testing.
2016-02-16 02:50:49 -06:00