Commit Graph

4 Commits

Author SHA1 Message Date
Josie Yang
f8cc29c587 Implement GPUSkinCache debug visualization modes
*) 'Overview' shows skin cache on/off, recompute tangents on/off
*) 'Memory' shows skin cache memory consumption per sk mesh, includes RT if sk mesh uses a separate RT entry
*)  'RayTracingLODOffset` shows RT LOD index offset from raster LOD index

#jira UE-136542
#rb jeremy.moore
#preflight 622bb12b902b7ca699df8755

[CL 19383862 by Josie Yang in ue5-main branch]
2022-03-15 06:49:12 -04:00
jeremy moore
de48f41044 Removed redundant value that was being used to distinguish debug modes.
In the new uber shader setup we can just use VisualizeMode for that.
#rb jason.nadro

#ROBOMERGE-AUTHOR: jeremy.moore
#ROBOMERGE-SOURCE: CL 18425502 in //UE5/Release-5.0/... via CL 18425520
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v897-18405271)

[CL 18425528 by jeremy moore in ue5-release-engine-test branch]
2021-12-09 16:57:09 -05:00
jason nadro
8b1e84f061 Don't ouput quad overdraw visualization for shader platforms that don't support the required instructions.
#rb Lukas.Hermanns
#jira UE-136926
#preflight 61b15e3fe0430ca438a561d4, 61b0ecd263312f0a22ff5d63

#ROBOMERGE-AUTHOR: jason.nadro
#ROBOMERGE-SOURCE: CL 18418372 in //UE5/Release-5.0/... via CL 18418374
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v897-18405271)

[CL 18418376 by jason nadro in ue5-release-engine-test branch]
2021-12-09 08:55:10 -05:00
jason nadro
72a7310a2c [ShaderReduction] - Remove 7,688 shaders needed in the editor by combining separate debug viewmode shaders into a single ubershader controlled dynamically. Debug shaders are now only ~7% of the shaders in EngineTest instead of 15% of all shaders.
- Stats were run on EngineTest and results will vary from project to project.
- Removes FComplexityAccumulatePS, FLODColorationPS, FRequiredTextureResolutionPS, FMeshTexCoordSizeAccuracyPS, FPrimitiveDistanceAccuracyPS, FMaterialTexCoordScalePS
- All shader code is now contained in DebugViewmodePixelShader.usf.  Individual visualizations are contained within separate functions.
- All the C++ interface code has now been folded into a single implementation.
- Previously each implementation kept track of its name, and whether it needed local VF, if it needed material properties and needing instruction count.  Since every implementation is in the same shader we need all those features.  To simplify the code all this has been removed.
- We only keep track of a single FDebugViewModeInterface singleton to use for all debug modes.

#rb Graham.Wihlidal
#jira none
#preflight 61ae6bec1d6f74f2d4577fed

#ROBOMERGE-AUTHOR: jason.nadro
#ROBOMERGE-SOURCE: CL 18394421 in //UE5/Release-5.0/... via CL 18394431
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v896-18170469)

[CL 18394434 by jason nadro in ue5-release-engine-test branch]
2021-12-07 09:06:22 -05:00