Skip to content

SkinUnit

概览

字段
KindUnit · 单位 Unit
Realmcommon

继承关系

  • Unit(4 属性 / 25 函数 / 6 事件)
    • [SkinUnit](6 属性)

继承成员

1 个来源 / 4 属性 / 25 函数 / 6 事件

SkinUnit 是挂在目标单位下的外观覆盖组件,可用 SkinId、四组染色颜色和 MaterialParam 描述要应用的皮肤外观。

适用场景

用于给角色或模型单位挂载皮肤资源、分区染色或材质参数覆盖。

使用要点

通过 game:CreateUnit("SkinUnit", config) 创建实例,设置 SkinId、ModelColor1~ModelColor4 或 MaterialParam 后,将 SkinUnit.Parent 设为要覆盖外观的目标单位。

注意事项

SkinUnit 需要作为子对象挂到目标单位下;SkinId 和染色/材质字段应使用目标运行包可访问的资源与参数,并在目标端确认最终外观。不要依赖未在公开 Meta 中声明的刷新时机或内部实现细节。

代码示例

创建 SkinUnit 并挂到目标单位

lua
-- @runtime client
local world = game:GetService("World")

local target = world:CreateUnit("WorldUnit", {
    Name = "SkinTarget",
})

local skin = world:CreateUnit("SkinUnit", {
    SkinId = "official://skin/60001",
    ModelColor1 = Color.New(255, 255, 255, 255),
    ModelColor2 = Color.New(255, 220, 180, 255),
    Parent = target,
})

print("皮肤覆盖已挂载:", skin.Parent == target)

属性 (6)

Name类型默认值说明
SkinIdString""皮肤单元的皮肤资源 ID。
ModelColor1ColorColor.New(255, 255, 255, 255)皮肤染色区域1的颜色,用于控制模型上第一个可染色区域的颜色。
ModelColor2ColorColor.New(255, 255, 255, 255)皮肤染色区域2的颜色,用于控制模型上第二个可染色区域的颜色。
ModelColor3ColorColor.New(255, 255, 255, 255)皮肤染色区域3的颜色,用于控制模型上第三个可染色区域的颜色。
ModelColor4ColorColor.New(255, 255, 255, 255)皮肤染色区域4的颜色,用于控制模型上第四个可染色区域的颜色。
MaterialParamMaterialParam-SkinUnit 的材质参数属性,用于控制皮肤单元在渲染时使用的材质效果。该属性的值为一个 MaterialParam 对象,可通过 MaterialParam.New() 创建或由其他 API 返回。

关联类型