Kodu Grammar

Kodu เป็นโปรแกรมภาษาเฉพาะด้าน (Domain-specific language) สร้างมาสำหรับการสร้างเกม โดยอาศัยไวยากรณ์ภาษา (Grammar) ของ Kodu เป็นตัวกำหนดวิธีการเขียนโปรแกรมในเกม

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

Kodu Code

กฎต่างๆ ในเกม จะถูกกำหนดโดยการเขียนโปรแกรมเข้าไปยังตัวละคร หรือวัตถุต่างๆ และลักษณะการเขียนโปรแกรมใน Kodu คือการสั่งให้ตัวละคร หรือวัตถุต่างๆ ทำงานเมื่อเหตุการณ์ต่างๆ เกิดขึ้น เช่นในตัวอย่างตามรูปด้านบน เป็นการกำหนดกฎให้ตัวละคร Kodu มีทั้งหมด 4 เหตุการณ์ แต่ทำงาน 5 อย่าง 

ไวยากรณ์ของ Kodu อยู่ในรูปแบบง่ายๆ คือ แต่ละบรรทัด หรือแต่ละรายการ (มีตัวเลขกำกับอยู่) เป็นกฎหนึ่งข้อสำหรับตัวละครหรือวัตถุนั้น กฎจะอยู่ในรูปแบบตามไวยากรณ์ของ Kodu ดังนี้

When Condition Do Action 

อธิบายได้ว่า เมื่อ (When) เหตุการณ์ที่เฝ้ารอเกิดขึ้น (Condition) ให้ทำ (Do) งานดังนี้ (Action)

จากรูปด้านบน อธิบายกฎตามหลักไวยากรณ์ของ Kodu ได้ดังนี้

  1. เมื่อผู้เล่นใช้จอยสติ๊กด้านซ้ายของเกมแพด ตัวละคร Kodu จะเคลื่อนที่ตามทิศทางของจอยสติ๊ก
  2. เมื่อผู้เล่นใช้คีย์ลูกศรบนคีย์บอร์ด ตัวละคร Kodu จะเคลื่อนที่ตามทิศทางของคีย์ลูกศร (เกมนี้ผู้เล่นสามารถจะใช้เกมแพด หรือจะใช้คีย์บอร์ดในการเล่นก็ได้)
  3. เมื่อตัว Kodu ชน (bump) กับแอปเปิ้ล ให้ตัว Kodu กินผลแอปเปิ้ลนั้น (it)
  4. ในกรณีที่กฎมีการย่อหน้า และไม่มีเงื่อนไขของเหตุการณ์กำกับอยู่ หมายความว่า ให้ใช้เงื่อนไขก่อนหน้านั้น ซึ่งก็คือกฎในข้อ 3 เมื่อตัว Kodu ชน กับแอปเปิ้ล ให้เพิ่มคะแนน 1 คะแนนแก่ผู้เล่น
  5. เมื่อผู้เล่นทำคะแนนะได้ครบ 5 คะแนน ผู้เล่นชนะ

ไวยากรณ์ของ Kodu  ยังมีให้ศึกษาอีก มาตามต่อคราวหน้าครับ

 

About these ads
This entry was posted in Kodu, Programming and tagged , , . Bookmark the permalink.

2 Responses to Kodu Grammar

  1. Pingback: Kodu Grammar 4 | คิดสร้างสรรค์

  2. Pingback: หน่วยที่ 2 หลักการเขียนโปรแกรมเกม Kudo » spcomsci

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s