Home / Developer  / เขียนเกม 3D ด้วย Unity เรียกใช้งาน Physics กับ Rigidbody

เขียนเกม 3D ด้วย Unity เรียกใช้งาน Physics กับ Rigidbody

คนที่เริ่มต้นเขียนเกม 3 มิติตอนนี้จะต้องเรียนรู้หลักการเคลื่อนที่ของวัตถุเกร็ง หรือ Rigidbody ทำงานร่วมกับ Physics และ Gravity บน Unity 3D

เริ่มต้นให้สร้าง New Project ของ Unity ขึ้นมาใหม่ เลือก Physics Materials Package ก่อนแล้วกด Create

เลือก Physics Material

เลือก Physics Material

เปิด SceneView สร้าง GameObject (วิธีสร้างอ่านที่บทความ:) เป็น cube ขึ้นมา 2 ตัว ให้ Cube ตัวแรกเป็น Floor หรือพื้นครับตั้ง Inspector ให้เรียบร้อย

สร้าง Cube เป็น GameObject ใหม่

สร้าง Cube เป็น GameObject ใหม่

ทำการวางมุมกล้องตามถนัด จัดหน้า Main Windows ให้เราชินมือที่สุด

วางมุมกล้องดีๆ

วางมุมกล้องดีๆ

ปรับ Inspector ส่วนของ Floor ให้เป็นพื้นสวยๆ พอเหมาะๆ

ปรับ Inspector ส่วนของ Floor ให้เป็นพื้นสวยๆ พอเหมาะๆ

ปรับ Scale ของ Floor ให้เรียบร้อยครับวางราบกับพื้นของ SceneView ต่อมาก็ไปที่ เมนู Game Objects > Create Other ขึ้นมาใหม่ เราจะใส่แสงเข้าไปเลือก Directional Light

เลือก Directional Light ใน Unity

เลือก Directional Light ใน Unity

เมื่อใส่ Directional Light แล้วแสงจะให้เราเห็นทางสว่าง และทางธรรมมากขึ้น

สว่างเห็นทางธรรม

สว่างเห็นทางธรรม

ขั้นตอนต่อไปเลือกที่ Cube ตัวบนที่ลอยอยู่ กดเพื่อให้เกิด Selection ก่อน แล้วเลือกเมนู Component > Physics > Rigidbody

เลือก Ridigbody

เลือก Ridigbody

ทำการ Play ที่ Toolbar กันหน่อย จะเห็นว่า วัตถุของเราจะหล่นลงมา

กด Play

กด Play

อันนี้เป็น วีดีโอ ผลลัพธ์นะครับ

จะเห็นว่าเราจะปรับการใช้ Gravity หล่นลงมา ทีนี้ เราคลิกเลือกที่ Inspector ส่วนของ Material จะมีให้เลือก Physics ที่เราต้องการใช้ ตัวอย่างนี้ใช้ Bouncy เพื่อดูการตกกระทบ และเด้งกลิ้งไปตามอัตโนมัติ

ลาก Physics ส่วนของ Bouncy

ลาก Physics ส่วนของ Bouncy

ทดสอบลอง Play อีกครั้งนึง

หล่น และกลิ้ง

หล่น และกลิ้ง

วีดีโอตัวอย่างที่ลองทำนะครับ

สรุปนี่เป็นตัวอย่างของการใช้งาน Physics กับเรื่องของ Rigidbody อย่างง่ายครับ

Comments

daydevthailand@gmail.com

อาจารย์ประจำสาขาวิชาการออกแบบเชิงโต้ตอบ และการพัฒนาเกม วิทยาลัยครีเอทีฟดีไซน์ & เอ็นเตอร์เทนเมนต์เทคโนโลยี มหาวิทยาลัยธุรกิจบัณฑิตย์ ,ผู้ก่อตั้ง บริษัท Daydev Co., Ltd, (เดย์เดฟ จำกัด)

Review overview