如果你有web前端基础,应该了解window对象,设备像素比.devicePixelRatio
是 window对象的一个属性,该属性的值和你的硬件设备屏幕相关,不同硬件设备的屏幕window.devicePixelRatio
的值可能不同,可能就是1、1.5、2.0等其它值。
查看当前设备的设备像素比
console.log('当前屏幕设备像素比',window.devicePixelRatio)
设置设备像素比
如果canvas画布模糊的话,可能是设备像素比的问题,如果当前设备的设备像素比刚好是1的话,那么设置像素比就没有啥差异,为了适配不同的硬件设备通常需要设置一下。
通过setPixelRatio
来进行设备像素比设置。
const renderer = new THREE.WebGLRenderer();
// 获取你屏幕对应的设备像素比.devicePixelRatio告诉threejs 以免渲染模糊问题
renderer.setPixelRatio(window.devicePixelRatio)
// 设置设备像素比。通常用于避免HiDPI设备上绘图模糊