วันเสาร์ที่ 13 มิถุนายน พ.ศ. 2558

แชร์ไฟล์โปรเจค : เขียน AI บอตคลั่งวิ่งไล่

ไฟล์โปรเจคจากคลิปสอน "เขียน AI บอตคลั่งวิ่งไล่"
ไฟล์โปรเจคก่อนทำ [คลิกที่นี่]
ไฟล์โปรเจคหลังทำ [คลิกที่นี่]

วันพุธที่ 13 พฤษภาคม พ.ศ. 2558

แชร์ไฟล์โปรเจค : เกมตอบคำถาม

ไฟล์โปรเจคจากคลิปสอน "ทำเกมตอบคำถามง่ายๆ ด้วย Unity 5 UI"
[โหลดตรงได้จาก mediafire] คลิกที่นี่
[ดูคลิป] คลิกที่นี่

วันจันทร์ที่ 30 มีนาคม พ.ศ. 2558

แชร์โค้ด Unity : การหยุดเกมด้วย timeScale


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



วิธีที่เราจะใช้ในโค้ดนี้คือการปรับค่าของตัวแปร Time.deltaTime ซึ่งเป็นตัวแปรที่ควบคุมการคำนวณที่อ้างอิงเวลา(ความเร็ว)ภายในเกมนั่นเองได้แก่พวก rigidbody และคำสั่งที่มีการคูณ Time.deltaTime ภายในโค้ด โดยตามปกติค่านี้จะอยู่ที่ 1.0 ถ้าเราปรับเป็น 0.5 เกมก็จะช้าลงครึ่งนึง ถ้าปรับเป็น 2.0 เกมจะเร็วสองเท่า แต่สำหรับโค้ดตัวนี้จะเซตค่าให้เท่ากับ 0.0 เพื่อเป็นการหยุดเกมครับ ใครขี้เกียจอ่านก็ดูในคลิปได้เลยครับ

วันเสาร์ที่ 28 มีนาคม พ.ศ. 2558

การเชคปุ่มที่ถูกกดว่าเป็นปุ่มอะไร

     เกมส่วนใหญ่เรามักจะกำหนดเองว่าจะให้ผู้เล่นกดปุ่มไหนเพื่อทำแอคชั่นอะไร
เช่น w a s d เพื่อเดิน spacebar เพื่อกระโดด แต่สำหรับบางเกมเราต้องคอยเชคว่าผู้เล่นกดปุ่มไหนเพื่อนำไปเชคว่าผู้เล่นกดถูกปุ่มหรือเปล่า เช่นเกมแนวกดตาม เกมพิมดีด เกมเต้น


     ที่นี้ตามปกติในเกมประเภทแรกเราจะใช้ Input.GetKey("a") ในการเชคว่าเอ้ะมีการกดปุ่ม A ในเฟรมนี้มั้ยส่วนในเกมประเภทหลังที่พูดถึงถ้าจะทำแบบเดียวกันจะต้องไล่เชคปุ่มบนคีบอร์ดที่มีเป็นร้อยปุ่ม(มั้ง) เปลืองทั้งเวลาและทรัพยากรณ์ CPU เพราะฉะนั้นปกติเราจะใช้ Event ในการเชคกันครับ