La plupart des expériences permettent aux joueurs d'utiliser leur propre avatar Roblox, bien que certaines implémentent un système de personnalisation dans l'expérience comme le module Booth de marchandises. D'autres expériences apportent des modifications limitées aux avatars des joueurs tels que des casques, des ailes ou des accessoires qui correspondent au genre.
Pour créer une expérience unique qui modifie l'apparence de vos utilisateurs, vous pouvez personnaliser les propriétés de personnage par défaut avec les éléments suivre:
- Configurez les Paramètres du jeu pour définir les paramètres d'apparence globaux de l'avatar pour tous les utilisateurs.
- Utilisez Description humanoïde à tout moment pour appliquer une large gamme de personnalisations de personnages spécifiques à un ou plusieurs utilisateurs dans votre expérience.
Paramètres de jeu
La section Avatar dans le menu Paramètres du jeu vous permet de définir rapidement plusieurs propriétés de personnages dans votre expérience. Lors de l'édition des paramètres d'avatar, votre avatar s'affiche dans le presse-papiers comme une vue aperçue visuelle.
Vous pouvez ajuster les propriétés de personnage suivantes dans votre expérience en utilisant les paramètres de jeu d'avatar :
Paramètre | Description |
---|---|
Préset | Applique un ensemble commun de BodyTypeScale et ProportionScale combinaisons. Vous pouvez ajuster ces propriétés avec HumanoidDescription après avoir sélectionné un préset. |
Type d'avatar | Définit le type d'avatar par défaut R15 ou R6 . |
Animation | Le ensemble de Animations qu'un utilisateur a accès. |
Collision | Définit les limites de collision pour les personnages dans l'expérience. |
Parties du corps | Les ID des ressources des Face, Head, Class.HumanoidDescription.Torso|Torso</ |
Vêtements | Les ID de ressources des Shirt, Pants, et ShirtGraphic image textures que vous pouvez appliquer au personnage. |
Types d'avatar
La Type d'avatar réglage démarre votre expérience pour ne charger que R15 ou R6 modèles de personnages.
R15 est l'avatar moderne par défaut avec 15 membres. Ce modèle d'avatar permet une plus grande flexibilité, des options d'accessoires et des animations.
R6 est un avatar simple classique avec 6 membres. Ce type d'avatar fournit un sentiment rétro mais est limité dans les animations et la personnalisation. Les modifications de la propriété de l'échelle du corps n'affectent pas les R6 caractères.
Limites de collision
La Collision réglage définit les limites de collision pour les personnages dans l'expérience. Cela n'affecte pas l'apparence physique des personnages dans votre expérience.
En activant cette option, vous boîte extérieure , les boîtes de collision des personnages en fonction de leurs modèles individuels. Ceci est le paramètre par défaut et recommandé pour la plupart des expériences.
En définissant cette option sur boîte interne , vous fournissez des limites de collision fixes pour tous les personnages dans votre expérience.
Description humanoïde
Les modèles de personnages jouables contiennent un Humanoid objet qui permet au modèle des fonctionnalités spéciales, telles que la marche, le saut, l'équipement d'objets et l'interaction avec l'environnement. Pour personnaliser l'apparence d'un Humanoid personnage, vous pouvez appliquer un nouveau HumanoidDescription pour modifier les propriétés du personnage.
Vous pouvez ajuster les propriétés de caractère suivantes dans votre expérience en utilisant HumanoidDescription :
Propriété de caractère | Description |
---|---|
Échelle | Numéros de valeurs pour les propriétés physiques height , width , head , 1> Class.HumanoidDescription.BodyTypeScale|body taper |
Accessoires | Les ID des ressources de accessories équipées par un personnage. |
Vêtements classiques | Les ID de ressources du Shirt, Pants, et ShirtGraphic image textures que vous pouvez appliquer au personnage. |
Partie du corps | Les ID des ressources des Face, Head, Class.HumanoidDescription.Torso|Torso</ |
Couleurs corps | Le BodyColors des parties individuelles du personnage. |
Animations | Les ID de ressources de Animations que vous pouvez utiliser sur un personnage. |
Vous pouvez personnaliser un personnage avec HumanoidDescription en utilisant les étapes suivantes :
- Créer une description à partir du personnage de l'utilisateur, d'un ID de tenue spécifique ou d'un ID d'utilisateur spécifique.
- Modify the description pour personnaliser les propriétés que vous souhaitez appliquer au personnage Humanoid.
- Appliquez la description sur un seul personnage, tous les personnages joueurs ou même sur tous les personnages d'apparition.
Créer une description humanoïde
Vous pouvez créer une nouvelle instance HumanoidDescription directement dans la hiérarchie Explorer ou dans un Script avec le code suivant :
local humanoidDescription = Instance.new("HumanoidDescription")
Dans la plupart des cas, vous devriez utiliser un HumanoidDescription existant au lieu d'un nouveau HumanoidDescription par référence à un playerCharacter existant, 2>avatar outfit2> ou 5>User ID5>.
À partir du personnage du joueur
Utilisez l'exemple de code suivant pour créer une nouvelle HumanoidDescription basée sur les propriétés actuelles du personnage du joueur :
local humanoid = player.Character and player.Character:FindFirstChildWhichIsA("Humanoid")local humanoidDescription = Instance.new("HumanoidDescription")if humanoid thenhumanoidDescription = humanoid:GetAppliedDescription()end
À partir d'une tenue existante
Utilisez le code d'exemple suivant pour créer un HumanoidDescription à partir d'un ID de tenue en utilisant Players.GetHumanoidDescriptionFromOutfitID :
local Players = game:GetService("Players")local outfitId = 480059254local humanoidDescriptionFromOutfit = Players:GetHumanoidDescriptionFromOutfitId(outfitId)
À partir d'un utilisateur spécifique
Utilisez le code de HumanoidDescription suivant pour créer un Players:GetHumanoidDescriptionFromUserId() à partir d'un ID d'utilisateur en utilisant Class.Players:GetHumanoidDescriptionFromUserId() :
local Players = game:GetService("Players")local userId = 491243243local humanoidDescriptionFromUser = Players:GetHumanoidDescriptionFromUserId(userId)
Modification de la description humanoïde
Pour personnaliser les propriétés HumanoidDescription, définissez-les directement sur le HumanoidDescription ou utilisez une méthode spécifiée avant d'appliquer le HumanoidDescription à un personnage.
L'exemple de code suivant fournit des exemples de la façon de définir les différents types de propriétés 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)
Configurer plusieurs accessoires
Pour les changements d'accessoires à plusieurs niveaux ou en masse, vous pouvez utiliser HumanoidDescription:SetAccessories() pour faire des mises à jour liées aux accessoires. L'exemple de code suivant ajoute un pull à manches et un veste à manches dans cet ordre à un 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)
Description appliquée du humanoid
Appliquez HumanoidDescription à des personnages spécifiques Humanoid dans votre expérience avec Humanoid:ApplyDescription() ou 1> Class.Player:LoadCharacterWithHumanoidDescription1> .
Sur un seul personnage
ApplyDescription() peut cibler n'importe lequel Humanoid . Utilisez le code suivant pour ajouter une nouvelle paire de lunettes de soleil et un nouveau torse au personnage du joueur :
local humanoid = player.Character and player.Character:FindFirstChildWhichIsA("Humanoid")if humanoid thenlocal descriptionClone = humanoid:GetAppliedDescription()descriptionClone.Torso = 86500008-- Plusieurs ressources d'accessoires de visage sont autorisées dans une chaîne séparée par des virgulesdescriptionClone.FaceAccessory = descriptionClone.FaceAccessory .. ",2535420239"-- Appliquer « Description de clonage modifiée » à l'humanoïdehumanoid:ApplyDescription(descriptionClone)end
Sur tous les personnages de joueur
Utilisez le code d'échantillon suivant pour appliquer un HumanoidDescription à tous les joueurs actuels dans le jeu :
local Players = game:GetService("Players")for _, player in Players:GetPlayers() dolocal humanoid = player.Character and player.Character:FindFirstChildWhichIsA("Humanoid")if humanoid then-- Créer une description humanoïdelocal 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
Sur tous les personnages générés
Utilisez le code d'échantillon suivant pour définir un HumanoidDescription spécifique pour tous les personnages de joueur générés :
local Players = game:GetService("Players")
-- Arrêter la génération automatique afin qu'elle puisse être effectuée dans le rappel « PlayerAdded »
Players.CharacterAutoLoads = false
local function onPlayerAdded(player)
-- Créer une description humanoïde
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)
-- Générer un personnage avec la description Humanoïde
player:LoadCharacterWithHumanoidDescription(humanoidDescription)
end
-- Connectez l'événement "PlayerAdded" à la fonction "onPlayerAdded()"
Players.PlayerAdded:Connect(onPlayerAdded)
Si l'instance HumanoidDescription a été créée dans l'Explorateur et est parentée à l'espace de travail, utilisez le code d'exemple suivant dans un Script pour accéder à l'instance de l'espace de travail :
local Players = game:GetService("Players")
-- Arrêter la génération automatique afin qu'elle puisse être effectuée dans le rappel « PlayerAdded »
Players.CharacterAutoLoads = false
local function onPlayerAdded(player)
-- Fais apparaître le personnage avec "workspace.StudioHumanoidDescription"
player:LoadCharacterWithHumanoidDescription(workspace.StudioHumanoidDescription)
end
-- Connectez l'événement "PlayerAdded" à la fonction "onPlayerAdded()"
Players.PlayerAdded:Connect(onPlayerAdded)