学ぶ
エンジンクラス
AssetService
作成できません
サービス

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


概要
方法
ComposeDecalAsync(decal: Decal,layers: {any}):()
CreateAssetAsync(object: Object,assetType: Enum.AssetType,requestParameters: Dictionary):Tuple
CreateAssetVersionAsync(object: Object,assetType: Enum.AssetType,assetId: number,requestParameters: Dictionary):Tuple
CreateEditableImageAsync(content: Content,editableImageOptions: Dictionary?):EditableImage
CreateEditableMeshAsync(content: Content,editableMeshOptions: Dictionary?):EditableMesh
CreatePlaceAsync(placeName: string,templatePlaceID: number,description: string):number
CreatePlaceInPlayerInventoryAsync(player: Instance,placeName: string,templatePlaceID: number,description: string):number
非推奨
GetAssetIdsForPackage(packageAssetId: number):{any}
非推奨
GetCreatorAssetID(creationID: number):number
非推奨
SavePlaceAsync(requestParameters: Dictionary?):()
SearchAudio(searchParameters: AudioSearchParams):AudioPages
非推奨
継承されたメンバー

APIリファレンス
プロパティ
AllowInsertFreeAssets
Robloxのスクリプトセキュリティ
並列読み取り
AssetService.AllowInsertFreeAssets:boolean

方法
ComposeDecalAsync
イールド
AssetService:ComposeDecalAsync(
decal:Decal, layers:{any}
):()
パラメータ
decal:Decal
layers:{any}
戻り値
()
コードサンプル
local AssetService = game:GetService("AssetService")
-- デカールインスタンスを2つ作成
local decalA = Instance.new("Decal")
local decalB = Instance.new("Decal")
-- 合成情報テーブルを構築
local compositeInfo = {
{
ColorMap = decalA.ColorMapContent,
RoughnessMap = decalA.RoughnessMapContent,
MetalnessMap = decalA.MetalnessMapContent,
NormalMap = decalA.NormalMapContent,
},
{
ColorMap = Content.fromAssetId(123456),
RoughnessMap = decalB.RoughnessMapContent,
MetalnessMap = decalB.MetalnessMapContent,
NormalMap = decalB.NormalMapContent,
}
}
-- 合成するためのデカールを作成
local compositeDecal = Instance.new("Decal")
-- AssetServiceを使って既存のデカールを合成
local success, errorMessage = pcall(function()
AssetService:ComposeDecalAsync(compositeDecal, compositeInfo)
end)
if success then
print("デカールの合成に成功しました!")
-- デカールを表示/使用するためのロジックはここに記述します
else
warn("デカールの合成に失敗しました:", errorMessage)
end

CreateAssetAsync
イールド
機能: AssetCreateUpdate
AssetService:CreateAssetAsync(
object:Object, assetType:Enum.AssetType, requestParameters:Dictionary
パラメータ
object:Object
assetType:Enum.AssetType
requestParameters:Dictionary
既定値: "nil"
戻り値
コードサンプル
AssetService:CreateAssetAsync
local AssetService = game:GetService("AssetService")
local editableMesh = AssetService:CreateEditableMesh()
-- メッシュに頂点、面、UVを追加します
local requestParameters = {
CreatorId = 123,
CreatorType = Enum.AssetCreatorType.User,
Name = "My asset",
Description = "良いアセット",
}
local ok, result, idOrUploadErr = pcall(function()
return AssetService:CreateAssetAsync(editableMesh, Enum.AssetType.Mesh, requestParameters)
end)
if not ok then
warn(`CreateAssetAsync の呼び出し中にエラーが発生しました: {result}`)
elseif result == Enum.CreateAssetResult.Success then
print(`成功、新しいアセット ID: {idOrUploadErr}`)
else
warn(`CreateAssetAsync でのアップロードエラー: {result}, {idOrUploadErr}`)
end

CreateAssetVersionAsync
イールド
機能: AssetCreateUpdate
AssetService:CreateAssetVersionAsync(
object:Object, assetType:Enum.AssetType, assetId:number, requestParameters:Dictionary
パラメータ
object:Object
assetType:Enum.AssetType
assetId:number
requestParameters:Dictionary
既定値: "nil"
戻り値
コードサンプル
AssetService:CreateAssetVersionAsync
local AssetService = game:GetService("AssetService")
local assetIdToUpdate = 321
local model = Instance.new("Model")
local requestParameters = {
CreatorId = 123,
CreatorType = Enum.AssetCreatorType.User,
}
local ok, result, versionOrUploadErr = pcall(function()
return AssetService:CreateAssetVersionAsync(model, Enum.AssetType.Model, assetIdToUpdate, requestParameters)
end)
if not ok then
warn(`CreateAssetVersionAsync の呼び出しでエラーが発生しました: {result}`)
elseif result == Enum.CreateAssetResult.Success then
print(`成功、新しいアセットバージョン: {versionOrUploadErr}`)
else
warn(`CreateAssetVersionAsync でのアップロードエラー: {result}, {versionOrUploadErr}`)
end

CreateDataModelContentAsync
イールド
機能: DynamicGeneration
AssetService:CreateDataModelContentAsync(
content:Content, options:Dictionary?
パラメータ
content:Content
options:Dictionary?
戻り値

CreateEditableImage
機能: DynamicGeneration
AssetService:CreateEditableImage(editableImageOptions:Dictionary?):EditableImage
パラメータ
editableImageOptions:Dictionary?
戻り値

CreateEditableImageAsync
イールド
機能: AssetRead
AssetService:CreateEditableImageAsync(
content:Content, editableImageOptions:Dictionary?
パラメータ
content:Content
editableImageOptions:Dictionary?
戻り値

CreateEditableMesh
機能: DynamicGeneration
AssetService:CreateEditableMesh(editableMeshOptions:Dictionary?):EditableMesh
パラメータ
editableMeshOptions:Dictionary?
戻り値

CreateEditableMeshAsync
イールド
機能: AssetRead
AssetService:CreateEditableMeshAsync(
content:Content, editableMeshOptions:Dictionary?
パラメータ
content:Content
editableMeshOptions:Dictionary?
戻り値

CreateMeshPartAsync
イールド
機能: Basic
AssetService:CreateMeshPartAsync(
meshContent:Content, options:Dictionary
パラメータ
meshContent:Content
options:Dictionary
既定値: "nil"
戻り値

CreatePlaceAsync
イールド
機能: AssetCreateUpdate
AssetService:CreatePlaceAsync(
placeName:string, templatePlaceID:number, description:string
パラメータ
placeName:string
templatePlaceID:number
description:string
戻り値

CreatePlaceInPlayerInventoryAsync
非推奨

CreateSurfaceAppearanceAsync
イールド
機能: Basic
AssetService:CreateSurfaceAppearanceAsync(content:Dictionary):SurfaceAppearance
パラメータ
content:Dictionary
コードサンプル
AssetService:CreateSurfaceAppearanceAsync
local AssetService = game:GetService("AssetService")
local Workspace = game:GetService("Workspace")
-- 赤色
local colorEditableImage = AssetService:CreateEditableImage({ Size = Vector2.new(4, 4) })
colorEditableImage:DrawRectangle(Vector2.zero, colorEditableImage.Size, Color3.fromRGB(255, 0, 0), 0, Enum.ImageCombineType.Overwrite)
-- メタリック (赤チャネルのみを見ます)
local metalnessEditableImage = AssetService:CreateEditableImage({ Size = Vector2.new(1, 1) })
metalnessEditableImage:DrawRectangle(Vector2.zero, metalnessEditableImage.Size, Color3.new(1, 0, 0), 0, Enum.ImageCombineType.Overwrite)
-- 粗さ (赤チャネルのみを見ます)
local roughnessEditableImage = AssetService:CreateEditableImage({ Size = Vector2.new(1, 1) })
roughnessEditableImage:DrawRectangle(Vector2.zero, roughnessEditableImage.Size, Color3.new(0.2, 0, 0), 0, Enum.ImageCombineType.Overwrite)
local surfaceAppearance = AssetService:CreateSurfaceAppearanceAsync({
ColorMap = Content.fromObject(colorEditableImage),
MetalnessMap = Content.fromObject(metalnessEditableImage),
RoughnessMap = Content.fromObject(roughnessEditableImage)
})
local meshPart = Instance.new("MeshPart")
meshPart.Parent = Workspace
-- メッシュパートにサーフェス外観を適用します
surfaceAppearance.Parent = meshPart

GetAssetIdsForPackage
非推奨

GetAssetIdsForPackageAsync
イールド
機能: AssetRead
AssetService:GetAssetIdsForPackageAsync(packageAssetId:number):{any}
パラメータ
packageAssetId:number
戻り値

GetAudioMetadataAsync
イールド
機能: AssetRead
AssetService:GetAudioMetadataAsync(idList:{any}):{any}
パラメータ
idList:{any}
戻り値
コードサンプル
local AssetService = game:GetService("AssetService")
local SoundService = game:GetService("SoundService")
local trackIDs = {
SoundService.Sound1.SoundId,
SoundService.Sound2.SoundId,
SoundService.Sound3.SoundId,
SoundService.Sound4.SoundId,
}
local success, result = pcall(function()
return AssetService:GetAudioMetadataAsync(trackIDs)
end)
if success then
for i = 1, #trackIDs do
local contentId = "rbxassetid://" .. result[i].AssetId
if trackIDs[i] == contentId then
print(result[i].Title, "によって", result[i].Artist)
else
warn("要求されたアセット #" .. tostring(i) .. " のメタデータが取得されませんでした")
end
end
end

GetBundleDetailsAsync
イールド
機能: AssetRead
AssetService:GetBundleDetailsAsync(bundleId:number):Dictionary
パラメータ
bundleId:number
戻り値
コードサンプル
バンドルの詳細を取得する
local AssetService = game:GetService("AssetService")
local BUNDLE_ID = 14
local success, result = pcall(function()
return AssetService:GetBundleDetailsAsync(BUNDLE_ID)
end)
if success then
print(result)
--[[
{
["BundleType"] = "BodyParts",
["Description"] = "年は5003年、バトルボット5000は最強の敵に立ち向かわなければならない、さもなくば時代遅れになってしまう。",
["Id"] = 14,
["Items"] = {
[1] = {...},
[2] = {
["Id"] = 1678225030,
["Name"] = "SinisterBot 5001 左腕",
["Type"] = "Asset"
},
[3] = {...},
[4] = {...},
[5] = {...},
[6] = {...},
[7] = {...}
},
["Name"] = "SinisterBot 5001"
}
--]]
end

GetCreatorAssetID
非推奨

GetGamePlacesAsync
イールド
機能: AssetRead
AssetService:GetGamePlacesAsync():Instance
戻り値
コードサンプル
AssetService:GetGamePlacesAsync
local AssetService = game:GetService("AssetService")
local placePages = AssetService:GetGamePlacesAsync()
while true do
for _, place in placePages:GetCurrentPage() do
print("名前:", place.Name)
print("PlaceId:", place.PlaceId)
end
if placePages.IsFinished then
break
end
placePages:AdvanceToNextPageAsync()
end

LoadAssetAsync
イールド
機能: LoadUnownedAsset
AssetService:LoadAssetAsync(assetId:number):Instance
パラメータ
assetId:number
戻り値

PromptCreateAssetAsync
イールド
機能: AssetCreateUpdate
AssetService:PromptCreateAssetAsync(
player:Player, instance:Instance, assetType:Enum.AssetType
パラメータ
player:Player
instance:Instance
assetType:Enum.AssetType
戻り値

PromptImportAnimationClipFromVideoAsync
イールド
機能: AssetManagement
AssetService:PromptImportAnimationClipFromVideoAsync(
player:Player, progressCallback:function
パラメータ
player:Player
progressCallback:function
戻り値

SavePlaceAsync
イールド
機能: AssetCreateUpdate
AssetService:SavePlaceAsync(requestParameters:Dictionary?):()
パラメータ
requestParameters:Dictionary?
戻り値
()

SearchAudio
非推奨

SearchAudioAsync
イールド
機能: AssetRead
AssetService:SearchAudioAsync(searchParameters:AudioSearchParams):AudioPages
パラメータ
searchParameters:AudioSearchParams
戻り値
コードサンプル
音楽検索タイトルの取得
local AssetService = game:GetService("AssetService")
local audioSearchParams = Instance.new("AudioSearchParams")
audioSearchParams.SearchKeyword = "幸せ"
local success, result = pcall(function()
return AssetService:SearchAudioAsync(audioSearchParams)
end)
if success then
local currentPage = result:GetCurrentPage()
for _, audio in currentPage do
print(audio.Title)
end
else
warn("AssetService エラー: " .. result)
end
--[[ 戻りデータ形式
{
"AudioType": string,
"Artist": string,
"Title": string,
"Tags": {
"string"
},
"Id": number,
"IsEndorsed": boolean,
"Description": string,
"Duration": number,
"CreateTime": string,
"UpdateTime": string,
"Creator": {
"Id": number,
"Name": string,
"Type": number,
"IsVerifiedCreator": boolean
}
}
--]]

©2026 Roblox Corporation。Roblox(ロブロックス)、RobloxロゴおよびPowering Imaginationは、米国並びにその他の国における登録商標および非登録商標です。