Three.js: 多种材料现状

创建于 2017-08-21  ·  3评论  ·  资料来源: mrdoob/three.js

我不知道现在是否以任何方式支持多种材料?

MultiMaterial 已被弃用 - 但我找不到关于如何使用多种材料创建自定义网格(不是 CUBE)的任何文档或帮助 - 或者我的 faceVertexUvs 结构的外观或如何使其工作..

请问有什么帮助或链接吗?

Question

最有用的评论

我可能无法正确理解您要实现的目标,但是提供数组应该有效吗? 使用THREE.MultiMaterial应将警告记录到控制台,内容如下:

三.MultiMaterial 已被删除。 改用数组。

例子:

const geo = new THREE.BoxGeometry( 1, 1, 1 );
const mat = [
    new THREE.MeshBasicMaterial({ color: 0xFF00FF }),
    new THREE.MeshBasicMaterial({ color: 0x00FF00 }),
    new THREE.MeshBasicMaterial({ color: 0xFF00FF }),
    new THREE.MeshBasicMaterial({ color: 0x00FF00 }),
    new THREE.MeshBasicMaterial({ color: 0xFF00FF }),
    new THREE.MeshBasicMaterial({ color: 0x00FF00 }),
];
const mesh = new THREE.Mesh( geo, mat ); 

我将它用于我自己的自定义网格。

所有3条评论

我可能无法正确理解您要实现的目标,但是提供数组应该有效吗? 使用THREE.MultiMaterial应将警告记录到控制台,内容如下:

三.MultiMaterial 已被删除。 改用数组。

例子:

const geo = new THREE.BoxGeometry( 1, 1, 1 );
const mat = [
    new THREE.MeshBasicMaterial({ color: 0xFF00FF }),
    new THREE.MeshBasicMaterial({ color: 0x00FF00 }),
    new THREE.MeshBasicMaterial({ color: 0xFF00FF }),
    new THREE.MeshBasicMaterial({ color: 0x00FF00 }),
    new THREE.MeshBasicMaterial({ color: 0xFF00FF }),
    new THREE.MeshBasicMaterial({ color: 0x00FF00 }),
];
const mesh = new THREE.Mesh( geo, mat ); 

我将它用于我自己的自定义网格。

正如@imjasonmiller所说,唯一的区别应该是使用普通数组对象而不是THREE.MultiMaterial的实例。 几何中材料指数的设置没有改变。

好的,谢谢 - 一切都好

此页面是否有帮助?
0 / 5 - 0 等级