Die meisten Erlebnisse erlauben Spielern, ihren eigenen Roblox-Avatar zu verwenden, obwohl einige ein In-Experience-Anpassungssystem wie das Merch Booth-Modul implementieren. Andere Erlebnisse machen Modifikationen an Spieler-Avataren wie Helme, Flügel oder Zubehör, die dem Genre entsprechen.
Um ein einzigartiges Erlebnis zu erstellen, das die Aussehen deiner Benutzer ändert, kannst du die Standard-Charakter-Eigenschaften mit dem gefolgte Profileanpassen:
- Konfigurieren Sie die Avatar- Game-Einstellungen, um grundlegende globale Avatar-Aussehen-Standard für alle Benutzer festzulegen.
- Verwenden Sie HumanoidDescription an jedem Punkt, um eine Vielzahl von spezifischen Charakteranpassungen auf ein oder mehrere Benutzer in Ihrem Erlebnis anzuwenden.
Spieleinstellungen
Der Avatar-Button in Spieloptionen-Menü ermöglicht es Ihnen, mehrere globale Charakter属性 in Ihrem Erlebnis schnell zu setzen. Wenn Sie die Avatar-Game-Einstellungen bearbeiten, wird Ihr Avatar in der Arbeitsumgebung als visuelle Vorschau angezeigt.
Du kannst die folgenden Charakter-Eigenschaften in deiner Erfahrung anpassen, indem du die Avatar-Spieleinstellungen verwendest:
Einstellungen | Beschreibung |
---|---|
Voreinstellungen | Gilt ein gemeinsames Set von BodyTypeScale und ProportionScale Kombinationen. Du kannst diese Eigenschaften mit HumanoidDescription nach dem Auswählen eines Voreinstellungsmodells anpassen. |
Avatar-Typ | Setzt den Standard Avatar-Typ auf entweder R15 oder R6 . |
Animation | Das Set von Animations , auf das ein Benutzer zugreifen kann. |
Kollision | Setzt die Kollisionsgrenzen für Charaktere in der Erlebnis. |
Körperteile | Die Asset-IDs der Face, Head, Class.HumanoidDescription.Torso|Torso |
Kleidung | Die Asset-IDs der klassischen Shirt , Pants und ShirtGraphic -Bilder, die Sie auf den Charakter anwenden können. |
Avatar-Typen
Die Avatar-Typ-Einstellung setzt Ihre Erfahrung auf nur R15 oder R6 Charaktermodelle zu laden.
R15 ist der Standard-moderne Avatar mit 15 Gliedmaßen. Dieser Avatar ermöglicht eine größere Flexibilität, Zubehöroptionen und Animationen.
R6 ist ein klassischer einfacher Avatar mit 6 Gliedmaßen. Dieser Avatar-Typ bietet einen Retro-Einfühlung, ist aber in Animationen und zusätzlichen Anpassungen begrenzt. Änderungen am Körperskalierungs-Eigenschaft betreffen nicht R6 -Charaktere.
Kollisionsgrenzen
Die Kollisions-Einstellung setzt die Kollisionsgrenzen für Charaktere im Erlebnis. Dies hat keinen Einfluss auf das physische Aussehen der Charaktere in deinem Erlebnis.
Durch das Festlegen dieser Option auf Außerbox wird die dynamische Größe der Zusammenstoßkisten von Charaktern basierend auf ihren einzelnen Modellen ermittelt. Dies ist die Standard- und empfohlene Einstellung für die meisten Erlebnisse.
Durch das Festlegen dieser Option auf Inner Box werden für alle Charaktere in deiner Erlebnisfeste Zusammenstoßgrenzen bereitgestellt.
Menschliche Beschreibung
Spielbare Charaktermodelle enthalten ein Humanoid -Objekt, das die modellspezifischen Merkmale, wie z. B. das Gehen, das Springen, das Ausrüsten von Gegenständen und das Interagieren mit der Umgebung, ermöglicht. Um die Aussehen eines Humanoid -Charakters zu personalisieren, kannst du ein neues HumanoidDescription anwenden, um die Mer
Du kannst die folgenden Charakter-Eigenschaften in deiner Erfahrung anpassen, indem du HumanoidDescription verwendest:
Charakter-Eigenschaft | Beschreibung |
---|---|
Skala | Zahlwerte für physische Merkmale height , width , head , 1> Class.HumanoidDescription.BodyTypeScale|körpertyп1> und < |
Zubehör | Die Asset-IDs von accessories ausgerüstet von einem Charakter. |
klassische Kleidung | Die Asset-IDs der Shirt, Pants und ShirtGraphic-Bilder, die Sie auf den Charakter anwenden können. |
Körperteil | Die Asset-IDs der Face, Head, Class.HumanoidDescription.Torso|Torso |
Rumpffarben | Die BodyColors der einzelnen Teile des Charakters. |
Animationen | Die Asset-IDs von Animations können Sie auf einem Charakter verwenden. |
Du kannst einen Charakter mit HumanoidDescription anpassen, indem du die folgenden Schritte ausführst:
- Erstellen Sie eine Beschreibung von dem Charakter des Benutzers, einer bestimmten Outfit-ID oder von einer bestimmten Benutzer-ID.
- Ändere die Beschreibung, um die Eigenschaften zu ändern, die du auf den Humanoid Charakter anwenden möchtest.
- Beschreibung auf einem einzelnen Charakter, allen Spielernamen, oder sogar auf allen spawnenden Charakter anwenden.
HumanoidDescription erstellen
Du kannst eine neue HumanoidDescription Instanz direkt innerhalb der Explorer-Hierarchie oder innerhalb eines Script mit dem folgenden Codeserstellen:
local humanoidDescription = Instance.new("HumanoidDescription")
In den meisten Fällen solltest du eine bestehende HumanoidDescription verwenden, anstatt einer Standard-neuen HumanoidDescription durch Verweisen auf einen bestehenden Spieler-Charakter, 2>Avatar-Outfit2> oder 5>Benutzer-ID5> .
Vom Spielercharakter
Verwenden Sie das folgende Codebeispiel, um eine neue HumanoidDescription auf der Grundlage der aktuellen Eigenschaften des Spielers zu erstellen:
local humanoid = player.Character and player.Character:FindFirstChildWhichIsA("Humanoid")local humanoidDescription = Instance.new("HumanoidDescription")if humanoid thenhumanoidDescription = humanoid:GetAppliedDescription()end
Von einem bestehenden Outfit
Verwenden Sie den folgenden Beispielcode, um ein HumanoidDescription von einem Outfit-ID zu erstellen, indem Sie Players.GetHumanoidDescriptionFromOutfitID verwenden:
local Players = game:GetService("Players")local outfitId = 480059254local humanoidDescriptionFromOutfit = Players:GetHumanoidDescriptionFromOutfitId(outfitId)
Von einem bestimmten Benutzer
Verwenden Sie den folgenden Beispielcode, um einen HumanoidDescription von einem Benutzer-ID mit Players:GetHumanoidDescriptionFromUserId() zu erstellen:
local Players = game:GetService("Players")local userId = 491243243local humanoidDescriptionFromUser = Players:GetHumanoidDescriptionFromUserId(userId)
HumanoidDescription ändern
Um HumanoidDescription Eigenschaften anzupassen, setzen Sie sie direkt auf das HumanoidDescription oder verwenden Sie eine bestimmte Methode vor dem Anwenden des HumanoidDescription an einen Charakter.
Das folgende Codebeispiel zeigt Beispiele für die Einstellung der verschiedenen Arten von HumanoidDescription-Eigenschaften:
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)
Mehrere Zubehörteile einstellen
Für mehrschichtige oder Bulk-Anpassungen kannst du HumanoidDescription:SetAccessories() verwenden, um Zubehör-bezogene Updates vorzunehmen. Das folgende Codebeispiel fügt einen mehrschichtigen Sweater und eine Jacke in dieser Reihenfolge zu HumanoidDescription hinzu.
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)
HumanoidDescription anwenden
Apply HumanoidDescription to specific Humanoid characters in your experience with Humanoid:ApplyDescription() or 1> Class.Player:LoadCharacterWithHumanoidDescription1> .
Auf einem einzelnen Zeichen
ApplyDescription() kann auf jeden Humanoid zielen. Verwenden Sie den folgenden Code, um ein neues Paar von Sonnenbrillen und einen neuen Torso dem Spieler-Charakter hinzuzufügen:
local humanoid = player.Character and player.Character:FindFirstChildWhichIsA("Humanoid")if humanoid thenlocal descriptionClone = humanoid:GetAppliedDescription()descriptionClone.Torso = 86500008-- Mehrere Gesichts-Accessoires werden in einem Komma getrenntdescriptionClone.FaceAccessory = descriptionClone.FaceAccessory .. ",2535420239"-- Apply modified "descriptionClone" to humanoidhumanoid:ApplyDescription(descriptionClone)end
Auf allen Spielercharakter
Verwenden Sie den folgenden Beispielcode, um einen HumanoidDescription auf alle aktuellen Spieler im Spiel anzuwenden:
local Players = game:GetService("Players")for _, player in Players:GetPlayers() dolocal humanoid = player.Character and player.Character:FindFirstChildWhichIsA("Humanoid")if humanoid then-- Erstellen Sie eine HumanoidDescriptionlocal 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
Auf allen spawnenden Zeichen
Verwenden Sie den folgenden Beispielcode, um einen bestimmten HumanoidDescription für alle spawnenden Spielercharaktere festzulegen:
local Players = game:GetService("Players")
-- Stoppen Sie das automatische Spawnen, damit es im "PlayerAdded"-Callback getan werden kann
Players.CharacterAutoLoads = false
local function onPlayerAdded(player)
-- Erstellen Sie eine 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)
-- Spawnen Sie den Charakter mit der HumanoidDescription
player:LoadCharacterWithHumanoidDescription(humanoidDescription)
end
-- Verbinden Sie das Ereignis "PlayerAdded" mit der Funktion "onPlayerAdded()"
Players.PlayerAdded:Connect(onPlayerAdded)
Wenn die HumanoidDescription Instanz im Explorer erstellt wurde und der Arbeitsbereich zugewiesen ist, verwenden Sie den folgenden Beispielcode in einem Script, um auf die Arbeitsbereich-Instanz zuzugreifen:
local Players = game:GetService("Players")
-- Stoppen Sie das automatische Spawnen, damit es im "PlayerAdded"-Callback getan werden kann
Players.CharacterAutoLoads = false
local function onPlayerAdded(player)
-- Charakter mit "workspace.StudioHumanoidDescription" spawnen
player:LoadCharacterWithHumanoidDescription(workspace.StudioHumanoidDescription)
end
-- Verbinden Sie das Ereignis "PlayerAdded" mit der Funktion "onPlayerAdded()"
Players.PlayerAdded:Connect(onPlayerAdded)