[Unity 2D] วิธีการจัดหน้าหลังโดยไม่ใช่ Z! by Ziah
31
May0
May0
โดยปกติแล้ว Unity เป็น tool ที่เอาไว้ทำเกม 3D ซึ่ง offset ตำแหน่งต่างๆก็จะเป็น x y z แต่ในเมื่อเราต้องการเราจะทำเกม 2D แล้ว z จึงเป็นค่าที่เราไม่ควรไปยุ่งเป็นอย่างมาก (ใช้แล้วจะงงเอง) การจัดหน้าหลังของ Unity แบบปกติก็จะใช้ค่า z เพื่อกำหนดความลึกแบบ 3 มิตื แต่พอเรามาทำ 2D เลยมีวิธีที่ไม่ใช้ Z ดังนี้ครับ
- Object ทั่วไปใน Scene ของเราจะใช้ Sprite Renderer ซึ่งมีค่า Sorting Layer และ Order in Layer ซึ่งเราจะมาเริ่มกับ Sorting Layer กันก่อน
- ให้เรากดที่เมนู Sorting Layer ซึ่งตอนแรกจะมีแต่ Default ให้เราทำการเพิ่มก่อนโดยการกด Add Sorting Layer….
- จากนั้นก็เพิ่ม Layer ต่างๆที่เราต้องการใช้ในการจัดเรียงหน้าแบบหลักๆกันก่อน (สามารถคลิกลากขึ้นลงเพื่อปรับได้)
- จากตัวอย่างเมื่อเราแบ่ง Layer หลักๆเช่น UI ด้านหน้า / ตัวเกม / ฉากหลัง เป็นที่เรียบร้อยแล้ว ในส่วนเลเยอร์ของตัวเกมเองก็จะมี Object หลายๆตัวที่ยังจัดเรียงไม่ถูกอยู่ ให้เราใช้ Order in Layer ครับ
- ซึ่ง Order in Layer ที่มีค่ามากจะอยู่หน้า Object ที่มีค่านี้น้อยกว่าเสมอๆ
* ภาคเสริม : ใน Object ของ NGUI จะไม่มี Order in Layer ให้เราตั้งค่าที่ Depth แทนนะครับ (ทำงานเหมือนๆกัน)
Enjoy this article?
Consider subscribing to our RSS feed!
ไม่มีความเห็น
ยังไม่มีความเห็น