我正在使用GLSL进行光线追踪,因为这一切都是通过WebGL在浏览器中发生的。我可以通过浮点纹理将我的对象信息传递给片段着色器。在查看纹理以查找我的对象信息时,我尝试在表达式中使用带有变量的for循环来说明它何时完成。它没有编译,它想要一个恒定的表达式。我可以这样做,但它是一个动态的场景,所以我不知道会有多少个物体。
找到场景中所有物体的正确方法是什么?
答案 0 :(得分:1)
您可以编译着色器以包含场景中的所有对象以及所有调用的相应交集测试,然后当您需要更新场景时,只需将所有场景对象包含在着色器中并重新编译