Aspetto del personaggio

*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.

La maggior parte dei giochi consente ai giocatori di utilizzare il proprio avatar di Roblox, anche se alcuni implementano un sistema di personalizzazione in-game come il template UGC Homestore. Altri giochi apportano modifiche limitate agli avatar dei giocatori, come caschi, ali o accessori che corrispondono al genere.

Per creare un gioco unico che modifichi l'aspetto dei tuoi utenti, puoi personalizzare le proprietà del personaggio predefinite tramite impostazioni avatar o una modifica manuale dell'aspetto.

Impostazioni avatar globali

Il FileImpostazioni Avatar di Studio ti consente di impostare rapidamente diverse proprietà globali dei personaggi giocatore nel tuo gioco. Queste impostazioni si applicano globalmente a tutti i modelli dei personaggi giocatore che si uniscono al tuo gioco. Per modificare personaggi specifici, come i modelli non giocatore, vedere modifica manuale dell'aspetto.

In questa finestra, puoi impostare vari preset per abbigliamento, accessori, parti del corpo, comportamento di collisione, animazioni e altro ancora. Quando modifichi queste impostazioni, un'anteprima delle impostazioni applicate viene visualizzata nello spazio di lavoro.

Per ulteriori informazioni, vedere Impostazioni Avatar.

Modifica manuale dell'aspetto

I modelli dei personaggi contengono un oggetto Humanoid che conferisce al modello caratteristiche speciali, come camminare, saltare, equipaggiare oggetti e interagire con l'ambiente.

Puoi modificare programmaticamente un Humanoid aggiornando HumanoidDescription. Questo include modelli di personaggi giocatore o modelli di personaggi non giocatore nel tuo gioco.

Puoi regolare le seguenti proprietà del personaggio nel tuo gioco utilizzando HumanoidDescription:

Proprietà del personaggioDescrizione
ScalaValori numerici per tratti fisici altezza, larghezza, testa, tipo di corpo e proporzione. Questo non influisce sui tipi di corpo R6.
AccessoriGli ID degli asset di accessori equipaggiati da un personaggio.
Abbigliamento ClassicoGli ID degli asset delle texture d'immagine di Shirt, Pants e ShirtGraphic che puoi applicare al personaggio.
Parte del CorpoGli ID degli asset di Faccia, Testa, Torso, Braccio Destro, Braccio Sinistro, Gamba Destra e Gamba Sinistra parti di un personaggio.
Colori del CorpoI BodyColors delle singole parti del corpo del personaggio.
AnimazioniGli ID degli asset di Animazioni che puoi utilizzare su un personaggio.

Personalizza un personaggio con HumanoidDescription utilizzando i seguenti passaggi:

  1. Crea una descrizione dal personaggio dell'utente, un ID di Outfit specifico, o da un ID utente specifico.
  2. Modifica la descrizione per personalizzare le proprietà che desideri applicare al personaggio Humanoid.
  3. Applica la descrizione su un singolo personaggio, tutti i personaggi giocatori, o addirittura su tutti i personaggi in fase di spawn.

Crea HumanoidDescription

Puoi creare una nuova istanza di HumanoidDescription direttamente all'interno della gerarchia Explorer o all'interno di uno Script con il seguente codice:

Crea nuova istanza di HumanoidDescription
local humanoidDescription = Instance.new("HumanoidDescription")

Nella maggior parte dei casi, dovresti utilizzare un HumanoidDescription esistente invece di una nuova HumanoidDescription predefinita facendo riferimento a un personaggio giocatore esistente, un outfit avatar, o un ID utente.


Dal personaggio del giocatore

Utilizza il seguente campione di codice per creare una nuova HumanoidDescription basata sulle proprietà correnti del personaggio del giocatore:

Genera una HumanoidDescription da un personaggio giocatore
local humanoid = player.Character and player.Character:FindFirstChildWhichIsA("Humanoid")
local humanoidDescription = Instance.new("HumanoidDescription")
if humanoid then
humanoidDescription = humanoid:GetAppliedDescription()
end

Da un outfit esistente

Utilizza il seguente codice di esempio per creare una HumanoidDescription da un ID di outfit utilizzando Players.GetHumanoidDescriptionFromOutfitID:

Genera una HumanoidDescription da un ID di Outfit
local Players = game:GetService("Players")
local outfitId = 480059254
local humanoidDescriptionFromOutfit = Players:GetHumanoidDescriptionFromOutfitId(outfitId)

Da un utente specifico

Utilizza il seguente codice di esempio per creare una HumanoidDescription da un ID utente utilizzando Players:GetHumanoidDescriptionFromUserId():

Genera una HumanoidDescription da un ID utente
local Players = game:GetService("Players")
local userId = 491243243
local humanoidDescriptionFromUser = Players:GetHumanoidDescriptionFromUserId(userId)

Modifica HumanoidDescription

Per personalizzare le proprietà di HumanoidDescription, impostale direttamente sulla HumanoidDescription o utilizza un metodo specificato prima di applicare la HumanoidDescription a un personaggio.

Il seguente campione di codice fornisce esempi di impostazione dei diversi tipi di proprietà di HumanoidDescription:

Aggiorna varie proprietà di HumanoidDescription
local humanoidDescription = Instance.new("HumanoidDescription")
humanoidDescription.HatAccessory = "2551510151,2535600138"
humanoidDescription.BodyTypeScale = 0.1
humanoidDescription.ClimbAnimation = 619521311
humanoidDescription.Face = 86487700
humanoidDescription.GraphicTShirt = 1711661
humanoidDescription.HeadColor = Color3.new(0, 1, 0)

Imposta più accessori

Per cambiamenti di accessori a strati o in blocco, puoi usare HumanoidDescription:SetAccessories() per fare aggiornamenti legati agli accessori. Il seguente campione di codice aggiunge un maglione e una giacca a strati in quell'ordine a una HumanoidDescription:

Cambia più accessori in una volta
local humanoidDescription = Instance.new("HumanoidDescription")
local accessoryTable = {
{
Order = 1,
AssetId = 6984769289,
AccessoryType = Enum.AccessoryType.Sweater
},
{
Order = 2,
AssetId = 6984767443,
AccessoryType = Enum.AccessoryType.Jacket
}
}
humanoidDescription:SetAccessories(accessoryTable, false)

Applica HumanoidDescription

Applica HumanoidDescription a specifici personaggi Humanoid nel tuo gioco con Humanoid:ApplyDescription() o Humanoid.LoadCharacterWithHumanoidDescription.

Su un singolo personaggio

ApplyDescription() può mirare a qualsiasi Humanoid. Usa il seguente codice per aggiungere un nuovo paio di occhiali da sole e un nuovo torso al personaggio del giocatore:

Aggiorna HumanoidDescription per un specifico personaggio giocatore
local humanoid = player.Character and player.Character:FindFirstChildWhichIsA("Humanoid")
if humanoid then
local descriptionClone = humanoid:GetAppliedDescription()
descriptionClone.Torso = 86500008
-- Sono consentiti più asset di accessori per il viso in una stringa separata da virgole
descriptionClone.FaceAccessory = descriptionClone.FaceAccessory .. ",2535420239"
-- Applica la "descriptionClone" modificata al humanoid
humanoid:ApplyDescription(descriptionClone)
end

Su tutti i personaggi giocatori

Utilizza il seguente codice di esempio per applicare una HumanoidDescription a tutti i giocatori attuali nel gioco:

Aggiorna HumanoidDescription per tutti i personaggi giocatori attuali
local Players = game:GetService("Players")
for _, player in Players:GetPlayers() do
local humanoid = player.Character and player.Character:FindFirstChildWhichIsA("Humanoid")
if humanoid then
-- Crea una HumanoidDescription
local humanoidDescription = Instance.new("HumanoidDescription")
humanoidDescription.HatAccessory = "2551510151,2535600138"
humanoidDescription.BodyTypeScale = 0.1
humanoidDescription.ClimbAnimation = 619521311
humanoidDescription.Face = 86487700
humanoidDescription.GraphicTShirt = 1711661
humanoidDescription.HeadColor = Color3.new(0, 1, 0)
humanoid:ApplyDescription(humanoidDescription)
end
end

Su tutti i personaggi in fase di spawn

Utilizza il seguente codice di esempio per impostare una specifica HumanoidDescription per tutti i personaggi giocatori in fase di spawn:

Aggiorna HumanoidDescription per tutti i personaggi in fase di spawn
local Players = game:GetService("Players")
-- Ferma lo spawn automatico in modo che possa essere fatto nel callback "PlayerAdded"
Players.CharacterAutoLoads = false
local function onPlayerAdded(player)
-- Crea una HumanoidDescription
local humanoidDescription = Instance.new("HumanoidDescription")
humanoidDescription.HatAccessory = "2551510151,2535600138"
humanoidDescription.BodyTypeScale = 0.1
humanoidDescription.ClimbAnimation = 619521311
humanoidDescription.Face = 86487700
humanoidDescription.GraphicTShirt = 1711661
humanoidDescription.HeadColor = Color3.new(0, 1, 0)
-- Spawn del personaggio con la HumanoidDescription
player:LoadCharacterWithHumanoidDescription(humanoidDescription)
end
-- Collega l'evento "PlayerAdded" alla funzione "onPlayerAdded()"
Players.PlayerAdded:Connect(onPlayerAdded)

Se l'istanza di HumanoidDescription è stata creata nell'Explorer e genitore nello spazio di lavoro, utilizza il seguente campione di codice in uno Script per accedere all'istanza nello spazio di lavoro:

local Players = game:GetService("Players")
-- Ferma lo spawn automatico in modo che possa essere fatto nel callback "PlayerAdded"
Players.CharacterAutoLoads = false
local function onPlayerAdded(player)
-- Spawn del personaggio con "workspace.StudioHumanoidDescription"
player:LoadCharacterWithHumanoidDescription(workspace.StudioHumanoidDescription)
end
-- Collega l'evento "PlayerAdded" alla funzione "onPlayerAdded()"
Players.PlayerAdded:Connect(onPlayerAdded)

Accessori a strati su non-R15

Gli accessori incassati, come gli accessori a strati, utilizzano WrapTarget e WrapLayer per allungarsi e avvolgersi attorno a un target Model. Gli accessori a strati possono funzionare sia con i personaggi R15 di Roblox standard che con i modelli non-R15.

L'implementazione personalizzata di accessori a strati, come un modello che utilizza una mappa UV di gabbia unica, non può essere caricata e pubblicata sul Marketplace. Per ulteriori informazioni, vedere Specifiche degli accessori a strati.

Che tu stia implementando accessori a strati su un rig di avatar R15, o utilizzando un rig personalizzato, assicurati che i tuoi accessori e corpi includano quanto segue:

  • Il modello di destinazione, tipicamente il corpo, ha un componente WrapTarget sulle mesh che altri modelli aggiuntivi sono destinati ad avvolgere.
  • Il modello di strato, tipicamente l'abbigliamento o l'accessorio, ha un componente WrapLayer sulle mesh destinate ad avvolgere il modello di destinazione.
  • La gabbia esterna del modello di destinazione, e la gabbia interna ed esterna del modello di strato hanno mappe UV corrispondenti.
    • I vertici corrispondenti sulla gabbia di destinazione dovrebbero avere le stesse UV di quei vertici sulla gabbia di strato.
  • Se il tuo modello di destinazione non è R15, o non include un Humanoid, devi aggiungere un oggetto Weld al MeshPart di strato.
    • Il Weld deve avere Part0 e Part1 impostati per collegare il MeshPart di strato alla gerarchia Part del Modello. Ad esempio, Part0 si riferisce all'accessorio e Part1 si riferisce alla Parte genitore.
  • Se il tuo modello di destinazione è sia R15 e include un Humanoid, questa saldatura viene creata automaticamente.
© 2026 Roblox Corporation. Roblox, il logo Roblox e Powering Imagination sono tra i nostri marchi registrati e non registrati negli Stati Uniti. e altri paesi.