建立{itemType}
Accelerate
營利

照片轉化為角色生成

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

您可以創建一個遊戲,允許玩家使用照片和文本提示生成一個完整功能的角色。

此過程涉及以下步驟:

  1. 請求 AvatarGeneration 會話
  2. 提示用戶拍攝自拍並生成角色的 2D 預覽圖像
  3. 使用 HumanoidDescription 生成完整的角色

請求 AvatarGeneration 會話

要開始照片轉化為角色生成,從伺服器調用 AvatarCreationService:RequestAvatarGenerationSessionAsync() 以請求玩家的會話。會話為 Player 提供了一定數量的角色預覽和角色生成。

由於可能需要一些時間才能使會話可用,AvatarCreationService:RequestAvatarGenerationSessionAsync() 會返回一個 RBXScriptConnection 和等待時間(以秒為單位)。可以用這個等待時間為 Player 提供有關他們何時能夠開始生成的資訊。

一旦會話準備好,回調將以一個有關會話的 Dictionary 被調用。這個 Dictionary 包含:

提示自拍並生成 2D 預覽

會話開始後,提示用戶拍攝自拍,並通過調用伺服器上的 AvatarCreationService:PromptSelectAvatarGenerationImageAsync() 方法獲取 fileId string。這個 fileId 將被傳遞到 AvatarCreationService:GenerateAvatar2DPreviewAsync() 方法中。

要創建角色的 2D 預覽圖像,調用以下方法:

AvatarCreationService:GenerateAvatar2DPreviewAsync() 接受 SessionId、fileId 和可選的文本提示作為輸入,以生成 2D 角色預覽。此方法返回一個 previewId。

這個 previewId 應該被發送到客戶端,然後可以用來檢索預覽作為 EditableImage

如果用戶對生成的預覽不滿意,可以重複此工作流程。

生成 3D 角色

一旦用戶對預覽滿意,您可以生成完整的 3D 角色。

要生成一個角色:

  1. 在伺服器上調用 AvatarCreationService:GenerateAvatarAsync(),並傳遞包含 SessionId 和 PreviewId 的 Dictionary
    1. 此方法調用返回一個 string generationId。
  2. 使用 AvatarCreationService:LoadGeneratedAvatarAsync() 方法在遊戲伺服器和客戶端上檢索生成的角色數據作為 HumanoidDescription
  3. 您可以使用 Players.CreateHumanoidModelFromDescription 方法從 HumanoidDescription 創建一個角色模型,並顯示給 Player

網格和材質資產將提供作為 EditableMeshEditableImage 對象,以便對生成的角色進行持續編輯。應在遊戲伺服器和客戶端副本上進行編輯,以保持同步以便發布。

發布

如果用戶對生成的角色滿意,可以使用 AvatarCreationService:PromptCreateAvatarAsync() 方法進行發布。

有關詳細資訊,請參閱 遊戲內創作

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