Uiterlijk van het personage

*Deze inhoud is vertaald met behulp van AI (bèta) en kan fouten bevatten. Klik hier om deze pagina in het Engels te bekijken.

De meeste spellen laten spelers hun eigen Roblox-avatar gebruiken, hoewel sommige een aanpassingssysteem in het spel implementeren, zoals de UGC Homestore sjabloon. Andere spellen maken beperkte wijzigingen aan spelersavatars, zoals helmen, vleugels of accessoires die passen bij het genre.

Om een uniek spel te creëren dat het uiterlijk van je gebruikers verandert, kun je de standaard karaktereigenschappen aanpassen via avatarinstellingen of een handmatig aangepast uiterlijk.

Globale avatarinstellingen

De Bestand ⟩ Avatarinstellingen van Studio stelt je in staat om snel verschillende globale eigenschappen van spelerspersonages in je spel in te stellen. Deze instellingen zijn globaal van toepassing op alle spelersmodelen die je spel betreden. Om specifieke personages te wijzigen, zoals niet-speler personagemodellen, zie handmatig aangepast uiterlijk.

In dit venster kun je verschillende presets instellen voor kleding, accessoires, lichaamsdelen, botsingsgedrag, animaties en meer. Wanneer je deze instellingen bewerkt, wordt een voorbeeld van de toegepaste instellingen weergegeven in de werkruimte.

Voor meer informatie, zie Avatarinstellingen.

Handmatig aangepast uiterlijk

Karaktermodellen bevatten een Humanoid object dat het model speciale kenmerken geeft, zoals lopen, springen, items uitrusten en interactie met de omgeving.

Je kunt een Humanoid programmatisch aanpassen door HumanoidDescription bij te werken. Dit omvat spelersmodellen of niet-speler personagemodellen in je spel.

Je kunt de volgende karaktereigenschappen in je spel aanpassen met HumanoidDescription:

KaraktereigenschapBeschrijving
SchaalNumerieke waarden voor fysieke eigenschappen hoogte, breedte, hoofd, lichaamstype en proportie. Dit heeft geen invloed op R6-lichaamstypes.
AccessoiresDe asset-ID's van accessoires die door een karakter zijn uitgerust.
Classic KledingDe asset-ID's van de Shirt, Pants en ShirtGraphic afbeeldings-texturen die je op het karakter kunt toepassen.
LichaamsdeelDe asset-ID's van de Gezicht, Hoofd, Torso, RechterArm, LinkerArm, RechterBeen en LinkerBeen delen van een karakter.
LichaamskleurenDe BodyColors van de individuele delen van het karakter.
AnimatiesDe asset-ID's van Animaties die je op een karakter kunt gebruiken.

Pas een karakter aan met HumanoidDescription met de volgende stappen:

  1. Maak een beschrijving van het karakter van de gebruiker, een specifieke Outfit-ID of van een specifieke Gebruikers-ID.
  2. Wijzig de beschrijving om de eigenschappen aan te passen die je wilt toepassen op het Humanoid karakter.
  3. Pas de beschrijving toe op een enkel karakter, alle spelerspersonages of zelfs op alle spawende personages.

Maak HumanoidDescription

Je kunt een nieuwe HumanoidDescription instantie direct binnen de Explorer hiërarchie of binnen een Script maken met de volgende code:

Maak een nieuwe HumanoidDescription instantie
local humanoidDescription = Instance.new("HumanoidDescription")

In de meeste gevallen moet je een bestaande HumanoidDescription gebruiken in plaats van een standaard nieuwe HumanoidDescription door te verwijzen naar een bestaand spelerskarakter, avataroutfit of gebruikers-ID.


Van het spelerskarakter

Gebruik het volgende codevoorbeeld om een nieuwe HumanoidDescription te maken op basis van de huidige eigenschappen van het spelerskarakter:

Genereer een HumanoidDescription van een spelerskarakter
local humanoid = player.Character and player.Character:FindFirstChildWhichIsA("Humanoid")
local humanoidDescription = Instance.new("HumanoidDescription")
if humanoid then
humanoidDescription = humanoid:GetAppliedDescription()
end

Van een bestaande outfit

Gebruik de volgende voorbeeldcode om een HumanoidDescription te maken van een outfit-ID met Players.GetHumanoidDescriptionFromOutfitID:

Genereer een HumanoidDescription van een Outfit-ID
local Players = game:GetService("Players")
local outfitId = 480059254
local humanoidDescriptionFromOutfit = Players:GetHumanoidDescriptionFromOutfitId(outfitId)

Van een specifieke gebruiker

Gebruik de volgende voorbeeldcode om een HumanoidDescription te maken van een gebruikers-ID met Players:GetHumanoidDescriptionFromUserId():

Genereer een HumanoidDescription van een gebruikers-ID
local Players = game:GetService("Players")
local userId = 491243243
local humanoidDescriptionFromUser = Players:GetHumanoidDescriptionFromUserId(userId)

Wijzig HumanoidDescription

Om HumanoidDescription eigenschappen aan te passen, stel je ze direct in op de HumanoidDescription of gebruik je een specifieke methode voordat je de HumanoidDescription op een karakter toepast.

Het volgende codevoorbeeld geeft voorbeelden van het instellen van de verschillende soorten HumanoidDescription eigenschappen:

Werk verschillende HumanoidDescription eigenschappen bij
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)

Stel meerdere accessoires in

Voor gelaagde of bulkaccessoirewijzigingen kun je HumanoidDescription:SetAccessories() gebruiken om accessoires gerelateerde updates te maken. Het volgende codevoorbeeld voegt een gelaagde trui en jas in die volgorde toe aan een HumanoidDescription:

Verander meerdere accessoires tegelijk
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)

Pas HumanoidDescription toe

Pas HumanoidDescription toe op specifieke Humanoid personages in je spel met Humanoid:ApplyDescription() of Humanoid.LoadCharacterWithHumanoidDescription.

Op een enkel karakter

ApplyDescription() kan elk Humanoid targeten. Gebruik de volgende code om een nieuw paar zonnebrillen en een nieuwe torso aan het spelerskarakter toe te voegen:

Werk HumanoidDescription bij voor een specifiek spelerskarakter
local humanoid = player.Character and player.Character:FindFirstChildWhichIsA("Humanoid")
if humanoid then
local descriptionClone = humanoid:GetAppliedDescription()
descriptionClone.Torso = 86500008
-- Meerdere gezichtaccessoire-assets zijn toegestaan in een door komma's gescheiden string
descriptionClone.FaceAccessory = descriptionClone.FaceAccessory .. ",2535420239"
-- Pas de gewijzigde "descriptionClone" toe op humanoid
humanoid:ApplyDescription(descriptionClone)
end

Op alle spelerspersonages

Gebruik de volgende voorbeeldcode om een HumanoidDescription toe te passen op alle huidige spelers in het spel:

Werk HumanoidDescription bij voor alle huidige spelerspersonages
local Players = game:GetService("Players")
for _, player in Players:GetPlayers() do
local humanoid = player.Character and player.Character:FindFirstChildWhichIsA("Humanoid")
if humanoid then
-- Maak een 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

Op alle spawende personages

Gebruik de volgende voorbeeldcode om een specifieke HumanoidDescription in te stellen voor alle spawende spelerspersonages:

Werk HumanoidDescription bij voor alle spawende personages
local Players = game:GetService("Players")
-- Stop automatische spawning zodat het kan worden gedaan in de "PlayerAdded" callback
Players.CharacterAutoLoads = false
local function onPlayerAdded(player)
-- Maak een 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 karakter met de HumanoidDescription
player:LoadCharacterWithHumanoidDescription(humanoidDescription)
end
-- Verbind de "PlayerAdded" gebeurtenis met de "onPlayerAdded()" functie
Players.PlayerAdded:Connect(onPlayerAdded)

Als de HumanoidDescription instantie in de Explorer is gemaakt en aan de werkruimte is gekoppeld, gebruik dan de volgende voorbeeldcode in een Script om toegang te krijgen tot de werkruimte-instantie:

local Players = game:GetService("Players")
-- Stop automatische spawning zodat het kan worden gedaan in de "PlayerAdded" callback
Players.CharacterAutoLoads = false
local function onPlayerAdded(player)
-- Spawn karakter met "workspace.StudioHumanoidDescription"
player:LoadCharacterWithHumanoidDescription(workspace.StudioHumanoidDescription)
end
-- Verbind de "PlayerAdded" gebeurtenis met de "onPlayerAdded()" functie
Players.PlayerAdded:Connect(onPlayerAdded)

Gelaagde accessoires op niet-R15

Gecage accessoires, zoals gelaagde accessoires, gebruiken WrapTarget en WrapLayer om uit te rekken en over een doel Model te wikkelen. Gelaagde accessoires kunnen werken met zowel standaard spelerspersonages als niet-R15 modellen.

Aangepaste implementatie van gelaagde accessoires, zoals een model dat een unieke cage UV-kaart gebruikt, kan niet worden geüpload en gepubliceerd naar de Marketplace. Je kunt echter aangepaste cage-meshes maken voor in-game assets zoals gebouwen, spel-specifieke kleding en props.

Of je nu gelaagde accessoires implementeert op een R15 rigging armature, of een aangepaste rig gebruikt, zorg ervoor dat je accessoires en lichamen de volgende bevatten:

  • Het doelmodel, meestal het lichaam, heeft een WrapTarget component op de meshes waarover aanvullende modellen bedoeld zijn om te wikkelen.
  • Het layeringmodel, meestal de kleding of accessoire, heeft een WrapLayer component op de meshes die bedoeld zijn om het doelmodel te wikkelen.
  • De buitenste cage van het doelmodel, en de binnenste en buitenste cage van het layeringmodel hebben overeenkomende UV-kaarten.
    • De overeenkomstige vertices op de doelcage moeten dezelfde UV's hebben als die vertices op de layer cage.
  • Als je doelmodel geen R15 is, of geen Humanoid bevat, moet je een Weld object aan de layering MeshPart toevoegen.
    • De Weld moet Part0 en Part1 hebben ingesteld om de layering MeshPart te koppelen aan de Part-hiërarchie van het Model. Bijvoorbeeld, Part0 verwijst naar de accessoire en Part1 verwijst naar de bovenliggende Part.
  • Als je doelmodel zowel R15 is als een Humanoid bevat, wordt deze las automatisch gemaakt.
©2026 Roblox Corporation. Roblox, het Roblox-logo en Powering Imagination behoren tot onze geregistreerde en niet-geregistreerde handelsmerken in de VS en andere landen.