【发布时间】:2018-01-26 09:21:01
【问题描述】:
我偶然发现了一些浏览器和设备渲染 MeshStandardMaterial 反射效果不佳的问题。
考虑下面的example:
和下面的this example:
这两个比较同时在同一台计算机、相同的显卡、相同的属性、但不同的浏览器上运行。如您所见,右侧的反射几乎无法辨认。
此外,我在锐角处遇到了一些三角测量问题,看起来好像是在顶点着色器中计算反射:
我了解不同的浏览器具有不同的 WebGL 功能,如 http://webglreport.com/ 上的结果所示:
有人知道我可以寻找的 IE/Edge 浏览器缺少哪些 WebGL 扩展或功能吗?如果不满足必要的要求,我想放置一个使用不同材料的嗅探器。或者,如果有人有完整的解决方案,那就更好了。我已经尝试过使用 EnvMap 的 minFilter 属性,但反射的计算方式仍然不同。
【问题讨论】:
-
这是一个糟糕的例子。一方面,场景中的光线过多。试试this three.js example。但即使是那个例子,也会用伪影渲染光滑的金属。
-
@WestLangley 完成。我用你推荐的例子在我原来的问题中添加了一张新图片,展示了同样的问题:i.stack.imgur.com/fBtv5.jpg