La maggior parte delle esperienze consente ai giocatori di utilizzare il proprio AvatarRoblox, anche se alcune implementano un sistema di personalizzazione in-experience come il Merch Booth modulo. Altre esperienze fanno modifiche limitate ai avatar dei giocatori come caschi, ali o accessori che corrispondono al Genere, Sesso.
Per creare un'esperienza unica che cambia l'aspetto dei tuoi utenti, puoi personalizzare le proprietà del personaggio predefinite con le Seguendoopzioni:
- Configura le impostazioni Gioco per impostare le impostazioni di base dell'avatar per tutti gli utenti.
- Usa HumanoidDescription in qualsiasi momento per applicare una gamma di personalizzazioni del personaggio a uno o più utenti nella tua esperienza.
Impostazioni di gioco
La sezione Avatar nel menu Impostazioni di gioco ti consente di impostare rapidamente diverse proprietà globali del personaggio nella tua esperienza. Quando modifichi le impostazioni di avatar, il tuo avatar viene visualizzato nell'area di lavoro come una visualePreview.
Puoi regolare le seguenti proprietà del personaggio nella tua esperienza utilizzando le impostazioni di gioco dell'Avatar:
Impostazione | Descrizione |
---|---|
Preset | Applica un insieme comune di BodyTypeScale e ProportionScale combinazioni. Puoi ulteriormente regolare queste proprietà con HumanoidDescription dopo aver selezionato un preset. |
Tipo di Avatar | Imposta il tipo di avatar predefinito R15 o R6 . |
Animazione | Il set di Animations a cui un utente ha accesso. |
Collisioni | Imposta i limiti di collisione per i personaggi nell'esperienza. |
Parti del corpo | Gli ID delle risorse del Face , Head , Class.HumanoidDescription.Torso| |
Abbigliamento | I ID delle risorse dei classici Shirt , Pants e ShirtGraphic immagini che puoi applicare al personaggio. |
Tipi di Avatar
Il Tipo dell'Avatar setting imposta la tua esperienza per caricare solo R15 o R6 modelli di personaggio.
R15 è l'avatar moderno predefinito con 15 arti. Questo avatar consente una maggiore flessibilità di personalizzazione, opzioni di accessori e animazioni.
R6 è un avatar classico con 6 arti. Questo tipo di avatar fornisce un aspetto retro ma è limitato nelle animazioni e nella personalizzazione aggiuntiva. Le modifiche alla proprietà di dimensioni del corpo non hanno effetto sui caratteri R6.
Bordi di collisione
La Collisioni impostazione imposta i confini di collisione per i personaggi nell'esperienza. Questo non influisce sull'aspetto fisico dei personaggi nella tua esperienza.
Impostando questa opzione su Cassa esterna , le dimensioni delle casse di collisione dei personaggi si adattano dinamicamente ai modelli individuali di loro. Questa è la configurazione predefinita e raccomandata per la maggior parte delle esperienze.
Impostando questa opzione su Inner Box fornisce limiti di collisione fissi per tutti i personaggi nella tua esperienza.
Descrizione Umanoide
I modelli di personaggio giocabili contengono un oggetto Humanoid che consente alle caratteristiche speciali del modello, come camminare, saltare, equipaggiare oggetti e interagire con l'Ambiente. Per personalizzare l'aspetto di un modello Class.Humanoid , puoi applicare una nuova Humanoid per cambiare le proprietà del personaggio.
Puoi regolare le seguenti proprietà del personaggio nella tua esperienza utilizzando HumanoidDescription :
Proprietà del personaggio | Descrizione |
---|---|
Dimensione | Numero di valori per i tratti fisici height , width , head , 1> Class.HumanoidDescription.BodyTypeScale|tipo di |
Accessori | The Asset IDs of Class.Accessory|accessories equipped by a character. |
Abbigliamento Classico | I ID delle risorse della Shirt , Pants e ShirtGraphic immagini che puoi applicare al personaggio. |
Parte del corpo | Gli ID delle risorse del Face , Head , Class.HumanoidDescription.Torso| |
Colori del corpo | Il BodyColors delle singole parti del personaggio. |
Animazioni | Le ID delle risorse di Animations che puoi utilizzare su un personaggio. |
Puoi personalizzare un personaggio con HumanoidDescription usando i seguenti passaggi:
- Crea una descrizione dal personaggio dell'utente, un ID di abito specifico o da un ID utente specifico.
- Modifica la descrizione per personalizzare le proprietà che vuoi applicare al personaggio Humanoid .
- Applica la descrizione su uno qualsiasi personaggio, su tutti i personaggi dei giocatori o su tutti i personaggi di spawn.
Creazione di una descrizione umanoide
Puoi creare una nuova istanza HumanoidDescription direttamente nella gerarchia Explorer o in un Script con il seguente codice:
local humanoidDescription = Instance.new("HumanoidDescription")
In mosti casi, dovresti usare un esistente HumanoidDescription invece di un nuovo HumanoidDescription di base facendo riferimento a un personaggio giocatore esistente , 2> avatar outfit2> o 5> user ID5> .
Dal personaggio giocatore
Usa il seguente esempio di codice per creare una nuova HumanoidDescription in base alle proprietà attuali del personaggio del giocatore:
local humanoid = player.Character and player.Character:FindFirstChildWhichIsA("Humanoid")local humanoidDescription = Instance.new("HumanoidDescription")if humanoid thenhumanoidDescription = humanoid:GetAppliedDescription()end
Da un Outfit Esistente
Usa il seguente codice di esempio per creare un HumanoidDescription da un ID di outfit utilizzando Players.GetHumanoidDescriptionFromOutfitID :
local Players = game:GetService("Players")local outfitId = 480059254local humanoidDescriptionFromOutfit = Players:GetHumanoidDescriptionFromOutfitId(outfitId)
Da un utente specifico
Usa il seguente codice di esempio per creare un HumanoidDescription da un ID utente utilizzando Players:GetHumanoidDescriptionFromUserId() :
local Players = game:GetService("Players")local userId = 491243243local humanoidDescriptionFromUser = Players:GetHumanoidDescriptionFromUserId(userId)
Modificare la descrizione umanoide
Per personalizzare le proprietà HumanoidDescription, impostarle direttamente sul HumanoidDescription o utilizzare un metodo specificato prima di applicare il HumanoidDescription a un personaggio.
Il seguente codice di esempio fornisce esempi di impostazione delle diverse proprietà di HumanoidDescription :
local humanoidDescription = Instance.new("HumanoidDescription")humanoidDescription.HatAccessory = "2551510151,2535600138"humanoidDescription.BodyTypeScale = 0.1humanoidDescription.ClimbAnimation = 619521311humanoidDescription.Face = 86487700humanoidDescription.GraphicTShirt = 1711661humanoidDescription.HeadColor = Color3.new(0, 1, 0)
Configurazione di più accessori
Per le modifiche degli accessori a più livelli o in volumetria, puoi utilizzare HumanoidDescription:SetAccessories() per apportare aggiornamenti relativi agli accessori. Il seguente esempio di codice aggiunge un maglione a manica e una giacca in quel modo a HumanoidDescription :
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)
Applicazione di HumanoidDescription
Applica HumanoidDescription a Humanoid caratteri specifici nella tua esperienza con Humanoid:ApplyDescription() o 1> Class.Player:LoadCharacterWithHumanoidDescription1> .
Su un personaggio singolo
ApplyDescription() può mirare su qualsiasi Humanoid . Usa il seguente codice per aggiungere un nuovo paio di occhiali da sole e un nuovo torso al personaggio del giocatore:
local humanoid = player.Character and player.Character:FindFirstChildWhichIsA("Humanoid")if humanoid thenlocal descriptionClone = humanoid:GetAppliedDescription()descriptionClone.Torso = 86500008-- Sono consentiti più accessori del viso in una Stringaseparata da un punto virgoladescriptionClone.FaceAccessory = descriptionClone.FaceAccessory .. ",2535420239"-- Applica "descriptionClone" modificato per l'uomoidehumanoid:ApplyDescription(descriptionClone)end
Su tutti i personaggi del giocatore
Usa il seguente codice di esempio per applicare un HumanoidDescription a tutti i giocatori attuali nel Gioco:
local Players = game:GetService("Players")for _, player in Players:GetPlayers() dolocal humanoid = player.Character and player.Character:FindFirstChildWhichIsA("Humanoid")if humanoid then-- Crea una descrizione umanoidelocal humanoidDescription = Instance.new("HumanoidDescription")humanoidDescription.HatAccessory = "2551510151,2535600138"humanoidDescription.BodyTypeScale = 0.1humanoidDescription.ClimbAnimation = 619521311humanoidDescription.Face = 86487700humanoidDescription.GraphicTShirt = 1711661humanoidDescription.HeadColor = Color3.new(0, 1, 0)humanoid:ApplyDescription(humanoidDescription)endend
Su tutti i personaggi che si generano
Usa il seguente codice di esempio per impostare un HumanoidDescription specifico per tutti i personaggi di gioco che si generano:
local Players = game:GetService("Players")
-- Interrompi la generazione automatica in modo che possa essere eseguita nella Richiama"PlayerAdded"
Players.CharacterAutoLoads = false
local function onPlayerAdded(player)
-- Crea una descrizione umanoide
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 Descrizione Umana
player:LoadCharacterWithHumanoidDescription(humanoidDescription)
end
-- Connetti l'evento "PlayerAdded" alla funzione "onPlayerAdded()"
Players.PlayerAdded:Connect(onPlayerAdded)
Se l'istanza HumanoidDescription è stata creata nell' HumanoidDescription e parented allo workspace, usa il seguente codice di esempio in un Script per accedere all'istanza dello workspace:
local Players = game:GetService("Players")
-- Interrompi la generazione automatica in modo che possa essere eseguita nella Richiama"PlayerAdded"
Players.CharacterAutoLoads = false
local function onPlayerAdded(player)
-- Genera il personaggio con "workspace.StudioHumanoidDescription"
player:LoadCharacterWithHumanoidDescription(workspace.StudioHumanoidDescription)
end
-- Connetti l'evento "PlayerAdded" alla funzione "onPlayerAdded()"
Players.PlayerAdded:Connect(onPlayerAdded)