创建材质

创建材质一般有以下 3 种方式:

1. 手动创建

2. 模型中的材质

参考模型的导入和使用教程,我们可以先将模型导入到编辑器,一般情况下,模型已经自动绑定好材质,用户可以不用做任何操作;

2.1. Remap 材质

如果想要修改模型材质,我们可以点击 duplicate and remap 按钮来生成一份该材质的副本,注意 Remap 会修改模型预设,如下图所有模型实例都会受到影响:

2.2. 增量修改

如果只想修改某个模型的材质,可以使用增量修改的功能:

3. 绑定材质

我们直接将材质拖到场景中即可进行绑定。

4. 脚本方式

我们还可以通过脚本来创建/修改材质,我们将脚本挂载到立方体实体上,实现替换材质的一个 Demo:

export default class extends Script {
  onStart() {
    // 获取所有 renderer
    const renderers = [];
    this.entity.getComponentsIncludeChildren(MeshRenderer, renderers);
    const renderer = renderers[0];
 
    // 直接修改材质
    const material = renderer.getMaterial();
    material.baseColor.set(1, 0, 0, 1);
 
    // 或者替换材质
    const pbrMaterial = new PBRMaterial(engine);
    const material = renderer.setMaterial(material);
  }
}

这篇文档对您有帮助吗?