Skip to main content
ExodeUI

EXODEUI DESKTOP

A little space for good ideas.

Choose your platform to get the official ExodeUI installer.

Looking for Intel Mac or other builds? Explore the web studio or check all download options.

Prefer the browser? Try for free in your browser →

เสาหลัก 08 · วิศวกรรมแอนิเมชัน

แอนิเมชัน UI ฟิสิกส์: ศาสตร์แห่งการใช้ชีวิตอินเทอร์เฟซดิจิทัล

ภาพเคลื่อนไหวตามระยะเวลาจะตาย เรียนรู้ว่าทำไม Apple, Google และทีมผลิตภัณฑ์ที่ดีที่สุดในโลกจึงสร้างระบบฟิสิกส์สปริงขึ้นมาโดยเฉพาะ

What is แอนิเมชัน UI in ExodeUI?

Physics UI Animation เป็นวิธีวิศวกรรมแอนิเมชั่นที่สร้างแบบจำลองการเคลื่อนไหวของอินเทอร์เฟซผู้ใช้โดยใช้กฎทางกายภาพในโลกแห่งความเป็นจริง ซึ่งโดยหลักแล้วคือออสซิลเลเตอร์สปริงฮาร์มอนิกลำดับที่สอง แทนที่จะใช้ตัวจับเวลาตามระยะเวลาที่กำหนด เนื่องจากสปริงทางกายภาพคำนวณตำแหน่งพักแบบไดนามิกตามความเร็วท่าทางของผู้ใช้ อินเทอร์เฟซที่ขับเคลื่อนด้วยฟิสิกส์จึงถูกขัดจังหวะได้ 100% และให้ความรู้สึกเป็นธรรมชาติต่อการสัมผัสของมนุษย์

สถาปัตยกรรมหลัก

เหตุใดวิศวกรและนักออกแบบจึงเลือก ExodeUI

Design, logic and motion in one file that runs inside your app.

ฮาร์มอนิกสปริงลำดับที่สอง

จำลองการเคลื่อนไหวของอินเทอร์เฟซโดยใช้สมการทางกายภาพตามธรรมชาติ แทนที่จะเป็นมิลลิวินาทีที่กำหนดเองและตัวจับเบซิเยร์

Core Architecture

การถ่ายโอนความเร็วอย่างต่อเนื่อง

ท่าทางการเหวี่ยงและลากจะรักษาแรงผลักดันทางกายภาพของมนุษย์ในการเผยแพร่และการเปลี่ยนเส้นทางอย่างกะทันหัน

Core Architecture

ปฏิสัมพันธ์ที่ขัดจังหวะได้ 100%

ผู้ใช้สามารถแตะ ลาก หรือเปลี่ยนเส้นทางแอนิเมชั่นขณะบินได้โดยไม่สะดุดหรือสะดุดสายตา

Core Architecture

การควบคุมมวล ความแข็ง และการหน่วง

ปรับแต่งบุคลิกภาพเชิงกลของอินเทอร์เฟซของคุณอย่างละเอียดด้วยแถบเลื่อนภาพที่ใช้งานง่ายและดูตัวอย่างแบบสด

Core Architecture

การประเมินวัตถุประสงค์

ExodeUI เปรียบเทียบกับอย่างไร Duration-Based Animation (Easing Curves)

Where ExodeUI is stronger, and what to weigh before you switch.

The ExodeUI Architecture

ExodeUI

จุดแข็ง
  • สปริงคำนวณระยะเวลาโดยอัตโนมัติตามระยะทางและความเร็ว
  • การโต้ตอบจะถูกขัดจังหวะได้ 100% โดยไม่มีภาพสะดุด
  • รักษาโมเมนตัมการสัมผัสของมนุษย์เพื่อความรู้สึกที่เป็นธรรมชาติ
  • จับคู่โมเดลแอนิเมชั่นดั้งเดิมของ iOS (CoreAnimation) และ Android
Compared with

Duration-Based Animation (Easing Curves)

Trade-offs
  • ตัวจับเวลาระยะเวลาคงที่ (เช่น 300ms) รู้สึกไม่เป็นธรรมชาติในระยะทางเล็กหรือใหญ่
  • การขัดจังหวะภาพเคลื่อนไหวจะทำให้ภาพเคลื่อนไหวกระตุกหรือรีสตาร์ทอย่างรุนแรง
  • ไม่สนใจความเร็วของการเหวี่ยงนิ้ว รู้สึกเฉื่อยชาและไม่ตอบสนอง
  • จำเป็นต้องเขียน JavaScript แบบกำหนดเองที่ซับซ้อนเพื่อจัดการกับการขัดจังหวะด้วยท่าทาง

นักพัฒนาแฮนด์ออฟ

ใช้ในรหัสของคุณ

Your app loads the compiled file through the ExodeUI runtime and talks to it through inputs and events.

// A physics-driven expand in React with the Motion library (motion.dev).
// Mass, stiffness and damping replace a fixed duration, and an interrupted
// animation continues from its current velocity.
import { motion } from 'motion/react';

export function PhysicsCard({ open }) {
  return (
    <motion.div
      animate={{ height: open ? 240 : 64, opacity: open ? 1 : 0.7 }}
      transition={{ type: 'spring', stiffness: 380, damping: 26, mass: 1 }}
      style={{ overflow: 'hidden' }}
    >
      <h3>Physics-driven element</h3>
      <p>Settles naturally, with no hard-coded duration</p>
    </motion.div>
  );
}

ความเข้าใจผิดของแอนิเมชั่นที่อิงตามระยะเวลา

เป็นเวลาหลายทศวรรษแล้วที่แอนิเมชันบนเว็บและดิจิทัลอาศัยกราฟระยะเวลาตามเวลา: "ทำให้โมดอลนี้เคลื่อนไหวจาก y: 100 ถึง y: 0 ใน 300 มิลลิวินาทีอย่างง่ายดาย" แม้ว่าวิธีนี้จะใช้ได้กับการเล่นวิดีโอแบบพาสซีฟ แต่โดยพื้นฐานแล้วจะล้มเหลวในซอฟต์แวร์โต้ตอบแบบสัมผัสด้วยเหตุผลทางคณิตศาสตร์สามประการ:

  • การเปลี่ยนแปลงระยะทาง: หากแผ่นงานเดินทาง 50 พิกเซลใน 300 มิลลิวินาที แผ่นงานจะเคลื่อนที่ช้าๆ หากเดินทาง 500 พิกเซลใน 300 มิลลิวินาที มันจะเคลื่อนที่เร็วขึ้นสิบเท่า ระยะเวลาคงที่ทำให้เกิดความเร็วที่ไม่แน่นอน
  • ภัยพิบัติการหยุดชะงัก: หากผู้ใช้คว้าองค์ประกอบในขณะที่กำลังเคลื่อนไหว ระบบที่อิงตามระยะเวลาจะยึดหรือทำลายเส้นโค้งทางฟิสิกส์
  • ภาวะตาบอดความเร็ว: เมื่อผู้ใช้เหวี่ยงแผ่นด้านล่างขึ้นด้วยความเร็วนิ้วที่รวดเร็ว เส้นโค้งระยะเวลาจะละทิ้งความเร็วนั้นและเล่นภาพเคลื่อนไหวสำเร็จรูปจากความเร็วเป็นศูนย์

พารามิเตอร์สามประการของฟิสิกส์สปริง

ทุกสปริงใน ExodeUI ถูกควบคุมโดยพารามิเตอร์ทางกายภาพที่เรียบง่ายและใช้งานง่ายสามตัว:

ความฝืด (แรงดึง)

ควบคุมการดึงสปริงอย่างรุนแรงไปยังตำแหน่งพักของเป้าหมาย ความแข็งที่สูงขึ้นจะทำให้เคลื่อนไหวได้รวดเร็วและว่องไว

การทำให้หมาด ๆ (แรงเสียดทาน)

ควบคุมปริมาณความต้านทานที่ต่อต้านการเคลื่อนไหว สปริงที่เปียกชื้นจะแกว่งและเด้งกลับ สปริงกันสะเทือนขั้นวิกฤตจะตกลงโดยไม่มีการโอเวอร์โหลด

มวล (ความเฉื่อย)

ควบคุมความรู้สึกหนักขององค์ประกอบ มวลที่สูงขึ้นต้องใช้แรงมากขึ้นในการเร่งความเร็วและการทำให้หมาด ๆ มากขึ้นเพื่อชำระตัว

Topic Cluster Network

สำรวจแนวคิดและเครื่องมือที่เชื่อมต่อกัน

มีคำถามใช่ไหม?

คำถามที่พบบ่อย

สร้างส่วนประกอบที่มีชีวิตด้วยการเคลื่อนไหวจริง

Start free in the browser or download the desktop app. Compile spring physics and state machines directly to React and SwiftUI.

ลองฟรี