ฟังก์ชั่นทำให้สบายช่วยให้คุณสามารถแก้ไขค่าจากค่าหนึ่งไปยังอีกช่วงเวลาที่กำหนดโดยใช้สิ่งที่เรียกว่า "ฟังก์ชั่นผ่อนคลาย" ฟังก์ชันเหล่านี้ได้รับการออกแบบมาเพื่อรับค่าและ ณ จุดใดก็ตามในช่วงเวลาให้ส่งออกค่า ณ เวลาใดเวลาหนึ่ง
สิ่งนี้สามารถอธิบายได้ดีที่สุดโดยดูที่ข้อมูลโค้ด:
// simple linear tweening - no easing, no acceleration
Math.linearTween = function (t, b, c, d) {
return c*t/d + b;
};
@t คือเวลาปัจจุบัน (หรือตำแหน่ง) ของทวีต สิ่งนี้สามารถเป็นวินาทีหรือเฟรม, ขั้นตอน, วินาที, มิลลิวินาทีหรืออะไรก็ได้ - ตราบใดที่หน่วยยังเหมือนกับที่ใช้สำหรับเวลาทั้งหมด
@b เป็นค่าเริ่มต้นของคุณสมบัติ
@c คือการเปลี่ยนแปลงระหว่างค่าเริ่มต้นและค่าปลายทางของคุณสมบัติ
@d คือเวลาทั้งหมดของทวีต
ขอบคุณhttp://upshots.org/actionscript/jsas-understanding-easing
นี่คือคำจำกัดความของฟังก์ชั่นการผ่อนคลายเชิงเส้น กราฟนี้เมื่อเวลาผ่านไปในแง่ของ 't' เราจะได้รับกราฟเชิงเส้นเพียง
โอเคเยี่ยมเลย เราใช้อะไรได้บ้างเพื่อ?
เมื่อใดก็ตามที่คุณมีการเริ่มต้นและสิ้นสุดในใจและต้องการที่จะเคลื่อนไหวพวกเขาคุณสามารถใช้ "ทวีต" หรือ "ฟังก์ชั่นผ่อนคลาย"
ตัวอย่างเช่นต่อไปนี้เป็น GIF ที่ฉันได้รับจาก Angry Birds:
สังเกตว่าเมนูเลื่อนไปที่จุดบนหน้าจอ แต่หยุดช้าไหม นี่คือสาเหตุที่ฟังก์ชั่นทำให้สบายที่ช่วยให้เข้าที่ คุณสามารถดูสิ่งเหล่านั้นได้ทั่วทั้งเว็บ หากนี่คือความง่ายเชิงเส้นมันจะเหมือนกันตลอด
เพลง?
แน่นอน! หากเรานำค่าของซาวด์แทร็กปัจจุบันของเราและทำการประมาณค่าระหว่างค่านั้นกับ 0 ในช่วงเวลาทั้งหมด 1 วินาทีเสียงของเราจะค่อยๆจางหายไปในช่วงเวลาหนึ่งวินาที
วัตถุที่ถูกผูกไว้
นอกจากนี้ยังมีฟังก์ชั่นที่อนุญาตให้ตีกลับ (ดู: http://easings.net/#easeOutBounce ) ซึ่งสามารถสร้างเอฟเฟกต์เช่นนี้บนสไปรต์โดยไม่มีระบบฟิสิกส์ใด ๆ :
คุณสามารถค้นหาข้อมูลเพิ่มเติมบนเว็บได้โดยค้นหาการทวีต