three.js - Chrome/MacOS 中 Three.js 影子的质量?

标签 three.js webgl antialiasing

我正在尝试一个简单的 Three.js 场景(这方面的新手)。 我正在使用 Three.js WebGLRenderer 并设置了一个平面、一个转换阴影的立方体和一个定向光源。结果如图所示。

我该怎么办:

<强>1。提高阴影渲染的质量?
2.去掉锯齿状边缘?

我已将抗锯齿设置为 true,但它似乎在任何浏览器中都没有帮助......

renderer = new THREE.WebGLRenderer({ antialias: true});

enter image description here

最佳答案

你可以做两件事。首先设置一个渲染器属性

renderer.shadowMapType = THREE.PCFSoftShadowMap; // options are THREE.BasicShadowMap | THREE.PCFShadowMap | THREE.PCFSoftShadowMap

然后您还可以通过以下方式增加灯光的阴影贴图大小:

light.shadowMapWidth = 1024; // default is 512
light.shadowMapHeight = 1024; // default is 512

现在 r104 版本:

light.shadow.mapSize.width = 1024;
light.shadow.mapSize.height = 1024;

关于three.js - Chrome/MacOS 中 Three.js 影子的质量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16752075/

相关文章:

javascript - 顶点颜色源自 Three.js 中 Vector 的 z 坐标

javascript - WebGL 索引数组大小

javascript - 使用预乘 Alpha 读出 FBO

Three.js 2D 对象与 raycaster 碰撞

javascript - 使用带有 RayCaster 的 onMouseMove Three.js 性能非常慢

android - OpenGL ES 2.0 上的抗锯齿

c++ - 在创建 SDL 窗口后更改 OpenGL 抗锯齿?

antialiasing - Windows 中的抗锯齿字体嵌入文本?

Three.js OrbitControls.js - 使用按钮调用放大/缩小 - controls.dollyOut() 不是函数

javascript - 如何沿 y 轴平移球体(它只是向上移动,因此平移时不会向下移动)以及如何变形