What is Bezier ? : XNA

posted on 19 Dec 2007 17:03 by xnanoob  in Math, Tutorials

สวัสดีค่า

จากวันก่อน ได้ลองทำ รถ ที่มันเคลื่อนที่ (ถ้าไม่รู้วันไหน กด)

มีปัญหาที่น้องเต้ย บอกว่า รถมันไม่สมูท (ถ้าอยากรู้จักน้องเต้ย กด)

คือในการที่รถเคลื่อนที่นั้น ได้มีการกำหนด จุด เอาไว้ให้รถได้ย้าย ไปตามจุดต่างๆ

เพราะฉะนั้น รถจะเคลื่อนที่เหมือนแบบว่าหายตัวไป ณ ตำแหน่งนั้นเลย

แบบนี้ก้อไม่รู้เหมือนกันว่าต้องทำการเคลื่อน sprite อย่างไร ให้สมูท?

งงจังเลยไม่รู้ทำไง เลยไปถามพี่ กู มา  พี่กูแม่งโคตรเก่งถามไรตอบได้หมด

พี่กูให้มาอันนึง บอกให้ไปอ่าน Bézier curve  (ออกเสียงว่าไงวะ เนี้ย)

ก้อไม่รู้เหมือนกานนะว่า Bézier curve คืออะไร คงเป็นสมการไรสักอย่าง

ไว้ค่อยไปให้ อ.สอน



ก้อลองมั่วๆ ไปดู

อยากได้แบบเนี้ย


ถ้าไง ลองดูตาม สมการนี้นะ

รูปและภาพจาก wiki

 

จากนั้น ลองมั่วดู แปลง สมการด้านบน เป็น method

ได้เป็นแบบนี้หรือเปล่า ?? มั่วเอา

// return point in line ตำแหน่งใน line  ลองเปลี่ยนมาจาก รูปและสมการด้านบน

public
Vector2 (Vector2 p0, Vector2 p1, float t)
{       
   return
 p1 = p0 + (p1 - p0) * t;
}

 

อ่านแล้วยังงง เอาสมการ Linear ก่อนแล้วกาน

พื้นฐานเลขต่ำ จังหวะ หักมุม ก้อยังมีปัญหา

แก้ไงดีอะ ??   แต่ไว้ค่อยปรับกันต่อไป

...

เฮือก  จบแระค่ะ บายค่ะ 

งุงิ งุงิ

 

เอกสารอ้างอิง Bézier curve  

ปล. ไปถามน้องมา เค้าบอกว่าอ่านว่า  เบ-เซีย  เส้นโค้งเบเซียร์

ผลการทดลอง

 

โคสะนา : บริการ ห้องเช่า เช่าห้อง รายเดือน ใกล้เซ็นทรัลลาดพร้าว สนใจติดต่อเลยจ้า
กดเลยนะค่ะ กด

Comment



smilebig smileopen-mounthed smileconfused smilesad smileangry smiletonguequestionembarrassedsurprised smilewinkdouble winkcry

ยอดมาก ๆ กำลังหาวิธีอยู่เชียว confused smile

#1 By NinkungZ on 2007-12-19 19:09

เนียนค่ะ ขอบคุณนะค่ะ ฟิสง ฟิสิก ความรู้ศูนย์เจ้าาาาsad smile

#2 By k2w (124.121.8.164) on 2007-12-20 04:18