三j:我可以在带有三js的JSON模型/OBJ模型中隐藏和解开层



我和我的朋友正在为衬衫的3D配置器工作,我认为如果他为我们拥有的每种类型的按钮创建一个新型号,那将是最好的 - 以同样的方式,我们为不同的项圈创建了不同类型的模型,但他建议他可以使用所谓的一层并在不同的图层上创建不同的按钮类型,而我要做的就是隐藏并取决于按钮的层哪个用户选择。我想知道是否可以在3.js中进行编程隐藏图层,以及是否可以将带有图层的网格导入到三个项目中。

仅javaScript解决方案,three.js(任何版本(

//one button
var mySingleButton = new THREE.Mesh()
//hide one button
mySingleButton.visible = false 
//show one button
mySingleButton.visible = true

制作层:

var myLayer = [] //this is an array, you can think of it as a group of things or "layer" of things
for( var i = 0 ; i < 10 ; i ++ ){
   myLayer.push( new Mesh() ) //this is called a loop, it will create 10 meshes and store them in the group declared above
}

稍后在代码中隐藏它们

//you can use the loop again
for( var i = 0 ; i < 10 ; i ++ ){
   myLayer[i].visible = false //with i you access the button in the layer and hide it
}

,然后当您想显示它们时

  //you can use the loop again
for( var i = 0 ; i < 10 ; i ++ ){
   myLayer[i].visible = true 
}  

如果您想将某些型号导出到三分。而不是导出称为button的网格,您可以称其为layer_0_button。使用JavaScript您可以将此名称与例如layer_1_button

区分

最新更新