KeyframeSequenceProvider
*เนื้อหานี้แปลโดยใช้ AI (เวอร์ชัน Beta) และอาจมีข้อผิดพลาด หากต้องการดูหน้านี้เป็นภาษาอังกฤษ ให้คลิกที่นี่
บริการ KeyframeSequencer ให้ฟังก์ชันเพื่อโหลดและดูตัวอย่าง KeyframeSequences รวมถึงตัวอักษรอันต่างๆ ที่มีประโยชน์เมื่อทำงานกับ Animations
A KeyframeSequence เก็บรวบรวมซีรีส์ของ Poses ที่เข้ารหัสระดับและกา
ตัวอย่างโค้ด
local KeyframeSequenceProvider = game:GetService("KeyframeSequenceProvider")
local function createPreviewAnimation(keyframeSequence)
local hashId = KeyframeSequenceProvider:RegisterKeyframeSequence(keyframeSequence)
local Animation = Instance.new("Animation")
Animation.AnimationId = hashId
return Animation
end
local keyframeSequence = Instance.new("KeyframeSequence")
local animation = createPreviewAnimation(keyframeSequence)
print(animation)
สรุป
วิธีการ
สร้างรหัสสัญลักษณ์ชั่วคราวจาก KeyframeSequence ที่สามารถใช้สำหรับการทดสอบแบบตรงไปตรงมาของอนิเมชั่น สร้างรหัสสัญลักษณ์ที่เป็น active:// ระบบ URL
สร้างรหัสสัญลักษณ์ชั่วคราวจาก KeyframeSequence แอนิเมชันสร้างรหัสแฮช
ฟังก์ชันนี้กลับมาเป็น InventoryPages วัตถุที่สามารถใช้ได้เพื่อทำซ้ำสำหรับอนิเมชันที่มีโดยผู้ใช้ที่กำหนด
กลับสตรีคของ Keyframe ตามที่ระบุไว้โดยอาศัยแหล่งทรัพยากร
คุณสมบัติ
วิธีการ
RegisterActiveKeyframeSequence
สร้างรหัสสินทรัพย์ชั่วคราวจาก KeyframeSequence แอนิเมชัน
ฟังก์ชันนี้ทำงานฟังก์ชันเดียวกันไปยัง KeyframeSequenceProvider:RegisterKeyframeSequence() อย่างไรก็ตามฟังก์ชันนี้จะสร้าง URL active:// แทนที่จะเป็นรหัส
รหัสที่สร้างขึ้นสามารถใช้ในอสังหาริยะ Animation.AnimationId สมบัติสมุดสำหรับการทดสอบ
รหัสสินทรัพย์ที่สร้างโดยหน้าฟังก์ชันนี้เป็นรหัสชั่วคราวและไม่สามารถใช้งานได้นอก Studio ผู้พัฒนาที่ต้องการสร้างรหัสสินทรัพย์ที่สามารถใช้งานได้ออนไลน์ควรอัปโหลด KeyframeSequence ไปยัง Roblo
พารามิเตอร์
Class.KeyframeSequencer ที่จะใช้
ส่งค่ากลับ
รหัสสินทรัพย์ชั่วคราวที่สร้างขึ้นสำหรับการเล่นวิดีโอแอนิเมชั่นแบบตรงไปตรงมา
ตัวอย่างโค้ด
local KeyframeSequenceProvider = game:GetService("KeyframeSequenceProvider")
local function createPreviewAnimation(keyframeSequence)
local hashId = KeyframeSequenceProvider:RegisterKeyframeSequence(keyframeSequence)
local Animation = Instance.new("Animation")
Animation.AnimationId = hashId
return Animation
end
local keyframeSequence = Instance.new("KeyframeSequence")
local animation = createPreviewAnimation(keyframeSequence)
print(animation)
RegisterKeyframeSequence
สร้างรหัสสินทรัพย์ชั่วคราวจาก KeyframeSequence แอนิเมชัน
ฟังก์ชันนี้ทำงานฟังก์ชันเดียวกันไปยัง KeyframeSequenceProvider:RegisterActiveKeyframeSequence() อย่างไรก็ตามฟังก์ชันนี้จะสร้างแฮชแทนที่จะเป็น URL aktiv://
รหัสที่สร้างขึ้นสามารถใช้สำหรับสมบัติสัตว์เพื่อทดสอบอนิเมชัน
รหัสสินทรัพย์ที่สร้างโดยหน้าฟังก์ชันนี้เป็นรหัสชั่วคราวและไม่สามารถใช้งานได้นอก Studio ผู้พัฒนาที่ต้องการสร้างรหัสสินทรัพย์ที่สามารถใช้งานได้ออนไลน์ควรอัปโหลด KeyframeSequence ไปยัง Roblo
พารามิเตอร์
Class.KeyframeSequencer ที่จะใช้
ส่งค่ากลับ
รหัสสินทรัพย์ชั่วคราวที่สร้างขึ้นสำหรับการเล่นวิดีโอแอนิเมชั่นแบบตรงไปตรงมา
ตัวอย่างโค้ด
local KeyframeSequenceProvider = game:GetService("KeyframeSequenceProvider")
local asset = KeyframeSequenceProvider:RegisterKeyframeSequence(workspace.KeyframeSequence)
local animation = Instance.new("Animation")
animation.Name = "TestAnimation"
animation.AnimationId = asset
animation.Parent = workspace
GetAnimations
ฟังก์ชันนี้กลับมาเป็น InventoryPages วัตถุที่สามารถใช้ได้เพื่อทำซ้ำสำหรับอนิเมชันที่มีโดยผู้ใช้ที่กำหนด
ฟังก์ชันนี้มีตัวเลือกการใช้งานหลายอย่างเช่นการอนุญาตให้ผู้ใช้สามารถเรียกดูและนำเข้าอนิเมชันเข้าสู่ปลั๊กอินอนิเมชันที่กําหนดเอง
พารามิเตอร์
รหัสผู้ใช้ของผู้ใช้
ส่งค่ากลับ
Class.InventoryPages ของอนิเมชัน
ตัวอย่างโค้ด
local KeyframeSequenceProvider = game:GetService("KeyframeSequenceProvider")
local USER_ID = 0 -- Insert your UserId here
local function extractPages(pagesObject)
local array = {}
while true do
local thisPage = pagesObject:GetCurrentPage()
for _, v in pairs(thisPage) do
table.insert(array, v)
end
if pagesObject.IsFinished then
break
end
pagesObject:AdvanceToNextPageAsync()
end
return array
end
local inventoryPages = KeyframeSequenceProvider:GetAnimations(USER_ID)
local animationIds = extractPages(inventoryPages)
for _, id in pairs(animationIds) do
print(id)
end
print("total: ", #animationIds)
GetKeyframeSequenceAsync
GetKeyframeSequencer กลับมาเป็น KeyframeSequence ตามที่ระบุไว้ สินทรัพย์ต้องตรงกับอนิเมชัน ฟังก์ชันจะผลิตจนกว่าสินทรัพย์จะโหลดจากเว็บไซต์ เนื่องจากเป็นการเรียกในเว็บ จึง
พารามิเตอร์
แอนิเมชัน
ส่งค่ากลับ
ตัวอย่างโค้ด
local KeyframeSequenceProvider = game:GetService("KeyframeSequenceProvider")
local ANIMATION_ID = "rbxassetid://507771019"
-- Get the keyframe sequence for the asset
local keyframeSequence
local success, err = pcall(function()
keyframeSequence = KeyframeSequenceProvider:GetKeyframeSequenceAsync(ANIMATION_ID)
end)
if success then
-- Iterate over each keyframe and print its time value
local keyframeTable = keyframeSequence:GetKeyframes()
for key, value in keyframeTable do
print(`The time of keyframe number {key} is: {value.Time}`)
end
else
print(`Error getting KeyframeSequence: {err}`)
end