【问题标题】:Add a material to a Mesh in THREEJS在 THREEJS 中向 Mesh 添加材质
【发布时间】:2018-07-01 06:11:00
【问题描述】:

如何将材质添加到现有网格 -

我不想再次调用网格构造函数 - 有办法吗?

我在说 - 我有一个网格,我已经像这样调用了构造函数

    var mesh = new THREE.Mesh(geometry, material);

现在我在代码中创建了更多材料:

    var material2 = new THREE.MeshBasicMaterial();

现在我想将它添加到网格中

    mesh.material = [material, material2]; //does not work

这不起作用。

【问题讨论】:

    标签: javascript three.js mesh


    【解决方案1】:

    好的,所以我找到了答案 - 它确实有效 - 只需确保将整个数组传递给网格 - 不要尝试做类似的事情

        mesh.material = someArray.map(function(item){return 
        item.material;});
    

    这就是我正在做的——如果不克隆材料并在使用它们之前先将它们存储到变量中,也会发生奇怪的事情..

    或者它可能是与浏览器相关的问题 - 谁知道 - 有时会发生奇怪的事情..

    【讨论】:

    • “整个数组”?
    • “我在做什么”你为什么不在问题中发布呢?这不是你在做什么,你在做一个数组文字
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-03-04
    • 2017-06-16
    • 1970-01-01
    • 1970-01-01
    • 2019-03-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多