branchrust_reboot/main/shader-improvementscancel
125 Commits over 181 Days - 0.03cph!
Started moving "Core/Foliage" to Rust Standard backend
Post std-backend "Core/Generic" tweaks + removed unnecessary passes
Reduced micro-occlusion range from 3% to 2% + pre-calc
Transmission nomenclature
Adapted Core/Generic shader to Rust Standard backend
Fixed shadows on std core
Added reflectance micro-occlusion to EvaluateBSDF_Env
Preparing std shader backend for core shaders
Fixed "Rust/Standard" detail occlusion not obeying mask
Fixed sampler limit errors in "Rust/Standard Blend 4-Way"
Fixed contact self-shadowing on transmissive materials
Added optional Wind layer to "Rust/Standard"
Renamed "UV Set for Transparency" to "UV Set for Alpha" and added this feature to "Rust/Standard" shader
Added double sided normal option for "Rust/Standard"
Fixed energy conserving specular color to be non-optional on older shaders
Fixed SSS indirect diffuse tone mismach vs non-SSS
Fixed indirect diffuse not being affected by SSS
Added transmission tint to subsurface profiles
Fixed unroll warnings in post process SSS
Nuked specialized standard anisotropic, transmission and subsurface shaders (no longer necessary)
Added Material Type dropdown to Rust/Standard; can now do standard(metallic), specular color, anisotropic, transmission and subsurface scattering
Fixed subsurface mask transitions and related sharpness problems + early out / opts
Fixed unassigned preintegrated fresnel FGD lookup table
Make sure we always have full anisotropic texturing in editor, when not playing
Organizing, naming, nuking
Fixed everything related to indirect specular + removed more useless legacy code
Fixed subsurface profile indexing, scatterable light, core packing
Refactored subsurface profile handling
Added high quality normal mode for material types that can fit extra 4 bits (most) in gbuffer + small fixes and optimizations
Hard limit of 16 subsurface profiles (15 assets + default)
Major revamp/cleanup to standard shading backend, reduced gbuffer pressure, fixed anisotropic and increased shading quality
Finished Anisotropic implementation; started work to handle gbuffer pressure
Reverted craggy's to previous
Added support for anisotropic materials via specialized "Rust/Standard Anisotropic" shader set
Finished subsurface scattering support for standard shading model; added "Rust/Standard Subsurface" shaders
Fixed separable subsurface scattering to work with any shader (not just core/skin) and larger scatter radius
Fixed deferred shadowing ignored in core shader set
Fixed transmission in blendlayer
Cleaning shaders for bug that was already fixed
Added transmission to standard blendlayer shader set and tweaked transmission shader lods
Fixed shadow handling in transmission, can be made available in any standard shader now; nuked specialized transmission shaders