Vector3Curve
*เนื้อหานี้แปลโดยใช้ AI (เวอร์ชัน Beta) และอาจมีข้อผิดพลาด หากต้องการดูหน้านี้เป็นภาษาอังกฤษ ให้คลิกที่นี่
แทนที่เส้นโค้งเวกเตอร์ 3D กลุ่มสามตัวอย่าง FloatCurveแต่ละเด็ก FloatCurve สามารถเข้าถึงได้ผ่านทาง Vector3Curve:X() , Vector3Curve:Y() และ Vector3Curve:Z() วิธีสามแกนสามารถสุ่มตัวอย่างได้พร้อมกันผ่านวิธี Vector3Curve:GetValueAtTime()
ตัวอย่างโค้ด
--- Vector3Curve
local function createVector3Curve()
local vectorCurve = Instance.new("Vector3Curve")
local curveX = vectorCurve:X() -- creates and returns a FloatCurve animating the X channel
local curveY = vectorCurve:Y() -- creates and returns a FloatCurve animating the Y channel
-- Not setting the Z channel will leave the Z channel not animated.
-- A missing curve or a curve with no keys don't participate in the animation
local key = FloatCurveKey.new(0, 1) -- creates a key at time 0 and with value 1
curveX:InsertKey(key)
curveY:InsertKey(key)
local key2 = FloatCurveKey.new(1, 2) -- creates a key at time 1 and with value 2
curveX:InsertKey(key2)
curveY:InsertKey(key2)
return vectorCurve
end
local function testVector3Curve()
local curve = createVector3Curve()
-- sampling the curve at a given time (returns a vector3)
print(curve:GetValueAtTime(0)) -- returns 1, 1, void
print(curve:GetValueAtTime(0.5)) -- returns 1.5, 1.5, void (result of cubic interpolation with auto tangents)
curve:X():RemoveKeyAtIndex(1)
curve:X():RemoveKeyAtIndex(1)
print(curve:X().Length) -- number of keys = 0
print(curve:GetValueAtTime(0.5)) -- returns void, 1.5, void
end
testVector3Curve()
สรุป
วิธีการ
คืนสาม FloatCurves (X, Y, Z) ในตัวอ้างอิงเวลาที่ผ่านมา
คืนค่า FloatCurve ที่ควบคุมช่อง X (ตัวลูกแรกของประเภท FloatCurve ที่เรียกว่า X )
คืนค่า FloatCurve ที่ควบคุมช่อง Y (ตัวลูกแรกของประเภท FloatCurve ที่ชื่อว่า Y )
คืนค่า FloatCurve ที่ควบคุมช่อง Z (ตัวลูกแรกของประเภท FloatCurve ที่เรียกว่า Z )
คุณสมบัติ
วิธีการ
GetValueAtTime
คืนสาม FloatCurves (X, Y, Z) ในเวลาที่ส่งมาเป็นอาร์เรย์ของสามตัวเลขหากเส้นโค้งช่องว่างหรือไม่พบกุญแจในเส้นโค้ง ช่องจะถูกประเมินเป็น nil
พารามิเตอร์
เวลาที่จะได้รับค่า
ส่งค่ากลับ
สาม FloatCurves (X, Y, Z) ในอาร์กิวเมนต์เวลาที่ผ่านมา
คืนค่า FloatCurve ที่ควบคุมช่อง X (ตัวลูกแรกของประเภท FloatCurve ที่เรียกว่า X )หากไม่พบ จะสร้าง FloatCurve ว่างเปล่า
ส่งค่ากลับ
คืนค่า FloatCurve ที่ควบคุมช่อง Y (ตัวลูกแรกของประเภท FloatCurve ที่ชื่อว่า Y )หากไม่พบ จะสร้าง FloatCurve ว่างเปล่า
ส่งค่ากลับ
คืนค่า FloatCurve ที่ควบคุมช่อง Z (ตัวลูกแรกของประเภท FloatCurve ที่เรียกว่า Z )หากไม่พบ จะสร้าง FloatCurve ว่างเปล่า