Skip to content

SubCustomAppearance ​

SubCustomAppearance 描述 CustomAppearance 中一个子模型的公开外观数据,包括模型与皮肤资源、染色区域、挂点、相对变换、材质、透明度和阴影设置。

概览 ​

SubCustomAppearance 描述 CustomAppearance 中一个子模型的公开外观数据,包括模型与皮肤资源、染色区域、挂点、相对变换、材质、透明度和阴影设置。

可通过 SubCustomAppearance.New(initData) 构造

代码示例 ​

创建子模型数据并用于运行时外观

lua
-- @runtime client
local appearances = game:GetService("CustomAppearanceService")
-- 客户端创建的运行时外观仅本端可见;需全端同步时请在服务端执行
local sub = SubCustomAppearance.New({
    RenderMeshId = "official://mesh/59268",
    SkinId = "official://skin/10001",
    SocketName = "Head",
    Offset = Vector3.New(0, 0.15, 0),
    Rotation = Quaternion.FromEulerAngles(0, math.rad(15), 0),
    Scale = Vector3.New(1, 1, 1),
    ModelAlpha = 0.8,
    CastShadow = true,
})
local appearanceId = appearances:CreateCustomAppearance({
    Name = "AccessoryAppearance",
    MainModelVisible = false,
    SubAppearance = { sub },
})
print("运行时外观 ID:", appearanceId)

属性 ​

名称类型默认值说明
RenderMeshIdStringofficial://mesh/59268子自定义外观使用的模型资源标识。
SkinIdString""子自定义外观使用的皮肤资源标识。
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颜色。
SocketNameString""子自定义外观挂载到角色或模型上的挂点名称。
OffsetVector3[0.0, 0.0, 0.0]子自定义外观相对挂点的位置偏移。
RotationQuaternion[0.0, 0.0, 0.0, 1.0]子自定义外观相对挂点的旋转。
ScaleVector3[1.0, 1.0, 1.0]子自定义外观相对挂点的缩放。
MaterialParamMaterialParam-SubCustomAppearance 的材质参数属性,类型为 MaterialParam,用于承载该子外观所对应的材质参数数据。
UseSkinListBoolfalse多槽位皮肤开关;启用后按各子网格的 SkinSlots 配置皮肤与染色。
SkinSlotsArray[]各子网格的皮肤与染色配置列表;元素包含 SkinId 和 ModelColor1~4。
MaterialParamListArray[]SubCustomAppearance 的逐槽位材质参数列表属性,类型为数组,用于按槽位存放材质参数(MaterialParam)条目,与同一类型中的 UseSkinList、SkinSlots 一起描述自定义外观的多槽位配置。
ModelAlphaFloat1子自定义外观整体模型的透明度。
CastShadowBooltrue控制该子自定义外观是否投射阴影。