Robloxのほとんどすべては、ユニークな対応するIDを持つクラウドベースのアセットとして表現されています。このIDは通常、rbxassetid://[ID]の形式で、特定のアセットタイプに適したプロパティとしてさまざまなインスタンスに適用されます。たとえば、Texture、MeshPart、およびAudioPlayerインスタンスは、それぞれのColorMapContent、MeshId、およびAssetプロパティを通じて画像、メッシュ、およびオーディオアセットを参照します。
rbxassetid://7229442422

rbxassetid://6768917255

rbxassetid://9125402735
このクラウドベースのアセットシステムにより、Robloxを通じてアセットを保存し、さまざまなコンテキストでプラットフォーム全体で再利用することができます。たとえば、異なるオブジェクトや場所で、各保存されたStudioゲームの一部としてローカルコピーを維持することなく使用できます。数百万のプロジェクトアセットをCreator Storeで見つけたり、Marketplaceでアバターアセットを装備したり、自分のアセットを作成してインポートし、アセット管理ツールを通じて直接Studioに取り込むことができます。
アセットをインポートする際は、ユーザーが公開されたゲーム内でそれらを見たり操作したりできるようにする前に、モデレーションチェックを通過する必要があります。Robloxがインポートされたアセットを承認した後、プラットフォーム上での使用権を保持するか、アセットの権限に詳述されているように、公開可能にするかを選択できます。
アセットタイプ
プラットフォーム上で利用可能なすべてのアセットタイプは、一般的に3つのカテゴリのいずれかに分類されます。
- プロジェクトレベルのアイテムにマッピングされるアセット。これらのアセットは、Creator Dashboardで特定のゲーム用に見つけて構成できます。
- オブジェクトであるか、場所内のオブジェクトの外観や動作を変更するアセット。これらのアセットはインポートするか、Creator Storeで見つけることができます。
- アバターや非プレイ可能キャラクターの体、衣服、またはアニメーションを変更するアセット。これらのアセットはMarketplaceで見つけることができます。
すべてのアセットタイプは、プラットフォーム上のどこに存在するかによって異なる動作をします。各アセットタイプをゲーム、場所、およびアバターで使用する方法については、以下のセクションを参照してください。
ゲーム用
プロジェクトレベルのアイテムにマッピングされるアセットタイプは3つあります。これらのアセットタイプは、それらがマッピングされるゲームに固有であり、他のプロジェクトに転送することはできません。
- バッジ — バッジは、ゲーム内で目標を達成したユーザーに贈る特別な賞です。たとえば、難しい目標を達成したり、一定の時間プレイしたりした場合です。
- パス — パスは、ユーザーがゲーム内で特別な特権にアクセスするために一度限りのRobux料金を請求できるマネタイズ製品です。たとえば、制限されたエリアへの入場、ゲーム内アバターアイテム、または永続的なパワーアップなどです。
場所用
一般的に、場所用のアセットタイプには、インポートするか、Creator Storeで見つけることができる2つのカテゴリがあります。
- オブジェクトのプロパティとして適用するアセット、たとえばオーディオ、画像、フォント、ビデオなど。
Studio内での使用方法や場所での使用方法についての詳細は、以下の表を参照してください。
| アセット タイプ | 説明 |
|---|---|
| モデル | Modelは、BaseParts、MeshParts、および他のModelオブジェクトなどの幾何学的グループのコンテナオブジェクトです。モデルには、Scriptsなどのオブジェクトも含めることができます。Studioでオブジェクトをグループ化すると、自動的にModelオブジェクトになります。詳細については、モデルを参照してください。 |
| メッシュ | MeshPartは、物理的にシミュレートされたカスタムメッシュを含むパートオブジェクトの一種です。詳細については、メッシュを参照してください。 |
| オーディオ | AudioPlayerインスタンスは、オーディオファイルをロードして再生し、出力をWireを通じてAudioEmitterまたはAudioDeviceOutputに渡します。詳細については、オーディオアセットおよびオーディオオブジェクトを参照してください。 |
| 画像 | 画像は、場所内でさまざまな方法で使用されます。たとえば、パーツのテクスチャ/デカール、画像ラベル、メッシュテクスチャ、カスタムマテリアルのテクスチャ、特殊効果のテクスチャなどです。 |
| フォント | TextButton、TextLabel、およびTextBoxオブジェクトは、フォントアセットIDを適用すると特定のスタイルでタイポグラフィを表示します。フォントをインポートすることはできませんが、Creator Storeでは80種類以上の異なるフォントが提供されています。 |
| ビデオ | VideoFrameオブジェクトは、そのVideoアセットプロパティを通じてビデオを表示します。詳細については、ビデオフレームを参照してください。 |
アバター用
アバター用のアセットタイプには、Marketplaceで見つけてアバターに装備できる3つのカテゴリがあります。
- 体のパーツ — アバターキャラクターモデルのセクションを表すアセット。たとえば、頭、胴体、または脚などです。
- 衣服とアクセサリー — 体のパーツの上にある衣服やアクセサリーを表すアセット。
- アニメーション — アバターキャラクターモデルをアニメーション化するアセット。たとえば、走る、ジャンプする、泳ぐなどの動作です。
すべてのキャラクターモデルには、キャラクターの体のパーツ、衣服、アクセサリー、およびアニメーションのアセットIDを持つHumanoidDescriptionオブジェクトが含まれています。デフォルトでは、ユーザーのプレイ可能なキャラクターはその人の個人のRobloxアバターを参照しますが、必要に応じてカスタムのHumanoidDescriptionを適用することができます。詳細については、キャラクターの外観を参照してください。
パッケージ
Studio内では、単一のアセットまたはアセット階層をパッケージに変換し、複数のゲームで再利用することができます。これにより、チーム全体や複数のプロジェクトにわたってアセット管理を最適化できます。パッケージが更新されると、あなたやチームメンバーは特定のコピーを最新バージョンに更新したり、ゲーム全体のすべてのコピーを更新したり、特定のコピーを自動更新するように設定したりできます。
詳細については、パッケージを参照してください。
アセットURI
アセットや現在の場所の外に保存されている他のコンテンツは、Uniform Resource Identifiers(URI)を通じて識別されます。これは、オンラインに保存されたファイル、Robloxアプリケーションパッケージ内、またはクライアントのデバイスに保存されたファイルを指す形式化された文字列です。
基本構造は、スキームの後に://が続き、スキームに応じて異なるパスがあります。
Robloxエンジンは、プラットフォーム上に保存されたコンテンツを参照するためのいくつかのカスタムURIスキームをサポートしています。
rbxassetid
rbxassetidは、ユーザーがアップロードしたアセットを指します。この形式は、Decal.ColorMapContent、ParticleEmitter.Texture、およびAudioPlayer.Assetなどのプロパティの一般的な標準です。


rbxasset
rbxassetは、ユーザーのデバイス上のRobloxのコンテンツフォルダーを指します。たとえば:
コンテンツフォルダーの場所は、ユーザーのオペレーティングシステムによって異なります:
%LOCALAPPDATA%\Roblox\Versions\<version>\content
(代わりにC:\Program Files (x86)\Roblox\Versions\<version>\content)
rbxthumb
rbxthumbは、提供されたアセットのサムネイル画像を指します。その文字列形式は、サムネイルタイプ(type)、アセットID(id)、および幅/高さ(w/h)を取ります。
| タイプ(type) | 期待されるid値 | サポートされるサイズ(w×h) |
|---|---|---|
| Asset | 2Dまたは3DアセットのID | 150×150, 420×420 |
| Avatar | RobloxユーザーのID(Player.UserId) | 48×48, 60×60, 100×100, 150×150, 180×180, 352×352, 420×420, 720×720 |
| AvatarBust | RobloxユーザーのID(Player.UserId) | 50×50, 60×60, 75×75, 100×100, 150×150, 180×180, 352×352, 420×420 |
| AvatarHeadShot | RobloxユーザーのID(Player.UserId) | 48×48, 60×60, 100×100, 150×150, 180×180, 352×352, 420×420 |
| BadgeIcon | バッジのID | 150×150 |
| BundleThumbnail | MarketplaceバンドルのID。たとえば、キャラクター、頭、または靴 | 150×150, 420×420 |
| FontFamily | Creator StoreまたはToolboxのインベントリ内のフォントのID | 1200×80 |
| GameIcon | ゲームのID(DataModel.GameId);ゲームのアイコンを表示します。 | 50×50, 150×150 |
| GamePass | パスのID | 150×150 |
| GameThumbnail | ゲームのID(DataModel.PlaceId);ゲームの主要なサムネイルを表示します。 | 256×144, 384×216, 480×270, 576×324, 768×432 |
| GroupIcon | グループのID | 150×150, 420×420 |
| Outfit | OutfitPagesテーブルから収集されたID | 150×150, 420×420 |
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local playerGui = player.PlayerGui
local screenGui = Instance.new("ScreenGui")
screenGui.Parent = playerGui
local imageLabel = Instance.new("ImageLabel")
imageLabel.AnchorPoint = Vector2.new(0, 0)
imageLabel.Size = UDim2.new(0, 150, 0, 150)
imageLabel.Position = UDim2.new(0, 16, 0, 16)
imageLabel.BorderSizePixel = 0
imageLabel.BackgroundColor3 = Color3.new(0, 0, 0)
imageLabel.BackgroundTransparency = 0.8
imageLabel.Parent = screenGui
local success, content, isReady = pcall(function()
return Players:GetUserThumbnailAsync(player.UserId, Enum.ThumbnailType.HeadShot, Enum.ThumbnailSize.Size352x352)
end)
if success then
-- サムネイルコンテンツを画像ラベルに適用
imageLabel.Image = content
-- サムネイルを円形にトリミング
local corner = Instance.new("UICorner")
corner.CornerRadius = UDim.new(1, 0)
corner.Parent = imageLabel
endrbxgameasset
rbxgameassetは、アセットマネージャーを通じてアップロードされたアセットを指します。これにより、IDの代わりにユーザーフレンドリーな名前でアセットにアクセスできます。たとえば、Potion.pngという名前の画像をアップロードした場合、次のように参照できます。
上記の例では、Imagesはアセットマネージャーに表示されるカテゴリ/フォルダーで、Potionは拡張子を除いたアセット名です。
rbxhttp
rbxhttpはContentProvider.BaseUrlの略です。たとえば:
rbxtemp
rbxtempはFilesを参照することを可能にします。File:GetTemporaryId()を使用して有効なrbxtemp URLを生成します。たとえば:
https / http
httpsまたはhttpは、インターネット上の何かの正確な場所を指します。これはRobloxが承認したドメインでのみ機能し、他の場所で使用するとエラーが発生します。
アセットの権限
アセットのプライバシーステータスは、誰がそのアセットをゲーム内で使用する権限を持っているかを決定します。デフォルトでは、すべてのアセットは、あなたまたはあなたのグループメンバーがStudioにインポートしたときにプライベートになります。アセットIDへのアクセスをすべての人に許可したい場合は、アセットをCreator Storeに配布する必要があります。
アセットのモデレーション
Robloxは、アセットがコミュニティルール、利用規約、および知的財産ガイドラインに準拠していることを確認するために、人的および自動的なアセットモデレーションを積極的かつ反応的に行います。アセットが差別的または成人向けのコンテンツを含むなど、これらのモデレーションポリシーに違反している場合、モデレーションチームはアセットをフラグ付けし、ユーザーを有害または不適合なコンテンツから保護するためにアセットを削除します。このプロセスは、アセットをインポートした後、通常数時間以内に行われます。
アセットがゲームを公開する際にモデレーションキューにまだある場合、ユーザーはRobloxが承認するまでそのアセットを見ることも操作することもできません。アセットがモデレーションに合格しない場合、アセットが現在の状態でプラットフォームに存在できない理由を説明する通知を受け取ります。詳細については、アセットの取り扱い - アセットのモデレーションを参照してください。
アセット管理
Robloxは、アセットをインポート、保存、公開するためのいくつかのツールを提供しています:
| ツール | 説明 |
|---|---|
| アセットマネージャー | 画像、メッシュ、オーディオなどをインポートして保存します。現在開いているゲームにインポートしたアセットのみを表示します。 |
| Toolbox | あなたやあなたのグループがStudioにインポートしたすべてのアセットを保存します。現在開いているゲームに関係なく、Creator Storeからのアセットも含まれており、ユーザー生成アセットをゲームに直接ドロップすることができます。 |
| インポータ | サードパーティのモデリングツールから3DモデルをカスタムModelインスタンスとしてインポートします。 |
アセットのアーカイブ
整理をさらに助けるために、Creator DashboardのCreations ⟩ Development Itemsセクションでほとんどのアセットタイプをアーカイブできます。アイテムをアーカイブするには、アセットのサムネイルにカーソルを合わせ、⋯ボタンをクリックし、コンテキストメニューからアーカイブを選択します。

アセットをアーカイブすると、それはウェブサイトから消え、Robloxゲーム内で使用できなくなり、表示されなくなります。あなた自身のゲームも含まれます。