學習
引擎類別
AvatarCreationService
無法建立
服務

*此內容是使用 AI(Beta 測試版)翻譯,可能含有錯誤。若要以英文檢視此頁面,請按一下這裡



API 參考
方法
AutoSetupAvatarAsync
暫停
功能: DynamicGeneration
AvatarCreationService:AutoSetupAvatarAsync(
player:Player, autoSetupParams:Dictionary, progressCallback:function?
參數
player:Player
autoSetupParams:Dictionary
progressCallback:function?
返回
範例程式碼
自動設置角色
local AvatarCreationService = game:GetService("AvatarCreationService")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local LoadAvatarEvent = ReplicatedStorage.LoadAvatarEvent
local generatedAvatars = {}
-- 必須在伺服器上調用
local function setupAvatar(player: Player, avatarModel: Model, layeredShirtModel : Model)
local arguments = {
Body = avatarModel,
Accessories = {}
}
local accessoryArgument = {
AccessoryType = Enum.AccessoryType.Shirt,
IsLayered = true,
Instance = layeredShirtModel,
}
table.insert(arguments.Accessories, accessoryArgument)
local pcallSuccess, result = pcall(function()
local generationId = AvatarCreationService:AutoSetupAvatarAsync(
player,
arguments,
function(progressInfo)
print(`AutoSetup 進度: {progressInfo.Progress * 100}%`)
end
)
-- 在伺服器上加載並儲存以便於使用 PromptCreateAvatarAsync
local humanoidDescription = AvatarCreationService:LoadGeneratedAvatarAsync(generationId)
generatedAvatars[generationId] = humanoidDescription
-- 發送信號給客戶端,以便可以加載角色進行本地預覽
LoadAvatarEvent:FireClient(player, generationId)
end)
if not pcallSuccess then
warn("角色設置失敗:", result)
end
end

GenerateAvatar2DPreviewAsync
暫停
功能: DynamicGeneration
AvatarCreationService:GenerateAvatar2DPreviewAsync(
avatarGeneration2dPreviewParams:Dictionary, progressCallback:function?
參數
avatarGeneration2dPreviewParams:Dictionary
progressCallback:function?
返回

GenerateAvatarAsync
暫停
功能: DynamicGeneration
AvatarCreationService:GenerateAvatarAsync(
avatarGenerationParams:Dictionary, progressCallback:function?
參數
avatarGenerationParams:Dictionary
progressCallback:function?
返回

GetBatchTokenDetailsAsync
暫停
功能: Monetization
AvatarCreationService:GetBatchTokenDetailsAsync(tokenIds:{any}):{any}
參數
tokenIds:{any}
返回

GetValidationRules
AvatarCreationService:GetValidationRules():Dictionary

LoadAvatar2DPreviewAsync
暫停
功能: DynamicGeneration
AvatarCreationService:LoadAvatar2DPreviewAsync(previewId:string):EditableImage
參數
previewId:string

LoadGeneratedAvatarAsync
暫停
功能: DynamicGeneration
AvatarCreationService:LoadGeneratedAvatarAsync(generationId:string):HumanoidDescription
參數
generationId:string
範例程式碼
載入生成的虛擬角色
local AvatarCreationService = game:GetService("AvatarCreationService")
local Players = game:GetService("Players")
-- 可以在伺服器或客戶端調用
local function loadAvatar(generationId: string): Model?
local pcallSuccess, result = pcall(function()
local humanoidDescription = AvatarCreationService:LoadGeneratedAvatarAsync(generationId)
local model = Players:CreateHumanoidModelFromDescriptionAsync(humanoidDescription, Enum.HumanoidRigType.R15)
return model
end)
if pcallSuccess then
return result
else
print("角色載入失敗:", result)
return nil
end
end

PrepareAvatarForPreviewAsync
暫停
功能: AvatarAppearance
AvatarCreationService:PrepareAvatarForPreviewAsync(humanoidModel:Model):()
參數
humanoidModel:Model
返回
()

PromptCreateAvatarAssetAsync
暫停
AvatarCreationService:PromptCreateAvatarAssetAsync(
tokenId:string, player:Player, assetInstance:Instance, assetType:Enum.AvatarAssetType
參數
tokenId:string
player:Player
assetInstance:Instance
返回
範例程式碼
提示創建角色資產異步
local AvatarCreationService = game:GetService("AvatarCreationService")
local function publishAvatarAsset(tokenId: string, player: Player, assetInstance: Accessory, assetType: Enum.AvatarAssetType)
local pcallSuccess, result, resultMessage = pcall(function()
return AvatarCreationService:PromptCreateAvatarAssetAsync(tokenId, player, assetInstance, assetType)
end)
if pcallSuccess then
if result == Enum.PromptCreateAssetResult.Success then
print("成功上傳,資產編號: ", resultMessage)
else
print("上傳失敗,錯誤訊息:", resultMessage)
end
else
print("角色資產創建失敗。")
end
end

PromptCreateAvatarAsync
暫停
功能: AssetCreateUpdate, Monetization
AvatarCreationService:PromptCreateAvatarAsync(
tokenId:string, player:Player, humanoidDescription:HumanoidDescription
參數
tokenId:string
player:Player
humanoidDescription:HumanoidDescription
返回
範例程式碼
提示建立角色
local AvatarCreationService = game:GetService("AvatarCreationService")
export type BodyPartInfo = {
bodyPart: Enum.BodyPart,
instance: Instance, --包含已創建 MeshParts 的資料夾
}
export type BodyPartList = { BodyPartInfo }
local function publishAvatar(bodyPartInstances: BodyPartList, player: Player, tokenId: string)
local humanoidDescription = Instance.new("HumanoidDescription")
for _, bodyPartInfo in bodyPartInstances do
local bodyPartDescription = Instance.new("BodyPartDescription")
bodyPartDescription.Instance = bodyPartInfo.instance
bodyPartDescription.BodyPart = bodyPartInfo.bodyPart
bodyPartDescription.Parent = humanoidDescription
end
local pcallSuccess, result, resultMessage = pcall(function()
return AvatarCreationService:PromptCreateAvatarAsync(tokenId, player, humanoidDescription)
end)
if pcallSuccess then
if result == Enum.PromptCreateAvatarResult.Success then
print("上傳成功,BundleId: ", resultMessage)
else
print("上傳不成功,錯誤信息:", resultMessage)
end
else
print("角色創建失敗。")
end
end

PromptSelectAvatarGenerationImageAsync
暫停
功能: SensitiveInput
AvatarCreationService:PromptSelectAvatarGenerationImageAsync(player:Player):string
參數
player:Player
返回

RequestAvatarGenerationSessionAsync
暫停
功能: DynamicGeneration
AvatarCreationService:RequestAvatarGenerationSessionAsync(
player:Player, callback:function
參數
player:Player
callback:function
返回

ValidateUGCAccessoryAsync
暫停
AvatarCreationService:ValidateUGCAccessoryAsync(
player:Player, accessory:Instance, accessoryType:Enum.AccessoryType
參數
player:Player
accessory:Instance
accessoryType:Enum.AccessoryType
返回

ValidateUGCBodyPartAsync
暫停
AvatarCreationService:ValidateUGCBodyPartAsync(
player:Player, instance:Instance, bodyPart:Enum.BodyPart
參數
player:Player
instance:Instance
bodyPart:Enum.BodyPart
返回

ValidateUGCFullBodyAsync
暫停
AvatarCreationService:ValidateUGCFullBodyAsync(
player:Player, humanoidDescription:HumanoidDescription
參數
player:Player
humanoidDescription:HumanoidDescription
返回

活動
AvatarAssetModerationCompleted
功能: DynamicGeneration
AvatarCreationService.AvatarAssetModerationCompleted(
assetId:number, moderationStatus:Enum.ModerationStatus
參數
assetId:number
moderationStatus:Enum.ModerationStatus
範例程式碼
local AvatarCreationService = game:GetService("AvatarCreationService")
local conn = AvatarCreationService.AvatarAssetModerationCompleted:Connect(function(assetId, moderationStatus)
print("資產, " .. assetId .. ", 已準備好,審核狀態: " .. moderationStatus)
end)

AvatarModerationCompleted
功能: DynamicGeneration
AvatarCreationService.AvatarModerationCompleted(
outfitId:number, moderationStatus:Enum.ModerationStatus
參數
outfitId:number
moderationStatus:Enum.ModerationStatus

©2026 Roblox Corporation、Roblox、Roblox 標誌及 Powering Imagination 是我們在美國及其他國家地區的部分註冊與未註冊商標。