キャラクターの外見

*このコンテンツは、ベータ版のAI(人工知能)を使用して翻訳されており、エラーが含まれている可能性があります。このページを英語で表示するには、 こちら をクリックしてください。

ほとんどのエクスペリエンスでは、プレイヤーが自分の Roblox アバターを使用できますが、一部は UGCホームストア テンプレートのような経験内のカスタマイズシステムを実装しています。他のエクスペリエンスは、ヘルメット、ウィング、またはジャンルに合うアクセサリーなどのプレイヤーアバターに限られた 修正 を行います。

ユーザーの外観を変更するユニークなエクスペリエンスを作成するには、フォロー中の手順でデフォルトのキャラクタープロパティをカスタマイズできます:

  • アバター ゲーム設定 を構成して、すべてのユーザーに対する基本的なグローバルアバターの外観デフォルトを設定します。
  • ヒューマノイド説明 を任意の時点で使用して、エクスペリエンスの 1人または複数のユーザーに幅広い種類の特定のキャラクターカスタマイズを適用します。

ゲーム設定

ゲーム設定 メニューの アバター セクションでは、エクスペリエンス内の複数のグローバルキャラクタープロパティを素早く設定できます。アバターゲーム設定を編集すると、アバターがワークスペースにビジュアルプレビューとして表示されます。

アバターゲーム設定を使用して、エクスペリエンスで次のキャラクタープロパティを調整できます:

設定説明
プリセット共通の BodyTypeScaleProportionScale の組み合わせを適用します。プリセットを選択後、HumanoidDescription でこれらのプロパティをさらに調整できます。
アバタータイプデフォルトの アバタータイプR15 または R6 に設定します。
アニメーションユーザーがアクセスできる Animations のセット。
衝突エクスペリエンス内のキャラクターの 衝突境界 を設定します。
ボディパーツキャラクターの Face , Head , Torso , RightArm , LeftArm , RightLeg および LeftLeg 部分のアセットID。
服装クラシックの ShirtPants 、および ShirtGraphic キャラクターに適用できる画像テクスチャのアセットID

アバタータイプ

アバタータイプ 設定は、エクスペリエンスを R15 または R6 キャラクターモデルのみ読み込むように設定します。

  • R15 は、15本の手足を持つデフォルトのモダンなアバターです。このアバターでは、より柔軟なカスタマイズ、アクセサリオプション、アニメーションが可能になります。

  • R6 は、6本の腕を持つクラシックなシンプルなアバターです。このアバタータイプは、レトロな感覚を提供しますが、アニメーションと追加のカスタマイズが制限されています。ボディスケールプロパティの変更は R6 文字に影響しません。

R15 キャラクタモデル。
>

R6 キャラクタモデル。
>

衝突境界

衝突 設定は、エクスペリエンス内のキャラクターの衝突境界を設定します。これは、エクスペリエンスの中のキャラクターの物理的な外観に影響しません。

このオプションを 外箱 に設定すると、キャラクターの個々のモデルに基づいてコライドンボックスのサイズが動的に設定されます。これは、ほとんどのエクスペリエンスのデフォルトと推奨設定です。

このオプションを 内部ボックス に設定すると、エクスペリエンス内のすべてのキャラクターに固定された衝突境界が提供されます。

ヒューマノイドの説明

プレイ可能なキャラクタモデルには、歩行、ジャンプ、アイテム装備、環境との対話などのモデル特徴を許可する Humanoid オブジェクトが含まれています。Humanoid キャラクターの外外見をカスタマイズするには、新しい HumanoidDescription を適用してキャラクタープロパティを変更できます。

HumanoidDescription を使用して、エクスペリエンスで次のキャラクタープロパティを調整できます:

キャラクタプロパティ説明
スケール物理特性の数値 height , width , head , body type および proportion には、R6 ボディタイプに影響しません。
アクセサリキャラクターによって装備されたアセット ID accessories
クラシック衣装キャラクターに適用できる Shirt , Pants , そして ShirtGraphic 画像テクスチャのアセットID
ボディパーツキャラクターの Face , Head , Torso , RightArm , LeftArm , RightLeg および LeftLeg 部分のアセットID。
ボディの色キャラクターの個々のパーツの BodyColors
アニメーションキャラクターで使用できるアセット ID Animations

次の手順を使用して、HumanoidDescription を使用してキャラクターをカスタマイズできます:

  1. 説明を変更して、Humanoidに適用したいプロパティをカスタマイズする

ヒューマノイドの説明を作成

エクスプローラー階層内または以下のコードで 新しいインスタンスを直接作成できます:


local humanoidDescription = Instance.new("HumanoidDescription")

ほとんどの場合、既存の HumanoidDescription を使用して、デフォルトの新規 HumanoidDescription を参照して、既存のプレイヤーキャラクターアバター衣装、または ユーザーID を参照して、デフォルトの新規を使用する必要はありません。

プレイヤーキャラクターから

次のコードサンプルを使用して、プレイヤーキャラクターの現在のプロパティに基づいて新しい HumanoidDescription を作成します:


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

既存の衣服から

次のサンプルコードを使用して、HumanoidDescription を衣装IDを使用して作成します:Players.GetHumanoidDescriptionFromOutfitID :


local Players = game:GetService("Players")
local outfitId = 480059254
local humanoidDescriptionFromOutfit = Players:GetHumanoidDescriptionFromOutfitId(outfitId)

特定のユーザから

次のサンプルコードを使用して、HumanoidDescription をユーザーIDを使用して作成します:Players:GetHumanoidDescriptionFromUserId() :


local Players = game:GetService("Players")
local userId = 491243243
local humanoidDescriptionFromUser = Players:GetHumanoidDescriptionFromUserId(userId)

ヒューマノイドの説明を修正

HumanoidDescription プロパティをカスタマイズするには、HumanoidDescription に直接設定するか、HumanoidDescription をキャラクターに適用する前に指定されたメソッドを使用します。

次のコードサンプルでは、異なる種類の 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)

複数のアクセサリを設定

レイヤーまたはバルクのアクセサリ変更の場合、HumanoidDescription:SetAccessories() を使用してアクセサリ関連の更新を行うことができます。次のコードサンプルでは、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)

ヒューマノイドの説明を適用

HumanoidDescription を適用して、Humanoid または Humanoid:ApplyDescription() でエクスペリエンスに特定の Humanoid.LoadCharacterWithHumanoidDescription キャラクターを追加します。

1つのキャラクター上で

ApplyDescription() は、どんな Humanoid でもターゲットにできます。次のコードを使用して、プレイヤーキャラクターに新しいサングラスと新しいトルソを追加します:


local humanoid = player.Character and player.Character:FindFirstChildWhichIsA("Humanoid")
if humanoid then
local descriptionClone = humanoid:GetAppliedDescription()
descriptionClone.Torso = 86500008
-- コンマ区切り文字列に複数の顔アクセサリアセットが許可されています
descriptionClone.FaceAccessory = descriptionClone.FaceAccessory .. ",2535420239"
-- 修正された「descriptionClone」をヒューマノイドに適用
humanoid:ApplyDescription(descriptionClone)
end

すべてのプレイヤーキャラクターについて

次のサンプルコードを使用して、ゲームのすべての現在のプレイヤーに HumanoidDescription を適用します:


local Players = game:GetService("Players")
for _, player in Players:GetPlayers() do
local humanoid = player.Character and player.Character:FindFirstChildWhichIsA("Humanoid")
if humanoid then
-- ヒューマノイドの説明を作成
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

すべてのスポーンキャラクターについて

次のサンプルコードを使用して、すべてのスポーンプレイヤーキャラクターに特定の HumanoidDescription を設定します:


local Players = game:GetService("Players")
-- 自動スポーンを停止して、「PlayerAdded」コールバックで行うことができます
Players.CharacterAutoLoads = false
local function onPlayerAdded(player)
-- ヒューマノイドの説明を作成
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)
-- HumanoidDescription でキャラクターをスポーンする
player:LoadCharacterWithHumanoidDescription(humanoidDescription)
end
-- 「PlayerAdded」イベントを「onPlayerAdded()」関数に接続
Players.PlayerAdded:Connect(onPlayerAdded)

If the HumanoidDescription instance was created in the Explorer and parented to the workspace, use the following sample code in a Script to access the workspace instanインスタンスe:


local Players = game:GetService("Players")
-- 自動スポーンを停止して、「PlayerAdded」コールバックで行うことができます
Players.CharacterAutoLoads = false
local function onPlayerAdded(player)
-- 「workspace.StudioHumanoidDescription」でキャラクターをスポーンする
player:LoadCharacterWithHumanoidDescription(workspace.StudioHumanoidDescription)
end
-- 「PlayerAdded」イベントを「onPlayerAdded()」関数に接続
Players.PlayerAdded:Connect(onPlayerAdded)