Motor Sınıfı
AssetService
*Bu içerik, yapay zekâ (beta) kullanılarak çevrildi ve hatalar içerebilir. Sayfayı İngilizce görüntülemek için buraya tıkla.
Özet
Özellikler
Yöntemler
API Referansı
Özellikler
Yöntemler
ComposeDecalAsync
Dönüşler
()
Kod Örnekleri
local AssetService = game:GetService("AssetService")
-- İki decal örneği oluştur
local decalA = Instance.new("Decal")
local decalB = Instance.new("Decal")
-- Bileşik bilgi tablosunu oluştur
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,
}
}
-- Üzerine bileşen oluşturulacak bir decal oluştur
local compositeDecal = Instance.new("Decal")
-- AssetService kullanarak mevcut bir decalı bileştir
local success, errorMessage = pcall(function()
AssetService:ComposeDecalAsync(compositeDecal, compositeInfo)
end)
if success then
print("Decal başarıyla bileştirildi!")
-- Decalı göstermek/kullanmak için mantık buraya gelir
else
warn("Decal bileştirilirken hata oluştu:", errorMessage)
endCreateAssetAsync
AssetService:CreateAssetAsync(
Parametreler
| Varsayılan değer: "nil" |
Dönüşler
Kod Örnekleri
AssetService:CreateAssetAsync
local AssetService = game:GetService("AssetService")
local editableMesh = AssetService:CreateEditableMesh()
-- Mesh'e köşeler, yüzler ve UV'ler ekleyin
local requestParameters = {
CreatorId = 123,
CreatorType = Enum.AssetCreatorType.User,
Name = "Benim varlığım",
Description = "iyi bir varlık",
}
local ok, result, idOrUploadErr = pcall(function()
return AssetService:CreateAssetAsync(editableMesh, Enum.AssetType.Mesh, requestParameters)
end)
if not ok then
warn(`CreateAssetAsync çağrısında hata: {result}`)
elseif result == Enum.CreateAssetResult.Success then
print(`başarı, yeni varlık ID'si: {idOrUploadErr}`)
else
warn(`CreateAssetAsync'de yükleme hatası: {result}, {idOrUploadErr}`)
endCreateAssetVersionAsync
AssetService:CreateAssetVersionAsync(
Parametreler
| Varsayılan değer: "nil" |
Dönüşler
Kod Örnekleri
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 çağrısında hata: {result}`)
elseif result == Enum.CreateAssetResult.Success then
print(`başarılı, yeni varlık sürümü: {versionOrUploadErr}`)
else
warn(`CreateAssetVersionAsync'de yükleme hatası: {result}, {versionOrUploadErr}`)
endCreateDataModelContentAsync
Parametreler
Dönüşler
CreateEditableImage
Parametreler
Dönüşler
CreateEditableImageAsync
AssetService:CreateEditableImageAsync(
Parametreler
Dönüşler
CreateEditableMesh
Parametreler
Dönüşler
CreateEditableMeshAsync
Parametreler
Dönüşler
CreateMeshPartAsync
Parametreler
| Varsayılan değer: "nil" |
Dönüşler
CreatePlaceAsync
CreatePlaceInPlayerInventoryAsync
CreateSurfaceAppearanceAsync
Parametreler
Dönüşler
Kod Örnekleri
AssetService:CreateSurfaceAppearanceAsync
local AssetService = game:GetService("AssetService")
local Workspace = game:GetService("Workspace")
-- Kırmızı renk
local colorEditableImage = AssetService:CreateEditableImage({ Size = Vector2.new(4, 4) })
colorEditableImage:DrawRectangle(Vector2.zero, colorEditableImage.Size, Color3.fromRGB(255, 0, 0), 0, Enum.ImageCombineType.Overwrite)
-- Metaliklik (sadece kırmızı kanala bak)
local metalnessEditableImage = AssetService:CreateEditableImage({ Size = Vector2.new(1, 1) })
metalnessEditableImage:DrawRectangle(Vector2.zero, metalnessEditableImage.Size, Color3.new(1, 0, 0), 0, Enum.ImageCombineType.Overwrite)
-- Pürüzlülük (sadece kırmızı kanala bak)
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
-- Yüzey görünümünü ağ parçasına uygula
surfaceAppearance.Parent = meshPartGetAssetIdsForPackage
GetAssetIdsForPackageAsync
GetAudioMetadataAsync
Parametreler
Dönüşler
Kod Örnekleri
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, "tarafından", result[i].Artist)
else
warn("Talep edilen varlık için hiçbir meta verisi alınamadı #" .. tostring(i))
end
end
endGetBundleDetailsAsync
Parametreler
Dönüşler
Kod Örnekleri
Paket Ayrıntılarını Alma
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"] = "Vücut Parçaları",
["Description"] = "Yıl 5003, Battlebot 5000 en güçlü rakibiyle yüzleşmek zorunda, yoksa geçersiz hale gelmesiyle yüzleşecek.",
["Id"] = 14,
["Items"] = {
[1] = {...},
[2] = {
["Id"] = 1678225030,
["Name"] = "Kötü Bot 5001 Sol Kol",
["Type"] = "Varlık"
},
[3] = {...},
[4] = {...},
[5] = {...},
[6] = {...},
[7] = {...}
},
["Name"] = "Kötü Bot 5001"
}
--]]
endGetCreatorAssetID
GetGamePlacesAsync
Dönüşler
Kod Örnekleri
AssetService:GetGamePlacesAsync
local AssetService = game:GetService("AssetService")
local placePages = AssetService:GetGamePlacesAsync()
while true do
for _, place in placePages:GetCurrentPage() do
print("Ad:", place.Name)
print("PlaceId:", place.PlaceId)
end
if placePages.IsFinished then
break
end
placePages:AdvanceToNextPageAsync()
endLoadAssetAsync
PromptCreateAssetAsync
AssetService:PromptCreateAssetAsync(
Parametreler
Dönüşler
PromptImportAnimationClipFromVideoAsync
SavePlaceAsync
Parametreler
Dönüşler
()
SearchAudio
SearchAudioAsync
Parametreler
Dönüşler
Kod Örnekleri
Müzik Arama Başlıklarını Alma
local AssetService = game:GetService("AssetService")
local audioSearchParams = Instance.new("AudioSearchParams")
audioSearchParams.SearchKeyword = "mutlu"
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 hatası: " .. result)
end
--[[ Dönen veri 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
}
}
--]]