前⾔
threejs中想实现模型模型透明,显⽰⾥⾯模型的效果。
尝试
mrp游戏
⾸先肯定是拿两个⼏何体进⾏尝试,其实只要在材质中开启透明和设置透明度就好了,如果没效果,建议更换材质试试。var material = new THREE.MeshBasicMaterial({ transparent: true, opacity: 0.1 });多功能制水机
实践
⾸先当然把最外层的正⽅体改为从外部导⼊的模型⽂件,显然半透明的效果是有的,但同时会产⽣⼀些问题。
从不同⽅向观察模型,会发现从背⾯是看不到⾥⾯物体的,通过后,发现只要在材质上设置 depthWrite 为 false就可以了,当然也可以设置side属性。
⽆side属性
var material = new THREE.MeshBasicMaterial({
transparent: true,
opacity: 0.1,
depthWrite: false
});
有side属性
发电机集电环
var material = new THREE.MeshBasicMaterial({
transparent: true,
opacity: 0.1,
depthWrite: false,
双立柱卧式带锯床
side: THREE.DoubleSide
});
浮油回收机通过对⽐也看得出来,虽然现在从背⾯能看到⾥⾯的物体,但是感觉更像是遮挡⾯不见了,物体裸露出来了(有可能是我灯光照射的问题)。