InstancedBufferGeometry负比例问题

时间:2019-04-12 02:49:24

标签: three.js shader

我的场景中正在运行InstancedBufferGeometry。但是,有些实例是源的镜像,因此它们的负比例表示几何。

这会翻转这些实例的缠绕顺序,并且由于背面剔除(我想保留)而看起来是错误的。

我完全意识到这种方法的局限性,但是我想知道是否有一种方法可以解决我可能还没有遇到的问题?也许在着色器中有一些技巧可以指定哪些是正面,哪些是背面?我不记得有这种可能...

还是我应该做两个单独的负载? (将重复抽奖电话) 我正在加载许多不同的几何图形(它们都是实例化的),因此尝试确保获得最佳性能。

谢谢!

蚂蚁

[编辑:添加了更多细节]

1 个答案:

答案 0 :(得分:0)

如果您提供一个示例,将会有所帮助。据我能理解你的问题,简单的答案是-不,你不能那样做。 据我所知,图元在到达着色器之前被拒绝,这意味着它不在您的控制范围内。如果要使用负缩放比例,并确保曲面仍然可见,请启用两个面(正面和背面)的渲染。 另外,您也可以只旋转对象并保持正比例缩放就可以了(如果必须镜像),您在这里不走运。 还有一个想法:有2个实例化对象,一个具有法线几何,一个具有镜像,可以在镜像几何中修复法线。