ด้วยคุณสมบัติการสร้างสรรค์ในประสบการณ์ คุณสามารถสร้างสรรค์ที่ผู้ใช้สร้างในประสบการณ์ของคุณไปยังคลังของพวกเขา ผู้ใช้ของคุณสามารถใช้สร้างสรรค์ในประสบ
เช่น คุณสามารถเปิดให้ผู้ใช้สร้างสัตว์เลี้ยงเป็นสัตว์เลี้ยงในประสบการณ์ของคุณและอนุญาตให้พวกเขาบันทึกสัตว์เลี้ยงที่พวกเขาชื่นชอบในคลังของพวกเขา คุณมีการควบคุมอย
รองรับรูปแบบสินทรัพย์และขีดจำกัด
เช่นเดียวกับทรัพยากรทั้งหมดในแพลตฟอร์ม, การสร้างในประสบการณ์ จะถูกควบคุมโดย การควบคุมสินทรัพย์ ในขณะนี้คุณสามารถอนุญา
เมื่อคุณกำลังดำเนินการหรือทดสอบประสบการณ์ของคุณและเพิ่มสคริปต์หรือทรัพยากรส่วนตัวเป็นส่วนหนึ่งของการสร้างในประสบการณ์, มันไม่สามารถบันทึกและแสดงข้อควรเกิดข้อผิดพลาดให้กับ
เปิดใช้งานการสร้างสินทรัพย์ในประสบการณ์
เพื่อเปิดใช้งานการสร้างสรรค์เนื้อหาในประสบการณ์สำหรับผู้ใช้ของคุณให้ใช้วิธีการใช้งาน AssetService:PromptCreateAssetAsync() ในสคริปต์ด้านเซิร์ฟเวอร์พร้อมกับเหตุผล
AssetService:PromptCreateAssetAsync() ใช้ปารามิเตอร์ต่อไปนี้:
- เป็นวัตถุ Player การสร้างสรรค์
- เป็น Instance การสร้างสรรค์
- เอนูมี.แอสเซ็ตไทป์ ซึ่งจำกัดอยู่ที่ Enum.AssetType.Model ในขณะนี้
เมื่อเซิร์ฟเวอร์เรียก AssetService:PromptCreateAssetAsync() จะแสดงการโต้ตอบ ส่งแพ็กเกจ บนเครื่องคอมพิวเตอร์ของผู้ใช้ที่เรียกใช้การบันทึกขั้นตอน โดยหัวข้อก
ตัวอย่างสคริปต์ด้านเซิร์ฟเวอร์ต่อไปนี้สร้างความต้องการให้ผู้ใช้บันทึกรถที่พวกเขาวาดในประสบการณ์:
สคริปต์ตัวอย่างสำหรับการสร้างสินทรัพย์ในประสบการณ์
-- กำหนดตัวแปร AssetService
local AssetService = game:GetService("AssetService")
-- ตั้งค่า PromptCreateAssetAsync() เพื่อเรียกร้องการส่งมอบ
local function CreateAsset(player, instance)
local complete, result, assetId = pcall(function()
return AssetService:PromptCreateAssetAsync(player, instance, Enum.AssetType.Model)
end)
if complete then
if result == Enum.PromptCreateAssetResult.Success then
print("successfully uploaded, AssetId:", assetId)
else
print("Received result", result)
end
else
print("error")
print(result)
end
end
-- การเล่นสีรถถูกข้าม
-- เพิ่มตัวจัดการอีเวนต์
local function onUserPublish(player, promptObject)
-- ผู้ใช้บันทึกรถยนต์ด้วยสีเริ่มต้นของประสบการณ์
if promptObject.Name == "car" then
CreateAsset(player, car)
elseif promptObject.Name == "CarPaintYellow" or promptObject.Name == "CarPaintBlue" or promptObject.Name == "CarPaintBlack" or promptObject.Name == "CarPaintRed" then
PaintCarColor(promptObject.Name)
end
end
PublishEvent.OnServerEvent:Connect(onUserPublish)
อาณาเขตการแสดงสาธิตในประสบการณ์การสร้างเกมในประสบการณ์ที่สร้างจากในประสบการณ์การสร้างเกมในประสบการณ์การสร้างเกมในประสบการณ์การสร้างเกมในประสบการณ์การสร้
การโพสต์และการแนบมา
หลังจากที่ผู้ใช้สร้างและบันทึกสินทรัพย์จากประสบการณ์ของคุณพวกเขาสามารถพบได้ในสถานที่ต่อไปนี้:
- หน้า ใบเก็บของของฉัน ของพวกเขา
- หน้า โครงการ ของพวกเขา
- แท็บ การพัฒนา ภายใต้หน้า ผลงาน ของผู้สร้าง
- แท็บ กระเป๋าเครื่องมือ ของพวกเขาใน กล่องเครื่องมือ ใน Studio
เมื่อผู้ใช้เห็นการสร้างในประสบการณ์บนโปรไฟล์หรือกระเป๋าเป้ของเพื่อนของพวกเขาพวกเขาจะเห็นการแนบมาที่ประสบการณ์แรกที่สร้างขึ้น ผู้ใช้สามารถคลิกที่ลิงค์แนบมาเพื่อเปลี่ยนเป็น