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 Roblox, anche se alcuni implementano un sistema di personalizzazione in gioco come il template UGC Homestore. Altri giochi apportano modifiche limitate agli aspetti degli avatar dei giocatori, come elmetti, ali o accessori che si adattano al genere.

Per creare un gioco unico che altera l'aspetto dei tuoi utenti, puoi personalizzare le proprietà del personaggio predefinito 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 del personaggio dei giocatori nel tuo gioco. Queste impostazioni si applicano globalmente a tutti i modelli di personaggi dei giocatori che si uniscono al tuo gioco. Per modificare personaggi specifici, come i modelli di personaggi non giocanti, consulta modifica manuale dell'aspetto.

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

Per ulteriori informazioni, consulta Impostazioni Avatar.

Modifica manuale dell'aspetto

I modelli di 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 giocatori o modelli di personaggi non giocanti 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 delle immagini Shirt, Pants e ShirtGraphic che puoi applicare al personaggio.
Parte del CorpoGli ID degli asset delle parti del personaggio Faccia, Testa, Torace, Braccio Destro, Braccio Sinistro, Gamba Destra e Gamba Sinistra.
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 seguendo questi passaggi:

  1. Crea una descrizione dal personaggio dell'utente, da 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 a un singolo personaggio, a tutti i personaggi giocatori o anche a tutti i personaggi in fase di generazione.

Crea HumanoidDescription

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

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

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


Dal personaggio del giocatore

Utilizza il seguente esempio di codice per creare una nuova HumanoidDescription basata sulle proprietà attuali 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 su HumanoidDescription o utilizza un metodo specificato prima di applicare HumanoidDescription a un personaggio.

Il seguente esempio 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 modifiche di accessori stratificate o in blocco, puoi utilizzare HumanoidDescription:SetAccessories() per effettuare aggiornamenti relativi agli accessori. Il seguente esempio di codice aggiunge un maglione stratificato e una giacca in quell'ordine a un 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 personaggio giocatore specifico
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 all'umanoide
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 generazione

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

Aggiorna HumanoidDescription per tutti i personaggi in fase di generazione
local Players = game:GetService("Players")
-- Ferma la generazione automatica in modo che possa essere eseguita 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)
-- Genera il 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 in Explorer e parentata allo spazio di lavoro, utilizza il seguente codice di esempio in uno Script per accedere all'istanza dello spazio di lavoro:

local Players = game:GetService("Players")
-- Ferma la generazione automatica in modo che possa essere eseguita nel callback "PlayerAdded"
Players.CharacterAutoLoads = false
local function onPlayerAdded(player)
-- Genera il personaggio con "workspace.StudioHumanoidDescription"
player:LoadCharacterWithHumanoidDescription(workspace.StudioHumanoidDescription)
end
-- Collega l'evento "PlayerAdded" alla funzione "onPlayerAdded()"
Players.PlayerAdded:Connect(onPlayerAdded)

Accessori stratificati su non-R15

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

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

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

  • Il modello target, tipicamente il corpo, ha un componente WrapTarget sulle mesh che i modelli aggiuntivi sono destinati ad avvolgere.
  • Il modello di stratificazione, tipicamente l'abbigliamento o l'accessorio, ha un componente WrapLayer sulle mesh destinate ad avvolgere il modello target.
  • La gabbia esterna del modello target e la gabbia interna ed esterna del modello di stratificazione hanno mappe UV corrispondenti.
    • I vertici corrispondenti sulla gabbia target dovrebbero avere le stesse UV di quei vertici sulla gabbia di stratificazione.
  • Se il tuo modello target non è R15, o non include un Humanoid, devi aggiungere un oggetto Weld al MeshPart di stratificazione.
    • Il Weld deve avere Part0 e Part1 impostati per collegare il MeshPart di stratificazione alla gerarchia Part del Modello. Ad esempio, Part0 si riferisce all'accessorio e Part1 si riferisce al Part genitore.
  • Se il tuo modello target è sia R15 che include un Humanoid, questo weld viene creato 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.