tgoop.com/unity_cg/74386
Last Update:
А вы знали, что юнити из коробки поддерживает дебаг пикселя по клику?)
Для URP надо включить дефайн ENABLE_SHADER_DEBUG_PRINT
в проекте (для HDRP, кажется, оно и так будет работать).
Затем добавить в шейдер строчку// #include "Packages/com.unity.render-pipelines.core/ShaderLibrary/ShaderDebugPrint.hlsl"
А в самом шейдере вызвать ShaderDebugPrintMouseButtonOver(int2(input.positionSS.xy), ShaderDebugTag('S','m','o', 't'), fragData.smoothness);
И тогда при клике ЛКМ по какому-либо месту на экране, в консоль будет написаноFrame #270497: Smot float4(0.1f, 0.2f, 0.3f, 0.4f)
- ну, или что у вас там в вашем цвете.
Разумеется, можно кастомизировать. И чтобы не по клику, и чтобы по клику на другую кнопку, и чтобы не этот пиксель, а другой.
Можно и для компьют шейдера это делать.
Так можно дебажить свой сложный кастомный шейдер.
Особенно хорошо работает в сочетании с окном Rendering Debugger.
BY WellMOR in Unity CG Tech
Share with your friend now:
tgoop.com/unity_cg/74386