【问题标题】:three.js - THREE.MeshFaceMaterial update textures on cubethree.js - THREE.MeshFaceMaterial 更新立方体上的纹理
【发布时间】:2013-02-23 22:22:57
【问题描述】:

使用 r54:

立方体,每一面都有不同的纹理。

var materials = [new THREE.MeshBasicMaterial({map: textureSmallSide}),
                 new THREE.MeshBasicMaterial({map: textureSmallSide}), 
                 new THREE.MeshBasicMaterial({map: textureSmallSide}),
                 new THREE.MeshBasicMaterial({map: textureSmallSide}),
                 new THREE.MeshBasicMaterial({map: texture}),
                 new THREE.MeshBasicMaterial({map: texture})];

所以在这种情况下有 6 个不同的 canvas-obj

new THREE.Mesh(cuboidgeo, new THREE.MeshFaceMaterial(materials));

问题:
如何获取材质数组来更新这些纹理(例如更改 canvas-obj 的值)? 我知道当我创建这样的网格时:

new THREE.Mesh(cubegeo, new THREE.MeshBasicMaterial({map: texture}));

我可以像这样得到我的画布对象:

cubemeshobj.material.map.image

但是我该从谁那里得到 THREE.MeshFaceMaterial 的纹理(材质数组)?

【问题讨论】:

    标签: three.js mesh cube


    【解决方案1】:

    在控制台中检查您的对象。现在你有一个材料数组

    for(var i = 0; i < cubemeshobj.material.materials.length; i++){
    
          cubemeshobj.material.materials[i].map.image;
    
    }
    

    r56

    【讨论】:

      猜你喜欢
      • 2021-01-08
      • 2017-01-18
      • 2012-11-19
      • 2013-07-31
      • 2013-01-22
      • 2016-02-27
      • 2013-09-09
      • 2016-09-26
      • 2013-06-29
      相关资源
      最近更新 更多