-
Notifications
You must be signed in to change notification settings - Fork 2.2k
Faster Shader Iteration
galibzon edited this page Aug 4, 2022
·
3 revisions
By default, shaders are compiled for all target platforms which can result in excessive churn when attempting to quickly iterate on a shader. While compiling for other target platforms is important to test correctness, it may be useful to temporarily target a specific platform. To do this, a settings registry change is needed.
// o3de-root/Registry/AssetProcessorPlatformConfig.setreg
"Platform pc": {
// "tags": "tools,renderer,dx12,vulkan,null"
"tags": "tools,renderer,dx12"
}
The change above for example disables SPIR-V bytecode and null-platform shader generation and leaves DXIL generation for the DX12 backend. Be sure to revert the change and re-test before submission though!
If performance is not a concern, then it is possible to disable Shader Variant compilation:
Disable .azshadervariant compilation (via registry setting in: \o3de\Gems\Atom\Asset\Shader\Registry\atom_shaders.setreg
- GPU Crash Debugging and Reporting
- CPU & GPU Debugging Tools
- CPU Profiling Tools
- GPU Profiling Tools
- GPU Memory Profiling
- Faster Shader Iteration
- Commit sign off
- PerformanceCollector API
- Allocator Tagging Guide
- What happens when entering/exiting Game mode?
- Hello World
- Using Tick Bus
- Using Transform Bus
- Reflecting Properties to the Editor
- Working With An External Lua Debugger
- Attachment Images and Buffers
- Image Builder
- Scene And Render Pipeline
- Shader Management Console (SMC)
- Work With Passes In Gems
- Developer Guide: Shader Build Arguments Customization
- Developer Guide: Customize AZSLc Executable
- Collecting Graphics Performance Metrics
- Mesh Instancing: For Content Creators
- Mesh Instancing: For Shader Authors
- Mesh Instancing: For Engine Maintainers/Contributors
- Screen Capture Image Comparison Testing