AssetService

顯示已棄用項目

*此內容是使用 AI(Beta 測試版)翻譯,可能含有錯誤。若要以英文檢視此頁面,請按一下這裡

無法建立
服務

資產服務 是一種不會複製的服務,處理資產相關的查詢到 Roblox 網頁 API。

概要

方法

屬性

方法

CreateEditableImage

建立新的 EditableImage 。 預設解析度為 512×512,但您可以使用方法的選項表指定不同的大小。

如果裝置特定編輯可用記憶體經費已用盡,創建失敗,並且此方法將返回 nil

參數

editableImageOptions: Dictionary

含有方法控制的選項表:

  • Size – 一 Vector2 指定圖像的寬度和高度。

返回

CreateEditableMesh

建立新的、空的 EditableMesh 。垂直、三角形和其屬性可以動態添加到它。如果裝置的編輯可能性經濟模型已耗盡,則會失敗,此方法將返回 nil

參數

editableMeshOptions: Dictionary

返回

CreateEditableImageAsync

暫停

創建新 EditableImage 對象,其內容包含所提供的紋理。非資產材質 ID 如 rbxthumb:// 支持。如果使用圖像素材,它必須與並/或擁有體驗創作者的關聯,或者它必須在體驗中創建。如果設

參閱 《<a href=\"#EditableImage\">Class.EditableImage</a> 的</a> 啟用編輯圖像對已發佈體驗的權限</a> 和 啟用權限</a> 部分,獲得特殊考慮,當使用此 API。

參數

content: Content
editableImageOptions: Dictionary

返回

一個新的 EditableImage 包含提供的圖像。

CreateEditableMeshAsync

暫停

從現有網格內容 ID 創建新的 EditableMesh 對象。 預設情況下,從此方法創建的 EditableMesh 將會固定大小,因此網格資料只能修改,而不能添加或移除。一個固定大小的 EditableMesh 會消耗更少的內存,因此在可能的時候應該優

如果裝置特定編輯可用記憶體經費已用盡,創建將失敗,此方法將返回 nil

參閱 啟用編輯網格對於已發佈的體驗權限 部分的 EditableMesh 以獲得特殊考慮,當使用此 API。

參數

content: Content
editableMeshOptions: Dictionary

含有方法控制的選項表:

  • FixedSize – 是 bool 。預設值是 true ,而返回的 0> Class.EditableMesh0> 將無法允許您添加或移除頂點,只能修改其值。將 3> false3> 設置為 FixedSize6> ,如果需要更

返回

新的 EditableMesh 實個體、實例。

CreateMeshPartAsync

暫停

此方法會創建一個 MeshPart 以具有指定的 CollisionFidelity、 Class.MeshPart.RenderFidel

參數

meshContent: Content
options: Dictionary

方法的控制指定為一個或多個控制項目的表:

預設值:"nil"

返回

CreatePlaceAsync

暫停

複製一個地方通過指定的 templatePlaceID 並且返回新地方的 PlaceId,這是您可以使用 TeleportService 的新地方。複製地方會顯示在空間方創建者的道說明欄中,並且以 1>Class.DataModel.PlaceId|PlaceId|Class.DataModel.PlaceId|PlaceId|

注意,模板位置必須啟用模板複製通過位置設定。 您不能使用此方法來複製未擁有的位置。

不建議使用此 API ,特別是創建的地方包含指令碼,因為更新代碼在大量地方中快速變得不可行。對於使用者生成的世界,請考慮串行用戶創作並將它們儲存在 DataStores 裡。

參數

placeName: string

新空間點的名稱。

templatePlaceID: number

PlaceId 的地方。

description: string

新地空間的說明。

預設值:""

返回

PlaceId 的新空間方。

CreatePlaceInPlayerInventoryAsync

暫停

參數

player: Instance
placeName: string
templatePlaceID: number
description: string
預設值:""

返回

GetAssetIdsForPackage

暫停

返回指定包裹中包含的資產 ID 列表。

參數

packageAssetId: number

返回

資產 ID 包含在指定的包裹內。

GetAudioMetadataAsync

暫停

提供有關特定音樂資源的相關標籤 (藝術家、稱號、持續時間、類輸入等)。

參數

idList: Array

資產或內容 ID 的資源或內容ID 。最大一次批量大小為 30。


返回

與請邀請相同的順序中的典型表,每個典型表包含資產/內容的下列元件:

注意,如果要求任何資產的資料擷取時發生錯誤,例如資產 ID 不存在,資典表仍然包含在返回的資料陣中,但只包含 AssetId 字段作為參考。此外,如果無法確定要求的資產 (可能是私人音訊),將會包含結果中的 AudioType

範例程式碼


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, "by", result[i].Artist)
else
warn("No metadata fetched for requested asset #" .. tostring(i))
end
end
end

GetBundleDetailsAsync

暫停

此功能返回指定組合的內容的詳細資訊。

如果組合包 ID 不存在,它會發生 HTTP 400 (Bad Request) 。如果 bundleId 不能轉換為整數,它會發生 Unable to cast string to int64

參數

bundleId: number

指定組合的 ID。


返回

典型包含指定組合的詳細資訊的鑰匙值對:

  • Id — 組合包 ID (與已傳送的 bundleId 引數相同)

  • Name — 組合包名稱

  • Description — 組合包說明

  • BundleType — 代表 Enum.BundleType 的字串,例如 "BodyParts" 或 0>DynamicHead0>

  • Items — 組合包中的物品,每個都有代表以下鍵的細節:

    • Id — 項目 ID

    • Name — 項目名稱

    • Type — 物品類型,例如 "Asset"

範例程式碼

Getting Bundle Details

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"] = "The year is 5003, Battlebot 5000 must face his mightiest foe, or face becoming obsolete.",
["Id"] = 14,
["Items"] = {
[1] = {...},
[2] = {
["Id"] = 1678225030,
["Name"] = "SinisterBot 5001 Left Arm",
["Type"] = "Asset"
},
[3] = {...},
[4] = {...},
[5] = {...},
[6] = {...},
[7] = {...}
},
["Name"] = "SinisterBot 5001"
}
--]]
end

GetGamePlacesAsync

暫停

返回 StandardPages 對象,其中包含名稱和 PlaceId 的地體驗。


返回

範例程式碼

AssetService:GetGamePlacesAsync

local AssetService = game:GetService("AssetService")
local placePages = AssetService:GetGamePlacesAsync()
while true do
for _, place in placePages:GetCurrentPage() do
print("Name:", place.Name)
print("PlaceId:", place.PlaceId)
end
if placePages.IsFinished then
break
end
placePages:AdvanceToNextPageAsync()
end

PromptCreateAssetAsync

暫停

允許用戶在體驗中創建資產,提供發布對話框。當呼叫時,它會向用戶提供一個對話框,讓他們輸入名稱、說明和預覽素材。當提交時,它會將資產儲存在用戶的道具欄中。只能在伺服器側面執行。

參數

player: Player

提交資產作品建的使用者。

instance: Instance

要創建的資產。目前無法包含指令碼或內部資產。

assetType: Enum.AssetType

資產類輸入。目前只能是 Enum.AssetType.Model


返回

如果成功,Enum.PromptCreateAssetResult和資產 ID 雙子。

PromptImportAnimationClipFromVideoAsync

暫停

參數

player: Player
progressCallback: function

返回

SavePlaceAsync

void
暫停

儲存當前位空間的狀態。 只適用於創建於 AssetService:CreatePlaceAsync() 或者具有 API 啟用的位置。


返回

void

SearchAudio

暫停

返回一個 AudioPages 對象,包含指定搜尋結果。將不會返回空值的欄位。

注意,此方法有低的 HTTP 請求限制,且可能會發生錯誤,因此它應該 sempre be pcall() 處理錯誤。可能發生的錯誤包括:


<tbody>
<tr>
<td>HTTP 429 (請求太多)</td>
<td><code>Class.AssetService:SearchAudio()</code> 已呼叫太多次。</td>
</tr>
<tr>
<td>未期待的資料類型,預期的資料集陣已為 null</td>
<td>關鍵字參數已過濾。</td>
</tr>
</tbody>
錯誤訊息原因

參數

searchParameters: AudioSearchParams

返回

範例程式碼

Getting Music Search Titles

local AssetService = game:GetService("AssetService")
local audioSearchParams = Instance.new("AudioSearchParams")
audioSearchParams.SearchKeyword = "happy"
local success, result = pcall(function()
return AssetService:SearchAudio(audioSearchParams)
end)
if success then
local currentPage = result:GetCurrentPage()
for _, audio in currentPage do
print(audio.Title)
end
else
warn("AssetService error: " .. result)
end
--[[ Returned data format
{
"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
}
}
--]]

活動