threejs渲染器剔除模式
生活随笔
收集整理的這篇文章主要介紹了
threejs渲染器剔除模式
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
渲染器剔除模式
渲染器可以設(shè)置成舍棄某些面,如前面、背面等,在【W(wǎng)ebGLRenderer Constants】中對此有說明。默認(rèn)情況下,是剔除掉背面,也就是背對著相機的面。下面看看例子:
首先創(chuàng)建一個正方形,給每個面不同顏色:
let geometry = new THREE.BoxGeometry(100,100,100);let materials = [new THREE.MeshBasicMaterial({color:0xff0000}),new THREE.MeshBasicMaterial({color:0x0ff00}),new THREE.MeshBasicMaterial({color:0x00ff00}),new THREE.MeshBasicMaterial({color:0x000ff0}),new THREE.MeshBasicMaterial({color:0x0000ff}),new THREE.MeshBasicMaterial({color:0x000000})];let material = new THREE.MultiMaterial(materials);mesh = new THREE.Mesh(geometry,material);mesh.rotation.x = THREE.Math.degToRad(45);scene.add(mesh);其效果如下:
然后我們設(shè)置剔除前面:
renderer.setFaceCulling(THREE.CullFaceFront,THREE.FrontFaceDirectionCW);這里有兩個參數(shù),第一個指定剔除模式,第二個指定順時針還是逆時針,都可以在【W(wǎng)ebGLRenderer Constants】找到。設(shè)置后效果變成了:
面向相機的面不見了,這在演示一個模型內(nèi)部時是很有用的。【例子】
總結(jié)
以上是生活随笔為你收集整理的threejs渲染器剔除模式的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: javascript --- 实现对
- 下一篇: python将npy文件转换成图片