unity3d - unity CBuffer 大小限制
问题描述
我正在测试 Unity2019.4.17 的 SRP Batcher 的功能。我遇到了一个奇怪的错误。当我启用 SRP 时,某些对象呈现不正确。从 RenderDoc 中,我可以看到我的着色器的一些属性是错误的。例如,_BaseColor 设置为绿色,但它应该是白色的。
我怀疑每个材料 CBuffer 有大小限制。超出限制的属性是随机设置的。在 HLSL 的文档中,它说“每个常量缓冲区最多可以容纳 4096 个向量;每个向量最多包含四个 32 位值。每个流水线阶段最多可以绑定 14 个常量缓冲区(保留 2 个额外的插槽供内部使用)” . Unity 也是如此吗?每个阶段只有 14 个 CBuffer 可用?
解决方案
推荐阅读
- android - 如何在颤振应用程序中使用外部 USB 摄像头?
- sql - 如何在oracle中分别传递值?
- python - how using key(name) we will get output value(Address) in a .csv or .xls file?
- java - 使用继承在java中扩展一个类
- javascript - 我正在尝试在 svg 元素中创建一个 rect 元素,但它不起作用
- java - 为什么我不能将 int 类型值添加到数组中
- javascript - 为什么这个打印未定义?当我使用 ${name} 以外的变量时,它可以工作
- python - 如何修复 python 文件关联/设置?
- arrays - 有没有办法制作一个空数组并随着它在 vb.net 中获取数据而增长它?
- python - Python - Main() 循环不重复执行