创造你的世界
玩家与角色:提示

更改ZEPETO角色颜色和穿戴物品颜色

7min

本指南旨在帮助创建引人入胜的内容。



更改ZEPETO角色的颜色

ZEPETO角色在运行时作为ZepetoCharacter对象实例化。

如果你检查ZepetoCharacter的结构,你会发现一个名为Zepeto Context的子对象。在Zepeto Context内部,还有一个名为body的对象。

通过在运行时使用脚本替换body对象的body(Clone)材质,你可以更改ZEPETO角色的颜色。

对于非动画头像,这种方法会改变整个面部和身体的颜色。

Document image




然而,对于动画头像,你还需要修改ANIME_BASEMODEL的body(Clone)材质,它是body对象的子对象。

请注意,材质替换在相同长度的材质数组中是可行的。

Document image






以下是一个示例代码,用于更改本地玩家的身体颜色。

确保实现逻辑,以便角色的颜色仅在角色加载后更改。

TypeScript




Document image

  • 更改身体材料可能导致ZEPETO头像的妆容无法正确显示。



更改磨损物品的颜色

磨损物品作为身体对象下的子对象实例化。

您可以从物品对象的材料部分检查每个物品应用的材料。

通过在运行时使用脚本替换材料,您可以更改物品的颜色。

Document image




下面是一个示例代码,用于更改本地玩家所穿戴的第一个物品的颜色。

确保在角色加载后才更改物品的颜色。

TypeScript




  • 代码解释
    • this.body.transform.GetChild(0) 指的是所穿戴物品中的第一个物品,即索引为 0 的物品。
    • 您可以将其调整为更改其他穿戴物品的颜色。
    • 对于使用多个材质的物品,请记住材质替换需要相同长度的材质数组。
Document image




更改ZEPETO角色和所有物品的颜色

通过利用我们迄今为止获得的见解,您可以统一修改角色和所有物品的颜色。

Document image




这是一个示例代码,当点击“更改颜色”按钮时,会完全改变本地玩家角色和物品的颜色,当点击“原始颜色”按钮时,会恢复到原始颜色:

TypeScript




  • 这种方法不仅适用于本地玩家,还适用于运行时创建的任何ZEPETO角色,包括NPC角色。
  • 尽情发挥创意,以有趣的方式应用它!