Important Announcement
PubHTML5 Scheduled Server Maintenance on (GMT) Sunday, June 26th, 2:00 am - 8:00 am.
PubHTML5 site will be inoperative during the times indicated!

Home Explore การสร้างเกมคอมพิวเตอร์เบื้องต้น

การสร้างเกมคอมพิวเตอร์เบื้องต้น

Published by Jakkapong Amatsombat, 2021-06-13 16:40:51

Description: การสร้างเกมคอมพิวเตอร์เบื้องต้น

Search

Read the Text Version

หนังสอื เลม น้ีเรียบเรยี งตามจดุ ประสงคร ายวชิ า สมรรถนะรายวิชา และคำอธิบายรายวิชา หลักสูตรประกาศนยี บตั รวิชาชีพ (ปวช.) พุทธศกั ราช 2556 ของสำนักงานคณะกรรมการการอาชวี ศึกษา กระทรวงศึกษาธิการ ÃËÊÑ ÇªÔ Ò 2901-2012 ไดผ านการตรวจการประเมินคุณภาพจากสำนกั งานคณะกรรมการการอาชวี ศกึ ษา ประจำปงบประมาณ พ.ศ. 2560 คร้ังท่ี 2 ประเภทวชิ าเทคโนโลยีสารสนเทศและการส่อื สาร กลุมทกั ษะวิชาชีพเฉพาะ ประกาศลำดับท่ี 1 ¡à¡ÒÁÃʤÃÍŒÒÁ§ ¾ÔÇàµÍÃ์ àº×้ͧµŒ¹Basic Computer Game Programming ÊÁºÑµÔ ÊÇÊÑ ´์¼Ô Å 106.-

การสร้างเกม คอมพิวเตอรเ์ บอื้ งต้น (Basic Computer Game Programming) รหสั วชิ า 2901 - 2012 หลักสูตรประกาศนยี บัตรวิชาชีพ พุทธศักราช 2556 สาขาวชิ าเทคโนโลยสี ารสนเทศ สำ�นักงานคณะกรรมการการอาชีวศึกษา (สอศ.) กระทรวงศกึ ษาธกิ าร เรยี บเรียงโดย สมบตั ิ สวัสดผิ์ ล MBA. (วทิ ยาศาสตรบณั ฑติ : เทคโนโลยอี เิ ล็กทรอนิกส์)

การสรา้ งเกมคอมพวิ เตอร์เบือ้ งตน้ (Basic Computer Game Programming) เลขรหัสมาตรฐานสากลประจ�ำหนังสือ ISBN 978-616-211-904-0 จดั พมิ พแ์ ละจัดจ�ำหนา่ ยโดย... บรษิ ัท วังอกั ษร จ�ำกดั 69/3 ถนนอรุณอมรนิ ทร์ แขวงวัดอรุณ เขตบางกอกใหญ่ กรงุ เทพฯ 10600 Tel. 0-2472-3293-5 Fax 0-2891-0742 Mobile 08-8585-1521 http://www.wangakson.com e-Mail : [email protected] Facebook : ส�ำนกั พมิ พ์ วังอักษร ID Line : wangaksorn พิมพท์ ่.ี .. ยิง่ เจรญิ ออฟเซ็ท 15/43-44 ถ.เพชรเกษม 69/2 แขวงหลกั สอง เขตบางแค กรงุ เทพฯ 10160 พิมพค์ รงั้ ท่ี 1 พ.ศ. 2560 จ�ำนวนท่พี มิ พ์ 3,000 เล่ม สงวนลิขสิทธิต์ ามพระราชบัญญัตลิ ขิ สทิ ธ์ิ พ.ศ. 2537 โดยบรษิ ัท วงั อกั ษร จ�ำกดั หา้ มนำ� ส่วนใดส่วนหนงึ่ ของหนงั สือเล่มนี้ไปทำ� ซ�้ำ ดดั แปลง หรือเผยแพร่ต่อสาธารณชน ไม่ว่ารปู แบบใด ๆ นอกจากได้รบั อนญุ าต เป็นลายลกั ษณ์อักษรล่วงหน้าจากทางบรษิ ัทฯ เทา่ นัน้ ช่ือและเคร่ืองหมายการคา้ อ่นื ๆ ท่อี า้ งอิงในหนงั สอื ฉบับนี้ เปน็ สิทธโิ ดยชอบดว้ ยกฎหมายของเจา้ ของแตล่ ะราย โดยบรษิ ัท วังอักษร จ�ำกัด มิได้อา้ งความเป็นเจ้าของแตอ่ ยา่ งใด

คำ�น�ำ วิชาการสร้างเกมคอมพิวเตอร์เบื้องต้น (Basic Computer Game Programming) รหัสวิชา 2901-2012 จัดอยู่ในหมวดวิชาทักษะวิชาชีพ กลุ่มทักษะวิชาชีพเฉพาะ ประเภทวิชา เทคโนโลยีสารสนเทศและการสื่อสาร สาขาวิชาเทคโนโลยีสารสนเทศ ตามหลักสูตรประกาศนียบัตร วิชาชีพ พุทธศักราช 2556 สำ�นักงานคณะกรรมการการอาชีวศึกษา (สอศ.) กระทรวงศึกษาธิการ ผู้เขียนได้บริหารสาระการเรียนรู้แบ่งเป็น 8 บทเรียน ได้จัดแผนการจัดการเรียนรู้/แผนการสอน ทเ่ี นน้ ฐานสมรรถนะ (Competency Based) และการบรู ณาการ (Integrated) ตรงตามจดุ ประสงค์ รายวิชา สมรรถนะรายวิชา คำ�อธบิ ายรายวชิ า ในแต่ละบทเรียนมุ่งให้ความสำ�คัญส่วนที่เป็นความรู้ ทฤษฎี หลักการ กระบวนการ ตัวอย่าง แบบฝึกปฏิบัติ และคำ�ถามเพื่อการทบทวน เพื่อฝึกทักษะ ประสบการณ์ เรง่ พฒั นาบทบาทของผเู้ รยี นเปน็ ผจู้ ดั การแสวงหาความรู้ (Explorer) เปน็ ผสู้ อนตนเองได้ สร้างองค์ความรใู้ หม่ และบทบาทของผู้สอนเปลี่ยนจากผู้ให้ความรู้เป็นผู้ชี้แนะ (Teacher Role) จัดส่งิ แวดล้อมเออ้ื อำ�นวยตอ่ ความสนใจเรยี นรแู้ ละเปน็ ผรู้ ว่ มเรยี นรู้ (Co - Investigator) จดั หอ้ งเรยี น เป็นสถานที่ทำ�งานร่วมกัน (Learning Context) จัดกลุ่มเรียนรู้ให้รู้จักทำ�งานร่วมกัน (Grouping) ฝึกความใจกว้าง มุ่งสร้างสรรค์คนรุ่นใหม่ สอนความสามารถที่นำ�ไปใช้งานได้ (Competency) สอนความรกั ความเมตตา (Compassion) ความเชอ่ื มน่ั ความซอ่ื สตั ย์ (Trust) เปา้ หมายอาชพี อันยังเป็น ประโยชน์ (Productive Career) และชีวิตที่มศี กั ด์ศิ รี (Noble Life) เหนือส่ิงอืน่ ใด เปน็ คนดี ท้งั กาย วาจา ใจ มีคุณธรรม จรรยาบรรณทางธุรกิจและวชิ าชพี ส่งเสริมสนับสนุนยุทธศาสตร์การพัฒนาระบบคุณวุฒิวิชาชีพ (Vocational Qualification System) สอดคลอ้ งตามมาตรฐานอาชีพ (Occupational Standard) สร้างภมู ิคุม้ กัน เพิ่มขดี ความ สามารถในการแข่งขันของประเทศ กำ�ลังแรงงาน การพัฒนามาตรฐานการปฏิบัติงานระดับชาติ (National Benchmarking) และการวิเคราะห์หน้าที่การงาน (Functional Analysis) เพื่อให้ เกดิ ผลสำ�เรจ็ ในภาคธรุ กจิ อตุ สาหกรรม ทกุ สาขาอาชพี เปน็ การเตรยี มความพรอ้ มเขา้ สปู่ ระชาคมอาเซียน ขอขอบพระคุณทา่ นอาจารยผ์ สู้ อน ผู้ประสาทวิชาความรู้ เอกสาร หนังสือที่ใช้ประกอบในการ เรยี บเรยี งไว้ ณ โอกาสน้ี สมบตั ิ สวัสด์ผิ ล

ลกั ษณะรายวิชา 1. รหสั และชอื่ วิชา : 2901 - 2012 การสร้างเกมคอมพิวเตอรเ์ บอ้ื งต้น (Basic Computer Game Programming) 2. สภาพรายวชิ า : หมวดวิชาทักษะวิชาชีพ กลุ่มทักษะวิชาชีพเฉพาะ ประเภทวิชาเทคโนโลยี สารสนเทศและการส่ือสาร สาขาเทคโนโลยีสารสนเทศ ตามหลักสูตร ประกาศนียบัตรวิชาชีพ พุทธศักราช 2556 ส�ำนักงานคณะกรรมการ การอาชวี ศึกษา (สอศ.) กระทรวงศกึ ษาธิการ 3. ระดับรายวิชา : - 4. พื้นฐาน : - 5. เวลาศึกษา : เรยี นทฤษฎีและปฏิบตั ิ 3 ชวั่ โมงตอ่ สปั ดาห์ ระยะเวลา 18 สัปดาห์ รวมทัง้ สนิ้ 54 ชั่วโมงตลอดภาคเรียน และควรมีเวลาศึกษานอกเวลาเรียนอีก 1 ช่ัวโมง ต่อสปั ดาห์ 6. หนว่ ยกติ : 2 หนว่ ยกติ 3 ชั่วโมงต่อสปั ดาห์ 7. จดุ ประสงคร์ ายวชิ า เพอื่ ให ้ : 1. มีความรู้ความเข้าใจเกี่ยวกับหลักการและวิธีการสร้างเกม 2. มีความรู้ความเข้าใจเก่ียวกับขั้นตอนการเขียนโปรแกรมเกม 3. มที ักษะในการเขียนโปรแกรมเกมขนาดเล็ก 4. มคี ณุ ธรรม จรยิ ธรรม และคา่ นิยมท่ีดีในการเขยี นโปรแกรมเกม 8. สมรรถนะรายวิชา : 1. แสดงความรู้และหลักการการสร้างเกมคอมพิวเตอร์เบื้องต้น 2. ปฏิบตั สิ ร้างเกม เขยี นโปรแกรมเกมขนาดเล็ก 9. ค�ำอธิบายรายวิชา : ศึกษาและปฏิบัติเกี่ยวกับหลักการและวิธีการสร้างเกม ขั้นตอนการเขียน โปรแกรมเกม เคร่อื งมอื ที่ใชใ้ นการเขียนโปรแกรมเกม การเขยี นโปรแกรมเกม ทดสอบและติดตงั้ ใชง้ าน การจัดท�ำเกมขนาดเลก็

ตารางวเิ คราะหส์ มรรถนะรายวิชา วิชา การสรา้ งเกมคอมพิวเตอร์เบอื้ งตน้ รหัสวิชา 2901 - 2012 ท–ป–น 1-2-2 จำ� นวน 3 คาบ/สัปดาห์ รวม 54 คาบ สมรรถนะรายวิชา 1. แสดงความรู้และ ห ัลกการสร้างเกม หนว่ ยท่ี คอม ิพวเตอ ์รเ ืบ้องต้น 2. ป ิฏบัติสร้างเกม 1. หลกั และวธิ ีการสรา้ งเกมคอมพิวเตอรเ์ บือ้ งต้น เขียนโปรแกรมเกม 2. ข้ันตอนและจรยิ ธรรมในการเขียนโปรแกรมเกมคอมพวิ เตอร์ ขนาดเล็ก 3. โปรแกรมและเคร่อื งมือทใ่ี ชใ้ นการเขียนโปรแกรมเกมคอมพิวเตอร์ 4. โปรแกรม Microsoft Visual C#   2. ทิศทางการท�ำงานของโปรแกรม   6. เกม Tic Tac Toe   7. การสร้างเกมงู   8. การทดสอบและตดิ ตง้ั เกม      

สารบญั บทที่ 1 หลกั และวิธกี ารสรา้ งเกมคอมพวิ เตอร์เบ้อื งตน้ 1 ความหมายของเกมคอมพวิ เตอร์ 2 ประเภทของเกมคอมพวิ เตอร ์ 4 หลกั การสร้างเกมคอมพวิ เตอร์เบอื้ งต้น 13 องคป์ ระกอบของเกม 17 วิธีการสรา้ งเกมคอมพิวเตอรเ์ บอื้ งตน้ 19 แบบทดสอบและกจิ กรรมการฝกึ ทักษะ 29 ใบงานประจ�ำหน่วยการเรยี นร้ทู ี่ 1 33 บทที่ 2 ขัน้ ตอนและจริยธรรมในการเขียนโปรแกรมเกมคอมพวิ เตอร ์ 37 ซอฟตแ์ วร์ (Software) 38 ภาษาคอมพิวเตอร ์ 40 ขน้ั ตอนการเขียนโปรแกรมเกมคอมพิวเตอร์ 46 จรยิ ธรรมและจรรยาบรรณทดี่ ใี นการเขียนโปรแกรมเกม 52 คอมพวิ เตอร์ 58 จรรยาบรรณวิชาชพี 59 มาตรฐานในการพัฒนาซอฟต์แวร์ 63 แบบทดสอบและกิจกรรมการฝึกทกั ษะ 66 ใบงานประจ�ำหนว่ ยการเรียนรู้ท่ี 2 บทท่ี 3 โปรแกรมและเครอื่ งมือทใี่ ชใ้ นการเขยี นโปรแกรมเกมคอมพิวเตอร ์ 70 โปรแกรมและเครอ่ื งมือที่ใชใ้ นการเขียนโปรแกรมเกม 71 คอมพวิ เตอร ์ 79 โปรแกรมสร้างผังงาน 103 แบบทดสอบและกิจกรรมการฝึกทักษะ

บทท่ี 4 โปรแกรม Microsoft Visual C# 109 110 การเขียนโปรแกรมเกมคอมพิวเตอร์ 113 การเขียนโปรแกรมภาษา C# ด้วย 141 Microsoft Visual C# 2010 Express. 149 ขอ้ มลู ตัวแปร และตวั ด�ำเนินการ 152 แบบทดสอบและกจิ กรรมการฝึกทกั ษะ 157 ใบงานประจ�ำหน่วยการเรยี นรู้ที่ 4 158 178 บทที่ 5 ทิศทางการท�ำงานของโปรแกรม 181 ทศิ ทางการท�ำงานของโปรแกรม แบบทดสอบและกิจกรรมการฝกึ ทักษะ ใบงานประจ�ำหนว่ ยการเรยี นรูท้ ่ี 5 บทที่ 6 เกม Tic Tac Toe 186 187 การสร้างเกม Tic Tac Toe 200 แบบทดสอบและกจิ กรรมการฝึกทักษะ 206 บทท่ี 7 การสรา้ งเกมงู 207 230 การสร้างเกมง ู แบบทดสอบและกิจกรรมการฝึกทกั ษะ

บทที่ 8 การทดสอบและตดิ ตัง้ เกม 234 การทดสอบ 235 การสรา้ งชดุ ตดิ ตั้งของโปรแกรมทีพ่ ัฒนาขนึ้ 242 แบบทดสอบและกจิ กรรมการฝกึ ทักษะ 272 ใบงานประจ�ำหน่วยการเรียนรู้ที่ 8 275 บรรณานุกรม 276

แนวคดิ บทที่ เกมคอมพวิ เตอร์ หมายถงึ โปรแกรมส�ำ เรจ็ รปู ทส่ี รา้ งขน้ึ และใชเ้ ลน่ ดว้ ยเครอ่ื ง 1 คอมพิวเตอร์สำ�หรับฝึกทักษะตามวัตถุประสงค์ของแต่ละเกม ให้ความสนุกสนาน เพลิดเพลิน หลักและ ิว ีธการสร้างเกม ประเภทของเกมคอมพวิ เตอร์ 1. แบ่งตามรูปแบบการเล่นได้ 3 ประเภท คือ เล่นคนเดียว เล่น 2 คน คอม ิพวเตอ ์รเ ้บือง ้ตน และเลน่ กับคอมพิวเตอร์ 2. แบง่ ตามลกั ษณะการแสดงผลได้ 2 ประเภท คอื เกม 2 มติ ิ และเกม 3 มติ ิ 3. แบ่งตามประเภทของเกมได้ 10 ประเภท คือ เกมการศึกษา เกมพซั เซิล เกมแอก็ ชนั เกมผจญภยั เกมสวมบทบาท เกมวางแผน เกมจ�ำ ลอง เกมตอ่ สู้ เกมการยงิ และเกมกฬี า หลกั การสรา้ งเกมคอมพวิ เตอร์ 1. วิธีการ : เป็นรูปแบบการดำ�เนินงานที่ใช้สำ�หรับวิเคราะห์ ออกแบบ และพฒั นาระบบ 2. เทคนคิ : เป็นกระบวนการและรูปแบบปฏิบัติที่ใช้ในการวิเคราะห์และ ออกแบบระบบ 3. เครื่องมือแบบจำ�ลอง : เป็นเครื่องมือการสร้างแบบจำ�ลองกราฟิกใน การอธิบายกระบวนการ ขอ้ มลู วตั ถุ และตรรกะท่เี กิดข้ึนในระบบ สาระการเรียนรู้ 1. ความหมายของเกมคอมพวิ เตอร์ 2. ประเภทของเกมคอมพวิ เตอร์ 3. หลักการสร้างเกมคอมพวิ เตอรเ์ บ้ืองต้น 4. องคป์ ระกอบของเกม 5. วธิ กี ารสร้างเกมคอมพวิ เตอรเ์ บอ้ื งต้น สมรรถนะประจ�ำ บท 1. เรยี นร้หู ลกั และวธิ กี ารสร้างเกมคอมพวิ เตอรเ์ บอื้ งต้น 2. ยกตัวอย่างเกมจากการแบ่งประเภทเกมคอมพิวเตอร์และตามลักษณะ การแสดงผล จดุ ประสงคเ์ ชิงพฤตกิ รรม 1. บอกความหมายและประโยชนข์ องเกมคอมพวิ เตอร์ 2. จำ�แนกประเภทของเกมคอมพวิ เตอร์ 3. อธิบายหลักการและวิธีการท่ีใช้วิเคราะห์และออกแบบการสร้างเกม คอมพิวเตอรเ์ บ้ืองต้น 4. ระบอุ งคป์ ระกอบของเกม 5. อธิบายวิธีการสรา้ งเกมคอมพิวเตอรเ์ บ้ืองตน้

2 บทท่ี 1 หลกั และวธิ ีการสรา้ งเกมคอมพวิ เตอรเ์ บ้อื งต้น หลักและวิธีการสรา้ งเกม คอมพวิ เตอร์เบื้องต้น บทที่ 1 ความหมายของเกมคอมพิวเตอร์ ราชบัณฑิตยสถาน (2546) ให้ความหมายของเกมไว้ว่า “เกม (Game)” คือ การแข่งขันที่มี กตกิ าก�ำหนด เชน่ เกมกฬี า การเลน่ เพ่ือความสนุก เช่น เกมคอมพวิ เตอร์ การแสดงเพือ่ สาธิตกจิ กรรม เชน่ เกมการบรหิ าร ดงั น้นั เกมจงึ เปน็ รปู แบบหนงึ่ ของการเลน่ ทม่ี งุ่ เนน้ ในดา้ นความสนกุ สนาน ท�ำให้เกิด การเรียนรู้ได้ด้วยตนเอง เป็นกิจกรรมที่มีการเล่นหรือการแข่งขัน โดยมีกฎเกณฑ์หรือกติกาควบคุม ให้การเลน่ ด�ำเนินไปอย่างตอ่ เนอื่ ง อาจเป็นการแข่งขันระหว่างผู้เล่น ระหว่างบคุ คล ระหว่างกลมุ่ หรือ ระหว่างบุคคลกับมาตรฐานของเกม และมกี ารตัดสนิ ผลแพ้ชนะเม่ือเกมจบลง ความหมายของเกมคอมพวิ เตอร์ เกมคอมพิวเตอร์ หมายถึง โปรแกรมส�ำเร็จรูปที่สร้างข้ึน และใช้เล่นด้วยเครื่องคอมพิวเตอร์ ส�ำหรบั ฝกึ ทกั ษะตามวัตถปุ ระสงค์ของแตล่ ะเกม ให้ความสนกุ สนานเพลิดเพลนิ

การสรา้ งเกมคอมพวิ เตอรเ์ บ้อื งต้น 3 โดยเกมคอมพิวเตอร์สามารถสร้างสัมผัสใหม่ให้กับผู้เล่นแตกต่างจากสื่อรูปแบบเดิมด้วย 3 คุณสมบัติ ดงั น้ี 1. Hypermediacy หมายถึง ผู้เล่นจะได้สัมผัสกับความหลากหลายของฉาก ค�ำสัง่ ขน้ั ตอน การเล่น มุมมองภาพ แสง สี และเสียง ซ่ึงองค์ประกอบเหล่าน้ี ท�ำให้เกมสามารถส่ือสารกับผู้เล่นได้ หลายมติ ิ และท�ำใหไ้ ดส้ มั ผสั ถงึ ความมีชวี ิตของเกมคอมพิวเตอร์ 2. Transparent Immediacy หมายถึง การที่ผู้เล่นจะสามารถมีส่วนร่วมกับเกมไดม้ ากขึ้น สัมผัสกับเกมได้อย่างใกล้ชิด เป็นธรรมชาติ เช่น ท�ำให้ผู้เล่นรู้สึกต่ืนเต้น เร้าใจ คล้อยตามไปกับเกม เหมอื นเข้าไปมชี ีวิตอย่ใู นเกม ไมร่ ูส้ กึ ถงึ หนา้ จอทขี่ วางก้นั อยู่ 3. Remediation หมายถงึ สอ่ื ใหมย่ งั คงคณุ สมบตั ขิ องสอื่ แบบเดมิ อยู่ แตจ่ ะมคี ณุ สมบตั ใิ หม่ ๆ เพิ่มขนึ้ และท�ำให้แตกตา่ งไปจากสื่อในรูปแบบเดิม ตวั อยา่ งเชน่ เกมคอมพวิ เตอรส์ ามารถจ�ำลองรปู แบบ การน�ำเสนอภาพมมุ มอง การเลา่ เรอื่ งราว และการเคล่อื นไหวของตัวละครมาจากภาพยนตรแ์ ละโทรทศั น์ แต่ท�ำได้มากกว่าในเร่ืองของความเป็นสามมิติ การจ�ำลอง (Simulation) และการโต้ตอบกับผู้เล่น (Interactive) ประโยชนข์ องเกมคอมพวิ เตอร์ 1. สรา้ งพน้ื ฐานการใชค้ อมพวิ เตอรใ์ นอนาคต ดว้ ยการทผ่ี เู้ ลน่ เกมคนุ้ เคยกบั คอมพวิ เตอร์ จงึ สามารถ สร้างพื้นฐานท่ีดีในการใช้คอมพิวเตอร์เพื่อการเรียน บันเทิง หรือผ่อนคลายที่ถูกต้องมาสู่ผู้เล่นเกมท่ีเป็น เยาวชนได้ 2. ช่วยเสริมสร้างความสัมพันธ์ที่ดีในครอบครัว โดยสมาชิกในครอบครัวเล่นเกมคอมพิวเตอร์ ด้วยกัน ผู้ปกครองสามารถแนะน�ำบุตรหลานในการเล่นท้ังวิธีการเล่น รวมถึงใช้เวลานี้สอนบุตรหลาน ในทางท่ีดี ให้บุตรหลานเห็นว่าสิ่งใดควรท�ำและสิ่งใดไม่ควรท�ำ ดังค�ำท่ีเด็กชอบเล่นเกมมักพูดว่า “เกม ไมม่ ปี ระโยชน์ แต่ต้องหยบิ ประโยชนม์ าจากเกม” 3. ฝึกสมาธิ ความจ�ำ และเสริมทักษะต่าง ๆ เช่น ภาษาอังกฤษ เพราะในการเล่นเกมนั้น ต้องรวบรวมสมาธิในการเล่น ถือเป็นการฝึกสมาธิขั้นพื้นฐานท่ีสามารถน�ำไปใช้ในกิจกรรมอ่ืน ๆ ของ ชีวิตได้ และมีวิธีจดจ�ำการเล่นเพ่ือพัฒนาการเล่นในคร้ังต่อไป ซึ่งเกมคอมพิวเตอร์ส่วนใหญ่มีค�ำสั่งเป็น ภาษาอังกฤษ ท�ำให้ผู้เล่นคุ้นเคยต่อค�ำศัพท์น้ัน ๆ และสามารถน�ำมาประยุกต์ใช้ในการเรียนและชีวิต ประจ�ำวนั ได้ ทั้งน้ี แม้การเล่นเกมจะมีประโยชน์ แต่ต้องรู้จักการน�ำไปใช้และเล่นให้เป็นเวลาอย่างเหมาะสม เพราะถา้ เลน่ ในระยะเวลานานเกนิ ไปจะเกดิ ผลเสยี ตามมาได้ ทงั้ สายตาทเี่ พง่ หนา้ จอนานเกนิ ไป สมองสว่ นท่ี ควบคมุ การท�ำงานของสายตาท�ำงานหนัก การนั่งท่าเดมิ เปน็ เวลานานไมม่ ีการเคลอื่ นไหวท�ำใหก้ ล้ามเน้อื เกร็งและล้า ส่งผลต่อการเจริญเตบิ โตของรา่ งกาย

4 บทท่ี 1 หลักและวธิ กี ารสร้างเกมคอมพิวเตอรเ์ บอื้ งตน้ ประเภทของเกมคอมพิวเตอร์ ประเภทของเกมคอมพิวเตอร์ แบ่งตามรูปแบบการเล่นเกม ได้ 3 ประเภท คือ 1. เล่นคนเดียว หมายถึง เกมที่ผู้เล่นแก้ปัญหาของเกมนั้นด้วยตัวเอง โดยท่ีคอมพิวเตอร์ไม่ได้ มีส่วนในการจัดการกับเกมน้ันเลย เช่น เกมพายเรือในคลองคด ซ่ึงผู้เล่นต้องใช้ความสามารถในการ ควบคุมเรือจากจุดเริ่มต้นไปให้ถึงที่หมาย โดยให้เรือกระทบฝั่งน้อยท่ีสุด ซ่ึงเกมประเภทน้ีคอมพิวเตอร์ ไม่ไดเ้ ข้ามามีส่วนรว่ มในการเลน่ เพยี งแตท่ �ำหน้าที่เป็นเครือ่ งมือส�ำหรบั เล่นเกมเทา่ นน้ั 2. เลน่ 2 คน หมายถงึ เกมที่มผี ู้เล่น 2 คน แตล่ ะคนจะเล่นเพ่อื ใหช้ นะค่ตู อ่ สู้ เช่น เกมชกมวย ซ่งึ ผเู้ ล่นแตล่ ะคนต่างพยายามชกใหค้ ตู่ อ่ สู้แพ้ ส�ำหรับเกมประเภทน้ี คอมพิวเตอร์ท�ำหน้าท่ีเปน็ เครอื่ งมือ เล่นเหมอื นประเภทเลน่ คนเดยี ว 3. เล่นกบั คอมพิวเตอร์ หมายถงึ เกมท่ีมีผูเ้ ลน่ ฝา่ ยหนง่ึ และอกี ฝา่ ยหนงึ่ เปน็ เครอื่ งคอมพวิ เตอร์ โดยฝ่ายที่เป็นผู้เล่นอาจมีคนเดียวหรือมากกว่าหน่ึงคนก็ได้ เช่น ยามยิงศัตรูต่างดาว ซ่ึงคอมพิวเตอร์ จะท�ำหนา้ ที่สร้างมนุษย์ต่างดาวทมี่ ีความสามารถต่าง ๆ ออกมาตอ่ ส้กู ับผูเ้ ล่น ฝ่ายผ้เู ลน่ กต็ อ้ งคอยยงิ ตอ่ สู้ เพอื่ ปอ้ งกนั ไมใ่ หม้ นษุ ยต์ า่ งดาวเขา้ มาในโลก ในกรณนี ี้ คอมพวิ เตอรม์ บี ทบาททงั้ ในฐานะเครอ่ื งมอื เลน่ เกม และเปน็ ผเู้ ล่นเกมด้วย ประเภทของเกมคอมพิวเตอร์ แบ่งตามลักษณะการแสดงผลได้ 2 ประเภท คือ 1. เกม 2 มิติ เป็นเกมทีม่ กี ารแสดงผลเปน็ ภาพ 2 มติ ิ โดยตวั ละคร หรอื ฉาก สามารถเคล่อื นท่ี ได้เฉพาะในแนวแกน x และ y ไมส่ ามารถเปล่ียนมุมมองในการเล่นได้ ตัวอย่างเกม 2 มิติ ที่เล่นบนเคร่ืองเล่นเกมยหี่ อ้ แฟมลิ ี่ (Family) ในสมยั กอ่ น เช่น เกมคอนทรา เกมมารโิ อ

การสร้างเกมคอมพิวเตอรเ์ บอ้ื งตน้ 5 ตวั อยา่ งเกม 2 มติ ิ ในปจั จุบัน เชน่ เกม เรด อะเลิรต์ 3 2. เกม 3 มิติ เปน็ เกมทม่ี กี ารแสดงผลเปน็ ภาพ 3 มิติ โดยตัวละครหรอื ฉากสามารถเคลือ่ นท่ไี ด้ ทง้ั ในแนวแกน x แกน y และ แกน z ผู้เล่นสามารถเปลย่ี นมมุ มองในการเล่นได้ ตวั อยา่ งเกม 3 มติ ิ เช่น เกม ซิมส์ 3 เกม วอร์คราฟต์ 3 บางเกมนน้ั เมือ่ สร้างและได้รับความนิยมจากผู้เลน่ จึงพฒั นาจากเกม 2 มติ ิเป็น 3 มิติ ตัวอย่าง เชน่ เกมเวริ ม์ เกมเวริ ม์ 2 มติ ิ เกมเวริ ม์ 3 มติ ิ

6 บทท่ี 1 หลักและวิธีการสร้างเกมคอมพิวเตอร์เบื้องต้น นอกจากน้ียงั มเี กมท่ีสรา้ งผสมทง้ั รปู แบบ คือ ทงั้ 2 มิติ และ 3 มติ ิ ตัวอย่าง คอื เกมกิก๊ ออนไลน์ ประเภทของเกมคอมพิวเตอร์ แบ่งตามประเภทของเกม ได้ 10 ประเภท คือ 1. เกมการศึกษา ซง่ึ มีวตั ถุประสงคใ์ หค้ วามรูแ้ ละความเพลดิ เพลิน ตัวอยา่ ง เกมจับคู่ เกมคำ� ศัพทภ์ าษาองั กฤษ เกมคณิตศาสตร์ 2. เกมพัซเซิล (Puzzle Game) เป็นเกมท่สี ามารถเลน่ ไดท้ กุ วยั โดยเกมจะเนน้ การแก้ปริศนา ปญั หาตา่ ง ๆ ต้ังแต่ระดับง่ายไปถึงซับซอ้ น อาจน�ำมาจากนติ ยสาร เช่น เกมตวั เลข เกมอักษรไขว้ และ พัฒนาเปน็ เกมคอมพวิ เตอร์ ตวั อยา่ ง

การสร้างเกมคอมพิวเตอร์เบอื้ งต้น 7 เกม Bejeweled 3 เกม Tetris เกมจิ๊กซอว์ 3. เกมแอ็กชัน (Action Game) เป็นเกมท่ีเล่นง่าย จึงได้รับความนิยมในกลุ่มผู้เล่นเกม โดยบังคับทศิ ทางและการกระท�ำของตวั ละครในเกม เพอื่ ผา่ นดา่ นต่าง ๆ ตวั อยา่ ง เกมร็อกแมน (Rockman) เกมเมทัลสลกั (Metal Slug)

8 บทที่ 1 หลักและวธิ กี ารสร้างเกมคอมพิวเตอรเ์ บ้ืองต้น 4. เกมผจญภยั (Adventure Game) เกมน้จี ะเน้นไปทีเ่ ร่อื งราวของเกม สิง่ ส�ำคัญ คอื การ เปดิ เผยเรอื่ งราวทช่ี วนตดิ ตามทลี ะนอ้ ยจนถงึ ตอนจบ เน้ือเรื่องมักอิงเร่ืองที่เก่ียวกับความลึกลับหรอื การ ผจญภยั ทตี่ น่ื เตน้ อาจไมม่ กี ารเพม่ิ ระดบั ของตวั ละครและในการเลน่ ไมจ่ �ำเปน็ ตอ้ งใชก้ ารบงั คบั ทยี่ าก ตวั อยา่ ง เกมทมู บ์เรเดอร์ (Tomb Raider) เกมปรินซ์ ออฟ เปอร์เซยี (Prince of Persia) 5. เกมสวมบทบาท (Role Playing Game) นยิ ม เกมไดอะโบล (Diablo) เรียกว่า เกมภาษา เน่ืองจากเกมที่ออกมาในช่วงแรกเป็น ภาษาอังกฤษหรือภาษาญี่ปุ่น ท�ำให้ต้องใช้ความรู้ด้านภาษา น้ัน ๆ ในการเล่นเกม ซึ่งเกมประเภทน้ีจะก�ำหนดตัวผู้เล่น อยใู่ นโลกทส่ี มมตขิ นึ้ และใหผ้ เู้ ลน่ สวมบทบาทเปน็ ตวั ละครหนงึ่ ในโลกน้ัน ๆ เล่นตามเนื้อเรื่องท่ีก�ำหนด โดยมีจุดเด่นด้าน การพัฒนาระดับประสบการณ์ของตัวละคร (Experience) เพอ่ื ใหช้ นะตวั รา้ ยทส่ี ดุ ในเกม ตวั เกมไมเ่ นน้ การบงั คบั ทย่ี ากนกั แต่จะใหผ้ ้เู ลน่ สมั ผสั กบั เรอื่ งราว เกมสวมบทบาทยงั สามารถ แยกย่อยไดอ้ กี หลายประเภท เชน่ - Action RPG คือ เกมสวมบทบาททเ่ี พม่ิ สว่ น ของการบงั คับแบบเกมแอ็กชนั ลงไป - Simulation RPG คือ เกมสวมบทบาทท่ีมี การเล่นในแบบของการวางแผนการรบ - MMO RPG (Massively Multiplayer Online) คือ เกมสวมบทบาทท่ีเล่นกับผู้เล่นที่เป็นคนจริง โดยคนอ่ืน ๆ ในโลกท่ีสร้างข้ึนสามารถก�ำหนดการผจญภัย ของตัวเองได้อย่างอิสระ รวมทั้งมีการติดต่อกับผู้เล่นอ่ืน ๆ เพ่ือหาเพื่อนหรือขอ้ มลู ข่าวสารในเกมได้ ตวั อยา่ งของเกมสวมบทบาท ไดแ้ ก่

การสรา้ งเกมคอมพวิ เตอร์เบือ้ งต้น 9 เกมเซลดา (Zelda) เกมไฟนอล แฟนตาซี (Final Fantasy) เกมทรานสฟอรเ์ มอรส์ (Transformers) 6. เกมวางแผน (Strategy Game) เป็นเกมที่เน้นการควบคุม เช่น การควบคุมกองทัพ ซึ่งประกอบด้วยหน่วยทหารย่อย ๆ เข้าท�ำการสรู้ บกัน สามารถเลน่ รว่ มกันได้หลายคน ตัวอย่าง เกมแบตเทิลสเตชัน แปซฟิ กิ เกมเอจ ออฟ เอม็ ไพร์ (Battlestations Pacific) (Age of Empires)

10 บทที่ 1 หลกั และวธิ กี ารสร้างเกมคอมพิวเตอร์เบ้ืองต้น เกมวอรค์ ราฟต์ เกมคอมมานด์ แอนด์ คองเคอร์ เรด อะเลริ ์ต (Warcraft) (Command-Conquer Red Alert) 7. เกมจำ� ลอง (Simulation Game) เปน็ เกมจ�ำลองสถานการณต์ า่ ง ๆ มาใหผ้ เู้ ลน่ ไดส้ วมบทบาท เป็นผู้อยู่ในสถานการณ์นั้น ๆ และตัดสินใจในการกระท�ำเพ่ือลองดูว่าจะเป็นอย่างไร เหตุการณ์ต่าง ๆ อาจน�ำมาจากสถานการณจ์ ริงหรอื สมมตกิ ไ็ ด้ ตัวอยา่ ง เกมจ�ำลองการบนิ เกมจำ� ลองการขับรถประจ�ำทาง (Flight Simulator) (Bus-Simulator) เกมจ�ำลองการขบั รถไฟ เกมจำ� ลองการท�ำการเกษตร (Train Simulator) (Farming Simulator)

การสรา้ งเกมคอมพิวเตอร์เบ้อื งตน้ 11 8. เกมต่อสู้ (Fighting Game) เป็นเกมที่เน้น การต่อสู้ตัวต่อตัวหรือสู้เป็นทีม ไม่มีผ่านด่านระดับสูงขึ้น ใชก้ ารเตะ ตอ่ ย หรอื ศลิ ปะการตอ่ สปู้ ระเภทตา่ ง ๆ เขา้ สกู้ นั มีการท�ำท่าชุด หรือที่เรียกว่า คอมโบ (Combo) เปน็ ที่ นยิ มในกลมุ่ เพื่อน เพราะการเล่นข้ึนอยู่กับฝีมือของผู้เล่น ท่ีใช้ในการควบคุมตัวต่อสใู้ นเกมเปน็ หลัก เกมต่อสูม้ ักท�ำ ตัวละครในเกมมีความสามารถแตกตา่ งกัน ผ้เู ล่นสามารถ เลือกตัวต่อสู้ที่ตนถนัดหรือใช้เป็นประจ�ำเพื่อต่อสู้กับ ผู้เล่นอน่ื ตัวอย่าง เกมไฟติง้ ไคลแมกซ์ (Fighting Climax) เกมสตรตี ไฟเตอร์ (Street Fighter) 9. เกมการยงิ (Shooting Game) เกมประเภทนี้ จะเนน้ การยงิ ศตั รเู ปน็ หลกั ตวั ผเู้ ลน่ ในเกมมกั จะมอี ปุ กรณ์ ประเภทปืน หรือเคร่ืองบินที่ยิงกระสุนได้ไม่มีวันหมด ท�ำการฝ่าฟันอุปสรรคเพื่อไปสู่ฉากต่อไปด้วยการยิง ท�ำลายเปา้ หมายในเกม และในขณะเดียวกันก็ต้องหลบ กระสุนของฝ่ายตรงข้ามดว้ ย ตัวอยา่ ง เกม Gradius เกม Sudden Attack

12 บทท่ี 1 หลกั และวธิ กี ารสร้างเกมคอมพิวเตอรเ์ บื้องต้น 10. เกมกีฬา (Sport Game) เป็นเกมการเล่นกีฬาชนิดต่าง ๆ โดยเล่นตามกติกาหลักเหมือน เกมจรงิ และใชฝ้ ีมือของผูเ้ ล่นเองในการเอาชนะ ตัวอยา่ ง เกม Tiger Woods PGA Tour Online เกมฟฟี ่า (FIFA) เกม Fight Night เกม NBA Live

การสรา้ งเกมคอมพวิ เตอรเ์ บ้อื งต้น 13 หลกั การสรา้ งเกมคอมพวิ เตอรเ์ บ้อื งตน้ หลักการสร้างเกมคอมพิวเตอร์เบ้ืองต้นน้ัน เปรียบเหมือนการพัฒนาระบบสารสนเทศท่ีต้องมี วธิ กี าร เทคนคิ เครอ่ื งมอื ขน้ั ตอนการด�ำเนนิ งานทเ่ี ปน็ ระบบ เพอ่ื ใหเ้ กมทไ่ี ดม้ ามปี ระสทิ ธภิ าพ ตอบสนอง วัตถุประสงค์หลักของการสร้างเกมได้ การวิเคราะห์และออกแบบระบบ (Systems Analysis and Design : SAD) จึงเปน็ กระบวนการเชงิ โครงสร้างที่ใช้พฒั นาระบบสารสนเทศ (Information System) ดงั รายละเอียดต่อไปนี้ วิธีการ (Methodologies) เป็นรูปแบบการด�ำเนินงานท่ีใช้ส�ำหรับวิเคราะห์ ออกแบบและ พฒั นาระบบ จ�ำแนกเปน็ 1. วิธวี งจรพัฒนาระบบ (Systems Development Life Cycle : SDLC) ซึง่ เปน็ วธิ แี บบดั้งเดมิ 2. วิธีพัฒนาระบบงานแบบรวดเร็ว (Rapid Application Development : RAD) เป็นวิธี แบบใหม่ เทคนิค (Techniques) เป็นกระบวนการ (Process) และรูปแบบปฏิบัติ (Procedures) ที่ใช้ ในการวิเคราะห์และออกแบบระบบ เพ่ือให้การพัฒนาระบบมีวิธีการที่เป็นระบบ ได้มาตรฐานและมี ประสทิ ธภิ าพ ได้แก่ 1. เทคนคิ การรวบรวมข้อมลู (Data Gathering) เป็นการรวบรวมขอ้ เท็จจรงิ เกย่ี วกับระบบ 2. เทคนคิ การจัดการโครงการ (Project Management) ช่วยในการวางแผนการพฒั นาระบบ เครือ่ งมือแบบจำ� ลอง (Model Tools) เปน็ เคร่อื งมือการสรา้ งแบบจ�ำลองกราฟิกในการอธบิ าย กระบวนการ (Process) ข้อมูล (Data) วัตถุ (Object) และตรรกะ (Logic) ที่เกิดขึ้นในระบบ ส�ำหรับ แบบจ�ำลองเชงิ วตั ถจุ ะมเี ครอ่ื งมอื ส�ำหรบั การวเิ คราะห์ การออกแบบ และการเขยี นโปรแกรมเชงิ วตั ถุ ดงั นี้ 1. แบบจ�ำลองกระบวนการ ได้แก่ แผนภาพกระแสข้อมูล (Data Flow Diagram : DFD) และเครื่องมือทีน่ ยิ มใช้คกู่ นั คือ พจนานกุ รมข้อมลู (Data Dictionary) ภาษาโครงสรา้ ง (Structured Language) ตารางตัดสินใจ (Decision Table) และผังต้นไม้ (Decision Tree) และอาจมีเครื่องมือ พนื้ ฐาน เชน่ ผังโครงสร้างระบบงาน ผังงาน (Flowchart) เปน็ ตน้ 2. แบบจ�ำลองข้อมูล ได้แก่ แผนภาพความสัมพันธ์ระหว่างเอนทิตี (Entity-Relationship Diagram : ERD) 3. แบบจ�ำลองเชิงวตั ถุ ไดแ้ ก่ ยเู อ็มแอล (Unified Modeling Language : UML) ซ่งึ การใชแ้ บบจ�ำลองทัง้ 3 แบบนนั้ สามารถน�ำซอฟตแ์ วรส์ �ำเร็จรปู ท่ีมีมาสนับสนนุ การท�ำงาน ของข้ันตอนต่าง ๆ ได้ เชน่ เคส (Computer-Aided Software Engineering : CASE) เปน็ ตน้

14 บทที่ 1 หลกั และวธิ กี ารสร้างเกมคอมพิวเตอรเ์ บ้ืองต้น ภาษายคุ ที่ 4 (Fourth Generation Language) มลี กั ษณะไรก้ ระบวนค�ำสง่ั (Nonprocedural Language) ซงึ่ ใกลเ้ คียงกับภาษามนุษยม์ าก ท�ำให้เขียนโปรแกรมได้สะดวกไม่ตอ้ งใช้เวลานาน ส่วนมาก ใชก้ ับระบบฐานขอ้ มูล ได้แก่ - ภาษาสอบถาม (Query Language) ส�ำหรับค้นคืนข้อมูลจากฐานข้อมูล เป็นการใช้งาน เชงิ โต้ตอบ คือ มกี ารถาม - ตอบระหว่างคอมพิวเตอรท์ ันที - โปรแกรมช่วยสรา้ งรายงาน (Report Generator) ส�ำหรับสรา้ งแบบฟอรม์ รายงาน - ภาษากราฟิก (Graphics Language) ส�ำหรับแสดงสารสนเทศในรปู แบบกราฟกิ - โปรแกรมสนบั สนนุ การประยุกต์งาน ตวั อยา่ งเชน่ ระบบจัดการฐานขอ้ มลู - โปรแกรมช่วยสร้างเว็บไซต์ ตัวอย่างเช่น โปรแกรม Dreamweaver ช่วยพัฒนาเว็บไซต์ โดยใชภ้ าษา HTML (Hypertext Markup Language) ในการแสดงเอกสารหนา้ เวบ็ แตล่ ะหนา้ หรอื ใช้ XML (Extensible Markup Language) ทสี่ ามารถก�ำหนดข้อมูลไดอ้ ย่างยืดหย่นุ - โปรแกรมแบบวิชวล (Visual Programming) สนับสนุนการสร้างส่วนต่อประสานกับผู้ใช้ (GUI : Graphic User Interface) การท�ำรายงาน และอนื่ ๆ เชน่ โปรแกรม Visual Studio, PowerBuilder, Delphi วิธีการที่ใชว้ เิ คราะห์และออกแบบระบบ ดังรายละเอียดข้างต้นน้ัน การวิเคราะห์และออกแบบระบบสารสนเทศจ�ำเป็นต้องมีวิธีการ เครื่องมือและเทคนิคเพื่อให้มีประสิทธิภาพและได้มาตรฐาน โดยมี 2 วิธีการ คือ วิธีวงจรพัฒนาระบบ (SDLC) และวิธพี ัฒนาระบบงานแบบรวดเรว็ (RAD) ซ่งึ วิธวี งจรพัฒนาระบบ (SDLC) เป็นวธิ ีการพัฒนา ระบบแบบเดมิ ทต่ี อ้ งใชร้ ะยะเวลานานและทรพั ยากรมาก ตา่ งจากวธิ พี ฒั นาระบบงานแบบรวดเรว็ (RAD) ท่มี เี ทคโนโลยีใหม่ ๆ และเครอ่ื งมือต่าง ๆ ช่วยในการพฒั นาระบบ ทง้ั น้ียังสามารถพฒั นาระบบโดยการ ผสมผสานวิธีการต่าง ๆ เช่น วิธีการเชิงวัตถุ การใช้ตัวต้นแบบ (Prototyping) ซอฟต์แวร์เคส (CASE) ภาษาคอมพวิ เตอรย์ ุคท่ี 4 และการพัฒนาระบบงานรว่ มกัน (Joint Application Development : JAD) ระหว่างผู้ใช้ระบบ (User) กับผู้พัฒนาระบบ รวมถึงการวิเคราะห์และออกแบบเชิงวัตถุ (Object- Oriented Analysis and Design : OOAD) ท่ีเป็นการมองระบบเหมอื นวตั ถุ ประกอบดว้ ยขอ้ มลู และ การท�ำงานของขอ้ มลู วัตถแุ ต่ละตัวจะสามารถน�ำไปใชง้ านใหมไ่ ด้ ซึง่ จะใชเ้ คร่ืองมือแบบจ�ำลองเชิงวัตถุ 1. วิธีวงจรพัฒนาระบบ (SDLC) เป็นการด�ำเนินงานตามข้ันตอนที่ก�ำหนดไว้อย่างแน่นอน แบ่งงานระหวา่ งผเู้ กีย่ วข้องชดั เจน เป็นวธิ ที ่ใี ชส้ �ำหรับการพฒั นาระบบงานขนาดกลางหรอื ขนาดใหญท่ มี่ ี ระบบซบั ซ้อน มีข้อก�ำหนดคณุ สมบัตติ ่าง ๆ อยา่ งเปน็ ทางการและคอ่ นข้างคงท่ี ข้อด้อย คอื เปน็ วธิ ีการ ทีต่ อ้ งใชเ้ วลานาน 2. วธิ พี ฒั นาระบบแบบรวดเรว็ (RAD) เปน็ แนวคดิ ทเ่ี รม่ิ ชว่ งปลายทศวรรษ 1980 และตน้ 1990 ซ่ึงแนวคิดนยี้ ังใชห้ ลกั การของวธิ ีวงจรพัฒนาระบบ (SDLC) โดยลดข้นั ตอน ลดงบประมาณด้านบุคลากร

การสร้างเกมคอมพวิ เตอร์เบื้องตน้ 15 เวลา ทรพั ยากร น�ำโปรแกรมช่วยพัฒนาระบบท่ีสามารถเรียนรู้ได้เร็ว ใช้งานงา่ ย ก�ำหนดความตอ้ งการ ของระบบและความคาดหวงั ทจ่ี ะได้รบั ของระบบ สนบั สนนุ การเขา้ มามีสว่ นรว่ มของผใู้ ชม้ ากทส่ี ดุ ค�ำนงึ ถงึ เครอื่ งมอื คน วธิ กี าร การบรหิ ารจดั การ ซง่ึ วธิ นี ล้ี ดขน้ั ตอนของวงจรพฒั นาระบบจาก 7 ขน้ั ตอนเหลอื เพยี ง 4 ข้ันตอน เปรยี บเทยี บขนั้ ตอนของ SDLC กับ RAD SDLC RAD 1. ค้นหาและเลือกสรรโครงการ 1. การวางแผน (Planning) (Project Identification and Selection) 2. จัดตงั้ และวางแผนโครงการ (Project Initiating and Planning) 3. วิเคราะห์ระบบ (Analysis) 4. ออกแบบเชิงตรรกะ (Logical Design) 2. การออกแบบ (Design) 5. ออกแบบเชิงกายภาพ (Physical Design) 6. พฒั นาและติดตั้งระบบ 3. การสรา้ งระบบ (Construction) (System Implementation) 7. ซ่อมบ�ำรุงระบบ (System Maintenance) 4. การเปลีย่ นระบบ (Cutover) การพัฒนาระบบนั้น ต้องใช้เทคนิคการรวบรวมข้อมูล เคร่ืองมือแบบจ�ำลอง แผนภาพต่าง ๆ อธบิ ายลกั ษณะการท�ำงานของระบบและขอ้ มลู ทใี่ ชใ้ นระบบ ซง่ึ ชว่ ยลดระยะเวลาการท�ำงานในบางขน้ั ตอนได้ ลดข้อผิดพลาดน้อยลง เคร่ืองมือท่ีเป็นโปรแกรมสามารถช่วยสร้างแผนภาพ รายงาน แบบฟอร์มและ รหัสโปรแกรมไดอ้ ตั โนมัติอกี ดว้ ย ส�ำหรบั วธิ กี ารพฒั นาระบบแบบรวดเรว็ สามารถจ�ำแนกไดเ้ ปน็ การพฒั นาระบบรว่ มกบั การจดั ท�ำ ต้นแบบ การใช้ซอฟต์แวร์เคส และการวิเคราะห์ ออกแบบ เขียนโปรแกรมเชิงวัตถุ ดังรายละเอียด ตอ่ ไปน้ี 1. การพัฒนาระบบร่วมกัน (Joint Application Development : JAD) โดยผู้ใช้และ ผพู้ ฒั นาระบบมสี ว่ นรว่ มในการก�ำหนดความตอ้ งการของระบบรว่ มกนั (Joint Requirement Planning : JRP) และออกแบบร่วมกัน (Joint Application Design : JAD) เพ่ือลดเวลา ค่าใช้จ่าย ข้ันตอนการ รวบรวมข้อมูล เป็นวิธีที่บริษัท IBM พัฒนาขึ้นในช่วงปลายทศวรรษ 1970 และนิยมใช้เป็นเทคนิคใน การรวบรวมข้อมูลรว่ มกนั ระหว่างผทู้ ่เี กีย่ วข้อง

16 บทที่ 1 หลกั และวธิ กี ารสร้างเกมคอมพิวเตอร์เบือ้ งตน้ 2. การจดั ทำ� ตน้ แบบ (Prototyping) เปน็ การจดั สรา้ งระบบทดลองหรอื ระบบตน้ แบบก่อนการ พฒั นาระบบทงั้ หมดขนึ้ มา แลว้ ใหผ้ ใู้ ชท้ �ำการทดสอบหาขอ้ บกพรอ่ งและประเมนิ คา่ ระบบ น�ำไปปรบั ปรงุ ทดสอบประเมินใหม่ วนซ้�ำไปเรอ่ื ย ๆ จนกวา่ จะเป็นทยี่ อมรบั ของผู้ใช้จงึ น�ำไปปรับเปลย่ี นเปน็ ระบบจริง ท�ำให้ผ้ใู ชม้ ีส่วนรว่ มในการพัฒนาระบบ เหมาะกบั สิง่ แวดล้อมทไ่ี ม่สามารถก�ำหนดความต้องการทชี่ ัดเจน แนน่ อนได้ มีขั้นตอนการจดั ท�ำตน้ แบบ 4 ขั้นตอน คือ 1) ก�ำหนดความต้องการของระบบข้ันพื้นฐาน ซึง่ นักวเิ คราะหแ์ ละกลุ่มผใู้ ช้ร่วมกนั ก�ำหนด ความตอ้ งการขั้นพนื้ ฐานของระบบส�ำหรบั ผ้ใู ช้ในกลมุ่ 2) พัฒนาระบบต้นแบบ เชน่ รปู แบบการรายงานผล รูปแบบการรับเข้าข้อมลู 3) น�ำระบบตน้ แบบไปใช้งาน โดยกลุม่ ผ้ใู ช้จะเป็นผ้ทู ดลอง ทดสอบ ประเมนิ ประสทิ ธิภาพ ค้นหาขอ้ ผดิ พลาดของระบบเพอ่ื น�ำไปปรบั เปลย่ี นแกไ้ ขใหม่ 4) ทบทวนผลการท�ำงานของระบบต้นแบบ ถ้าเป็นที่ยอมรับของกลุ่มผู้ใช้ก็สามารถน�ำไป ปรบั ปรงุ ใชก้ ับระบบจรงิ ถา้ ยังไม่ยอมรับก็ท�ำการกลับไปท�ำงานในขัน้ ท่ี 3 และ 4 วนซ�้ำไปจนกว่าเปน็ ที่ ยอมรบั 3. การใช้ซอฟต์แวร์เคส (Computer-Aided Software Engineering : CASE) เป็น ซอฟตแ์ วรส์ �ำเรจ็ รปู ทสี่ นบั สนนุ การพฒั นาระบบสารสนเทศ ชว่ ยพฒั นาโปรแกรม ชว่ ยสรา้ งแบบฟอรม์ ตา่ ง ๆ ให้มีมาตรฐาน เป็นเคร่ืองมืออ�ำนวยความสะดวก เพิ่มประสิทธิภาพ ท�ำให้มีมาตรฐาน มีโครงสร้างท่ีดี แต่มีราคาสูง ต้องใช้เวลาในการฝึกอบรมนาน ตัวอย่างเช่น Oracle’s Developer, Rational ROSE, Visio ซึ่งลดข้อผิดพลาด และสามารถเหน็ ภาพต้นแบบในการน�ำไปใช้และปรบั แกไ้ ดอ้ ยา่ งรวดเร็ว 4. การวิเคราะห์ ออกแบบ เขียนโปรแกรมเชิงวัตถุ (Object-Oriented Analysis and Design : OOAD) ปจั จบุ นั ใชว้ ธิ นี มี้ ากเพราะเปน็ วธิ ที ม่ี องระบบเปน็ กลมุ่ วตั ถุ ทง้ั การวเิ คราะห์ ออกแบบเขยี น พฒั นาโปรแกรมโดยใชแ้ นวคดิ เชงิ วัตถุ มีเครื่องมอื อตั โนมตั ิสนับสนุนมากในทกุ ขน้ั ตอน โดยที่วิธีการเชิงวัตถุนั้น จะมองระบบเป็นกลุ่มของวัตถุ (Object) วัตถุแต่ละชิ้นมีหน้าท่ี คือ มีข้อมูล (Data) การด�ำเนินการ (Operation) รวมอยู่ วัตถุสามารถโยกย้ายปรับเปล่ียนโดยไม่กระทบ กับส่วนอื่น เน้นท่ีตัววัตถุท่ีประกอบกันเป็นระบบ วัตถุสามารถสืบทอดคุณสมบัติ (Inheritance) ไปยัง วัตถุใหม่ได้ ช่วยให้น�ำวัตถุไปใช้ใหม่ได้อีกและลดเวลาการพัฒนาข้ึนใหม่ อาจเรียกวัตถุว่า เอนทิตี้ (Entity) หรอื สง่ิ ทป่ี รากฏในระบบ ไดแ้ ก่ คน สงิ่ ของ สถานที่ เหตกุ ารณ์ ซงึ่ วตั ถเุ ปน็ แหลง่ รวมของขอ้ มลู และการด�ำเนนิ การ มกี ารตดิ ตอ่ สอื่ สารถงึ กนั (Message) และคลาส (Class) คอื กลมุ่ ของวตั ถทุ มี่ ลี กั ษณะ โครงสรา้ งพฤตกิ รรม (Behavior) เหมือนกนั คอื แต่ละคลาสจะมีลกั ษณะขอ้ มูล (State) และพฤติกรรม ตามบทบาท โดยคลาสจะเป็นตัวก�ำหนดคุณสมบัติของวัตถุ นอกจากน้ัน วัตถุยังสามารถปิดซ่อน (Encapsulation) ข้อมูลไม่ใหว้ ตั ถอุ น่ื มองเหน็ ได้

การสร้างเกมคอมพิวเตอรเ์ บ้อื งตน้ 17 องค์ประกอบของเกม ในการสร้างเกมคอมพิวเตอร์น้ัน ต้องใช้ทักษะท้ังทางศาสตร์ท่ีเกี่ยวกับการเขียนโปรแกรม และทักษะทางศิลป์ที่ต้องออกแบบให้สามารถสร้างความสนใจแก่ผู้เล่น ต้องใช้ท้ังสองทักษะร่วมกับ ประสบการณ์และจินตนาการในการพัฒนาเกม ซ่ึงสิ่งท่ีผู้พัฒนาเกมควรน�ำมาค�ำนึงถึงเพ่ือเป็นประโยชน์ ส�ำหรบั การออกแบบและพฒั นา มอี งคป์ ระกอบที่ควรพิจารณาดงั นี้ 1. จุดหมายของเกม (Goal) เป็นสิ่งที่ท้าทายให้ผู้เล่นต้องไปให้ถึงจุดหมายของเกม ซ่ึงเป็น จุดส้ินสุดของการเล่นเกมและคอยกระตุ้นให้ผู้เล่นต้องการเล่น เพ่ือจะได้ผ่านไปเล่นในด่านต่อไปจนเป็น ผู้ชนะในเกม จุดหมายของเกมนั้นต้องไม่ยากเกินไป เพราะจะท�ำให้ผู้เล่นเลิกเล่นไปในที่สุด และต้อง ไม่ง่ายเกินไปเช่นกัน เพราะจะท�ำให้ไม่เกิดความท้าทายในการเล่น เม่ือชนะในเกมง่ายเกินไปผู้เล่น ก็เลิกเล่นเช่นกัน ในการออกแบบจดุ หมายของเกมทด่ี นี ัน้ ควรเริม่ ตน้ จากการทา้ ทายอย่างงา่ ย เมอ่ื ผเู้ ลน่ สามารถเลน่ เกมไดอ้ ยา่ งคนุ้ เคย ควบคมุ การเลน่ ในเกมไดแ้ ลว้ ผเู้ ลน่ จะรสู้ กึ สนกุ จนท�ำใหเ้ กดิ ความตอ้ งการ เลน่ ในดา่ นต่อไป และในด่านต่อไปนน้ั ควรเพมิ่ ระดบั ความยากขึ้นเป็นล�ำดับ เพอ่ื ใหผ้ เู้ ลน่ เกดิ ความทา้ ทาย และเล่นจนเป็นผชู้ นะในเกม 2. ความท้าทาย (Challenges) เปน็ สงิ่ ท่ีท�ำให้เกมน่าสนใจ ชวนติดตาม และสนกุ เพลดิ เพลนิ เพราะผู้เล่นได้ใช้ความคิด ความรู้ การบูรณาการท้ังความรู้และความคิดพร้อมทั้งทักษะอ่ืน ๆ ในการ แกป้ ญั หาทก่ี �ำลงั เจอในเกม เมอื่ สามารถผา่ นความทา้ ทายเหลา่ นน้ั ได้ ผเู้ ลน่ กจ็ ะเกดิ ความภาคภมู ใิ จในตวั เอง และความท้าทายของเกมนั้น สามารถเห็นได้จากความยากที่เกมน้ันมีอยู่ ในขณะที่เล่นผู้เล่นจะพัฒนา ความสามารถตามความยากทเี่ กมน�ำเสนอได้ จงึ จ�ำเปน็ อยา่ งยงิ่ ทคี่ วรออกแบบเกมใหเ้ พม่ิ ความยากตามล�ำดบั และควรให้ระดับความยากของเกมสูงกว่าระดับความรู้ความสามารถของผู้เล่น เพ่ือให้เกิดความท้าทาย และความสนกุ ควบคู่กนั ในความท้าทายที่น�ำเสนอในเกมน้ัน ควรน�ำเสนอให้ผู้เล่นท�ำความเขา้ ใจไดง้ ่าย ให้ผู้เล่นรับรู้ได้ถึงสิ่งที่เกมต้องการให้ผู้เล่นท�ำ มีความยากในการผ่านความท้าทายในเกมแต่ต้องไม่ยาก เกินไป ซ่งึ ในการออกแบบเกมให้มคี วามท้าทายที่เหมาะสมนน้ั ถือเปน็ เรื่องยาก เพราะความสามารถของ ผเู้ ลน่ ในแตล่ ะกลมุ่ กม็ ไี มเ่ หมอื นกนั โดยการแกป้ ญั หานม้ี กั ใชว้ ธิ สี รา้ งทางเลอื กใหผ้ เู้ ลน่ เลอื กระดบั ความยาก นอกจากนั้นในการออกแบบเกมข้ันสูง ก็จะออกแบบให้เกมสามารถวิเคราะห์พฤติกรรมผู้เล่น และปรับ ความท้าทายให้เหมาะสมกับผู้เล่นแต่ละคนด้วย ซึ่งจะท�ำให้ผู้เล่นพบความท้าทายตลอดเกมพร้อมทั้ง ให้เกมนั้น ๆ น่าสนใจมากย่ิงขนึ้ 3. ความสมดุล (Balance) ในเกมนัน้ ควรมคี วามสมดลุ ทีต่ อ้ งพจิ ารณา ดงั น้ี 3.1 ความสมดลุ ระหวา่ งผเู้ ลน่ (Balance Between Players) ในเกมทม่ี ผี เู้ ลน่ ตง้ั แต่ 2 ฝา่ ย

18 บทที่ 1 หลักและวิธีการสรา้ งเกมคอมพวิ เตอรเ์ บือ้ งตน้ ขน้ึ ไป ทง้ั ผู้เล่นทเ่ี ป็นคนจริงและคอมพิวเตอร์ นอกจากนัน้ ตวั ละครในเกมควรออกแบบใหม้ คี วามสามารถ ท่ีท�ำให้ผู้เล่นแต่ละฝ่ายรูส้ ึกวา่ ตวั ละครทเ่ี ลอื กเล่นไมเ่ สยี เปรยี บฝ่ายตรงข้าม 3.2 ความสมดลุ ระหวา่ งผเู้ ลน่ กบั เกม (Balance Between the Player and the Game Play) คือ การออกแบบความสามารถในการสนับสนุนผู้เล่นของเกม เป็นบางกิจกรรมท่ีเกมสามารถ ท�ำแทนผู้เล่นไดเ้ ลย เชน่ การที่ผู้เล่นก�ำหนดเพียงจุดหมายปลายทาง แตก่ ารเคลื่อนท่ีไปถงึ จุดหมายน้ัน เกมจะเปน็ สว่ นเคลอ่ื นทเ่ี อง หรอื การก�ำหนดเสน้ ทางทเี่ หมาะสมกบั ตวั ละคร หรอื การหลบหลกี สง่ิ กดี ขวาง ต่าง ๆ ในกิจกรรมท่เี กมสนับสนนุ นี้ ควรเป็นกจิ กรรมทย่ี ุง่ ยากหรอื ต้องท�ำซ้ำ� ท้งั นี้ตอ้ งไมเ่ กดิ ผลกระทบ กบั ความทา้ ทายในเกมเช่นกัน 3.3 ความสมดลุ ของรปู แบบของเกม (Balance Between Game Feature) เปน็ การก�ำหนด ความสามารถของตวั ละครและเครอื่ งมอื ทแ่ี ตกตา่ งกนั ในเกม ควรออกแบบใหเ้ กดิ ความแตกตา่ ง เพอ่ื เสรมิ การตัดสินใจของผู้เล่น ที่จะเลือกใช้ความสามารถของตัวละครหรือเครื่องมือกับปัญหาที่ก�ำลังเจอในเกม เชน่ การออกแบบความสามารถของอาวธุ แตล่ ะชนดิ ควรมที งั้ จดุ เดน่ และขอ้ จ�ำกดั ของอาวธุ ทแ่ี ตกตา่ งกนั ตามสถานการณข์ องเกม และควรสมดลุ กนั กบั อาวธุ ทกุ ชนดิ ยกตวั อยา่ ง ออกแบบอาวธุ 5 ชนดิ อาวธุ ท่ี 1 สามารถท�ำลายศัตรูทางบกไดด้ ีเยี่ยม แต่ไมส่ ามารถท�ำลายศัตรูท่ีจู่โจมทางอากาศได้ เปน็ ตน้ 4. การตดั สนิ ใจ (Decisions) ในเกม เปน็ กระบวนการทผ่ี เู้ ลน่ ไดใ้ ชค้ วามคดิ วเิ คราะหท์ างเลอื ก ส�ำหรับแก้ปัญหาทเี่ กิดข้นึ ในระหว่างการเล่น ซึ่งผู้เลน่ จะสนุกสนานเพลิดเพลิน และรสู้ ึกไดว้ ่าตนเองเป็น ส่วนหนง่ึ ของเกม ท้งั น้ี การออกแบบควรพิจารณาถึงผลลัพธ์ท่ีเกิดขน้ึ เมือ่ ผู้เล่นได้ตัดสินใจเลือกทางเลือก จากหลายทางเลอื กตามการออกแบบ ในการตดั สนิ ใจบางทางเลอื กนนั้ อาจท�ำใหก้ ารไปถงึ จดุ หมายยากขนึ้ แต่ทั้งนี้ก็เป็นการเพิ่มความท้าทายให้ผู้เล่นและควรมีค�ำอธิบาย หรือค�ำแนะน�ำให้ผู้เล่นได้ตัดสินใจใน แตล่ ะทางเลอื ก 5. รางวลั (Reward) ในเกม เปน็ ขวญั และก�ำลงั ใจทใ่ี หผ้ เู้ ลน่ รสู้ กึ ไดว้ า่ ก�ำลงั จะประสบความส�ำเรจ็ ในความพยายามที่ท�ำไปในเกม เป็นความอยากท่ีต้องการเจอในด่านต่อไป รางวัลอาจมีหลายรูปแบบ เช่น คะแนน (Score) ไอเทม (Items) พลงั (Power) ซึ่งโดยทว่ั ไปแบง่ เปน็ 2 ประเภท ดงั น้ี 5.1 Temporary Reward เป็นรางวัลย่อยที่ผู้เล่นได้รับ เม่ือผ่านจุดหมายย่อย (Minor Goal) ในเกม เป็นสิ่งที่ช่วยให้ผเู้ ลน่ ผา่ นด่านไดง้ า่ ยขน้ึ ตัวอยา่ งเชน่ อาวุธที่ 1 ได้รบั การเพมิ่ ความสามารถ ให้ท�ำลายศตั รูทจี่ ูโ่ จมทางอากาศได้ หรือเพม่ิ ความสามารถในการพรางตัวจากศตั รู เปน็ ตน้ 5.2 Permanent Reward เป็นรางวัลทีผ่ ูเ้ ล่นได้รบั เมื่อผา่ นจดุ หมายหลัก (Major Goal) ในเกม สามารถเปลย่ี นแปลงสถานการณใ์ นเกมได้ เชน่ การไดเ้ พม่ิ ระดบั (Level Up) ของอาวธุ การไดร้ บั อาวุธใหม่เพิ่ม อาจมีอาวุธที่ 1 คือดาบอยู่แล้ว แต่ได้เพ่ิมอาวุธที่ 2 คือเกราะป้องกันภัยซึ่งทนต่ออาวุธ ทุกชนดิ เปน็ ตน้

การสร้างเกมคอมพิวเตอร์เบ้อื งตน้ 19 รางวัลที่ออกแบบไว้ในเกมนั้น ควรค�ำนึงถึงความเหมาะสมของรางวัลกับระดับความยากง่ายใน เกมด้วย ด่านท่ีมีระดับความยากอาจเป็นรางวัลใหญ่ท่ีเหมาะสมกับระดับความยาก ตัวอย่าง ด่านแรก ของเกม สามารถออกแบบรางวลั ด้วยการได้รบั พลังชีวติ เพมิ่ เมอ่ื ผา่ นดา่ น ในดา่ นที่ 2 รางวลั ทไ่ี ดอ้ าจมที งั้ พลังชวี ติ เพิม่ และการเพิม่ ระดบั ของอาวุธในเกม นอกจากท่ีกล่าวมาข้างต้นนั้น ในการออกแบบเกมสามารถน�ำองค์ประกอบอื่น ๆ ช่วยให้เกม ดนู ่าสนใจและกระตุน้ ความน่าเลน่ ของเกมเพม่ิ เตมิ ไดด้ ว้ ย เช่น การใชเ้ สียงประกอบ (Sound Effect) กราฟกิ พเิ ศษ (Special Graphic) ท้ังในขณะเล่น ขณะได้คะแนนก็ไดเ้ ช่นกนั วธิ กี ารสรา้ งเกมคอมพวิ เตอร์เบื้องตน้ ในการสร้างเกมคอมพิวเตอร์เบ้ืองต้น มีข้ันตอนในการสร้างตามหลักการสร้างเกมคอมพิวเตอร์ ในบททผ่ี ่านมา ซ่งึ ในบทนขี้ อกลา่ วถงึ วิธพี ฒั นาแบบรวดเรว็ หรือ RAD แสดงดงั ตารางนี้ วธิ ีพัฒนาแบบรวดเร็ว รายละเอยี ดวิธสี รา้ งเกม 1. การวางแผน (Planning) 1. การวางแผน - รวบรวมขอ้ มลู เก่ยี วกบั เกมที่ต้องการสรา้ ง 2. การออกแบบ (Design) - ศึกษาแนวคิดของเกม - วิเคราะหจ์ ดุ เด่น และขอ้ จ�ำกดั - วิเคราะห์รูปแบบการเลน่ เกม - ศกึ ษา และวางแผนกฎ กตกิ าของเกม - ศกึ ษา และวางแผนตวั ละคร ฉากในเกม - วางแผนจดุ หมายของเกม 2. การออกแบบ - ออกแบบรูปแบบและวิธกี ารเล่น - เขียนผงั งาน (Flowchart) - เขียนสตอรบ่ี อร์ด (Story Board) - ก�ำหนดเครื่องมอื ทใี่ ชใ้ นการสรา้ งเกม

20 บทที่ 1 หลักและวธิ ีการสร้างเกมคอมพิวเตอรเ์ บอื้ งต้น วิธพี ัฒนาแบบรวดเรว็ (ตอ่ ) รายละเอยี ดวธิ สี ร้างเกม (ตอ่ ) 3. การสรา้ งระบบ (Construction) 3. การสร้างเกม 4. การเปลี่ยนระบบ (Cutover) - สรา้ งตวั ละคร - สร้างฉาก - สรา้ งเสียง - สร้างแอนเิ มชนั - เขียนโปรแกรม 4. การดูแลตรวจสอบ - ตรวจสอบการท�ำงานของเกม - ปรบั ปรุงแก้ไขและติดตั้ง - น�ำเกมคอมพวิ เตอร์ไปใช้ - จัดท�ำค่มู ือประกอบการเลน่ เกม โดยมรี ายละเอียดดังตอ่ ไปนี้ 1. การวางแผน เปน็ ข้นั ตอนแรกที่ผูอ้ อกแบบและสรา้ งเกมตอ้ งรวบรวมและศึกษาข้อมลู ต่าง ๆ ของเกม ไดแ้ ก่ การศกึ ษาแนวคดิ ของเกม จากประเภทของเกมที่ตอ้ งการสร้างเพ่ือให้ออกแบบตามจดุ เด่น และลดข้อจ�ำกัดท่จี ะเกดิ ขึน้ จากน้ันท�ำการวิเคราะห์รูปแบบของการเล่นเกม รวมท้ังกฎกติกา ตัวละคร ในเกม ฉากของเกมแตล่ ะด่าน และทส่ี �ำคัญต้องวางแผนเก่ียวกับจุดหมายของเกมตามรายละเอียดทีไ่ ด้ กล่าวมาแลว้ ตวั อยา่ งแนวคดิ ของเกม Great King City ทพ่ี ฒั นาจากแนวคดิ ของ พระบาทสมเดจ็ พระปรมนิ ทร มหาภมู พิ ลอดลุ ยเดช เกยี่ วกบั ปรชั ญาเศรษฐกจิ พอเพยี ง เปน็ การผสมผสานการสรา้ งพน้ื ทท่ี �ำไร่ ท�ำสวนจ�ำลอง เพอ่ื ใหเ้ กดิ รายได้ และบรหิ ารรายไดใ้ นหมเู่ มอื ง รวมทงั้ เมอื งตามหลกั ปรชั ญาเศรษฐกจิ พอเพยี ง จดุ หมาย ของเกมมุ่งเน้นให้ผู้เล่นเกิดความรู้ความเข้าใจในหลักปรัชญาเศรษฐกิจพอเพียง จุดเด่นของเกม ผู้เล่น สามารถผลติ วตั ถดุ บิ พนั ธพ์ุ ชื พลงั งาน แรธ่ าตุ สนิ คา้ อปุ โภคบรโิ ภคไดต้ ามเงอ่ื นไขการเลน่ ความทา้ ทาย ของเกมอยทู่ ผี่ เู้ ลน่ ตอ้ งคดิ วเิ คราะหแ์ ละวางแผนในการเลน่ เกม เพอื่ ใหค้ รอบคลมุ ถงึ หลกั ปรชั ญาเศรษฐกจิ พอเพียง 2. การออกแบบ ขั้นตอนน้ีเป็นการออกแบบเกม ต้งั แต่น�ำกฎกตกิ าการเล่นจากการวางแผนใน ข้อแรกมาออกแบบให้เป็นรูปธรรมขึ้น การก�ำหนดรูปแบบ วิธีการเล่น จ�ำนวนผู้เล่นท่ีสามารถเล่นได้ ส�ำหรับตัวละคร จะเป็นในรายละเอียดของรูปแบบตัวละครและการบังคับ การควบคุมตัวละครในเกม แต่ละฉาก แต่ละด่าน ควรมีการเขียนผังงาน (Flowchart) และการเขียนสตอร่ีบอร์ด (Story Board) รวมทง้ั ก�ำหนดเครือ่ งมือท่ใี ช้ในการพัฒนาเกม

การสรา้ งเกมคอมพิวเตอรเ์ บอ้ื งต้น 21 การเขียนผังงาน (Flowchart) ผังงาน หรือ Flowchart เป็นแผนภาพท่ีใช้ออกแบบวิธกี ารแกป้ ญั หาของการเขียนโปรแกรม แสดงเป็นสญั ลักษณ์ล�ำดบั ข้ันตอนการพฒั นาโปรแกรม การท�ำงาน การแกป้ ญั หาของคอมพิวเตอร์ และ มลี กู ศรทแ่ี สดงทศิ ทางการท�ำงานตง้ั แตข่ น้ั ตอนแรกจนถงึ ขนั้ ตอนสดุ ทา้ ยอยา่ งเปน็ ระบบ ส�ำหรบั สญั ลกั ษณ์ มีลักษณะเป็นมาตรฐานสากลท่ีเข้าใจได้ตรงกัน ตามท่สี ถาบนั มาตรฐานแหง่ ชาติอเมริกา (ANSI : The American National Standard Institute) ไดก้ �ำหนดไว้ ซ่งึ มรี ายละเอยี ดดังตารางตอ่ ไปนี้ ตารางแสดงสัญลกั ษณ์ทใี่ ชใ้ นการเขียนผังงาน สัญลักษณ์ ช่ือเรียก ความหมาย Terminator - การเริม่ ตน้ ผงั งาน (Start) Process - จบการท�ำงาน (Stop) - การก�ำหนดคา่ Decision - การค�ำนวณ - การประมวลผล Data - การตัดสินใจ (I/O) - การเปรยี บเทียบ Display - เงอ่ื นไข - การรับเข้าขอ้ มลู (Input) - การแสดงผลขอ้ มลู โดยไมร่ ะบุอุปกรณ์ (Output) - การแสดงผลข้อมูลทางจอภาพ Document - การแสดงผลข้อมูลทางเคร่อื งพิมพ์ Manual Input - การรับข้อมูล หรือค�ำส่ังผ่านทางแป้นพิมพ์ Manual Operation - การประมวลผลดว้ ยมือ Connector - จุดเชื่อมต่อในหนา้ กระดาษเดียวกนั

22 บทที่ 1 หลักและวิธกี ารสรา้ งเกมคอมพวิ เตอรเ์ บอ้ื งตน้ สัญลักษณ์ ช่อื เรียก ความหมาย Off Page Connector - จดุ เชอื่ มตอ่ ต่างหน้ากระดาษ Flow Line - ทศิ ทางล�ำดับการท�ำงานของผงั งาน Annotation - ค�ำอธบิ ายเพ่มิ เตมิ Alternate Process - หมายเหตุ - การประมวลผล Predefined Process - การท�ำงานในโปรแกรมยอ่ ย Internal Storage - ทเี่ ก็บข้อมลู ภายใน Multi-document - เอกสารมากกวา่ 1 เอกสาร Preparation - รายงาน Card - การเตรียมขอ้ มูล - จุดก�ำหนดชอื่ ขอ้ มูล หรือคา่ เร่ิมตน้ - การรับสง่ ข้อมลู โดยใช้บัตรเจาะรู Punched Tape - การรบั ส่งขอ้ มูลด้วยเทปกระดาษ Summing Junction - การแสดงจุดตอ่ รว่ มของการรวมข้อมูล Or - การแสดงตรรกะ “หรือ” ในผังงาน Collate - กระบวนการท่ตี ้องจัดการขอ้ มลู Sort - กระบวนการเรยี งล�ำดบั ข้อมูล Extract - กระบวนการแยกข้อมูลเปน็ หลายชดุ Merge - กระบวนการรวมขอ้ มลู เป็นชุดเดยี ว

การสรา้ งเกมคอมพิวเตอร์เบ้ืองตน้ 23 สัญลักษณ์ ช่ือเรียก ความหมาย Stored Data - กระบวนการเกบ็ ขอ้ มลู Delay - กระบวนการความล่าช้า - ระยะเวลาการรอคอย Sequential Access - กระบวนการบันทึกขอ้ มลู ลงบนเทปแมเ่ หลก็ Storage (Magnetic Tape) Magnetic Disk - กระบวนการบันทึกขอ้ มูลลงจานแมเ่ หลก็ (Database) - ฐานข้อมูล Direct Access Storage - กระบวนการบันทึกข้อมลู ลงดรัมแม่เหล็ก (Magnetic Drum) - การจัดเกบ็ ข้อมลู ในสอ่ื ทเี่ ขา้ ถงึ ไดโ้ ดยตรง หลักการเขียนผังงาน 1. เขยี นโดยใชส้ ัญลักษณ์ตามมาตรฐาน และถูกต้องตามความหมายของสัญลักษณ์ 2. สญั ลักษณ์ ควรแทนหนง่ึ ค�ำสง่ั เทา่ น้นั 3. ระบุทิศทางการท�ำงานด้วย Flow Line ที่มีหัวลูกศรก�ำกับทิศทาง (Arrowheads) เสมอ และไมค่ วรให้ Flow Line ตดั กนั ถา้ จ�ำเปน็ ควรใชจ้ ุดเชื่อมต่อในหนา้ กระดาษเดยี วกนั (Connector) 4. ควรเรียงล�ำดบั ทศิ ทางของผังงานจากบนลงลา่ ง หรอื จากซ้ายไปขวาเทา่ นน้ั 5. เขียนข้ันตอนของผังงาน โดยเรียงล�ำดับ ดังน้ี 1) ก�ำหนดตัวแปรและก�ำหนดคา่ เรมิ่ ตน้ ให้ตัวแปร 2) ก�ำหนดการรบั ขอ้ มูลเขา้ (Input) 3) ก�ำหนดข้ันตอนการประมวลผลหรอื การค�ำนวณ (Process) 4) ก�ำหนดการแสดงผล หรือค่าของตัวแปรทีไ่ ดจ้ ากการประมวลผล (Output) 6. ข้อความทอี่ ธิบายในผัง ควรสน้ั กระชับ เข้าใจง่าย 7. ควรใหผ้ งั จบในหนา้ เดยี ว ถา้ ไมจ่ บควรใชจ้ ดุ เชอ่ื มตอ่ ตา่ งหนา้ กระดาษ (Off Page Connector) ประโยชนข์ องผังงาน 1. แสดงล�ำดับข้ันตอนการท�ำงานแตล่ ะขนั้ ให้เขา้ ใจการท�ำงานได้ง่ายและรวดเร็ว 2. เขยี นอธิบายขั้นตอนในรปู แบบขอ้ ความไดส้ ะดวก 3. ก�ำหนดขน้ั ตอนการท�ำงานก่อนหลงั ได้เป็นระบบ 4. ตรวจสอบและแก้ไขข้อผิดพลาดได้งา่ ย

24 บทท่ี 1 หลักและวธิ กี ารสร้างเกมคอมพวิ เตอร์เบอ้ื งต้น ประเภทของผังงาน ผังงาน สามารถแบง่ ได้ 2 รปู แบบ คอื 1. ผังงานระบบ (System Flowchart) เป็นการแสดงข้ันตอนการท�ำงานของระบบ รวมถึง แสดงความสัมพันธ์ระหว่างส่วนส�ำคัญของงานต่าง ๆ ในระบบ มีลักษณะกระชับ รวบรัด แสดงตัวงาน ในระบบเทา่ นน้ั ไม่เนน้ รายละเอยี ด ขอ้ มูลผู้เติม บัตรเติมเกม ขอ้ มลู เกม ชำ� ระเงนิ บนั ทึกการเติมเกม 2. ผังงานโปรแกรม (Program Flowchart) เป็นการแสดงขั้นตอนการท�ำงานแต่ละค�ำส่ัง ระบวุ ธิ กี ารจดั ล�ำดบั ขนั้ ตอนทเ่ี รม่ิ ตน้ ตงั้ แตก่ ารรบั ขอ้ มลู การประมวลผล การแสดงผล โดยทวั่ ไปการออกแบบ จะเรม่ิ จากผังงานระบบลงมายงั ผงั งานโปรแกรม และเป็นการออกแบบจากบนลงลา่ ง เร่มิ การท�ำงาน กดรหสั เติม ตรวจสอบ เท็จ รหสั เติม จรงิ ข้อมูลการเติมเกม จบการทำ� งาน

การสรา้ งเกมคอมพิวเตอร์เบ้ืองตน้ 25 โครงสร้างการทำ� งานของผงั งาน คำ� ส่ังท่ี 1 ค�ำส่งั ท่ี 2 1. โครงสร้างแบบล�ำดับ มีลักษณะการ คำ� ส่งั ที่ 3 ท�ำงานเป็นล�ำดับเรียงจากบนลงล่าง ท�ำงานทกุ ค�ำสง่ั คำ� ส่งั ท่ี ... ค�ำส่งั ละหนึ่งครง้ั โครงสร้างนี้ใช้สัญลกั ษณ์ Process ค�ำสั่งที่ n แทนโครงสรา้ งควบคมุ แบบล�ำดบั 2. โครงสรา้ งแบบมที างเลอื ก เปน็ โครงสรา้ ง โครงสร้างแบบล�ำดับ การท�ำงานที่ซับซ้อนข้ึนจากโครงสร้างแบบล�ำดับ นอกจากนั้นบางค�ำส่ังอาจไม่ได้ใช้ ซึ่งเป็นไปตาม ตรวจสอบเงอื่ นไข เท็จ ทางเลือกของเงอ่ื นไขทีก่ �ำหนด โดยมี 3 รูปแบบ รูปแบบแรก คือ แบบหนึ่งทางเลือก จริง จะท�ำงานเม่ือตรวจสอบเงื่อนไขแล้วเป็นจริงเท่าน้ัน คำ� สั่งท่ี 1 โดยจะท�ำงานตามค�ำสงั่ (Statement) หรอื กลมุ่ ค�ำสง่ั (Statement Block) และจะข้ามไปท�ำค�ำส่ังถัดไป ถ้าเง่ือนไขเป็นเทจ็ รูปแบบที่สอง คือ แบบสองทางเลือก มกี ารตรวจสอบเงอื่ นไขทง้ั จรงิ และเทจ็ ซง่ึ ถา้ เปน็ จรงิ จะท�ำค�ำสง่ั หนง่ึ และถา้ เปน็ เทจ็ จะท�ำค�ำสงั่ อกี อนั หนงึ่ โครงสรา้ งแบบมที างเลอื กรูปแบบแรก จรงิ ตรวจสอบเงื่อนไข เทจ็ คำ� ส่งั ที่ 1 คำ� ส่งั ที่ 2 โครงสรา้ งแบบมที างเลือกรปู แบบท่สี อง รปู แบบทสี่ าม คอื แบบหลายทางเลือก เมื่อตรวจสอบเงือ่ นไขแล้วจะเลอื กท�ำงานทท่ี างเลอื ก เปน็ ไปตามเงือ่ นไข แบ่งเป็น 2 รปู แบบ คอื หลายทางเลือกรปู แบบ Case และหลายทางเลอื กรูปแบบ IF ซ้อน IF ดังน้ี

26 บทท่ี 1 หลักและวธิ กี ารสรา้ งเกมคอมพิวเตอร์เบอ้ื งตน้ 1) หลายทางเลอื กรูปแบบ Case ตรวจสอบเง่อื นไข (ก) ก = 1 ข = 2 ค=3 ง=4 ค�ำสัง่ ที่ 1 คำ� ส่ังที่ 2 คำ� สั่งท่ี 3 ค�ำสง่ั ที่ 4 2) หลายทางเลอื กรูปแบบ IF ซอ้ น IF ตรวจสอบ เทจ็ เท็จ เทจ็ เงอื่ นไข (ก) ตรวจสอบ คำ� สัง่ ท่ี 4 จรงิ เงือ่ นไข (ข) ตรวจสอบ จริง เงือ่ นไข (ค) ค�ำสงั่ ท่ี 1 จรงิ ค�ำส่งั ท่ี 2 คำ� สงั่ ที่ 3 3. โครงสร้างแบบท�ำซ้�ำ เปน็ โครงสรา้ งการท�ำงานทมี่ กี ารท�ำงานวนรอบตามการก�ำหนดเงอ่ื นไข ถ้าตรวจสอบแล้วไม่ตรงเง่ือนไขก็จะวนกลับไปท�ำงานในจุดท่ีก�ำหนด โดยท�ำซ�้ำใหม่เร่ือย ๆ จนเมื่อ ตรวจสอบแล้วตรงเง่อื นไขจงึ มกี ารท�ำงานในค�ำสัง่ ถัดไป แบ่งได้ 3 รูปแบบ คือ

การสร้างเกมคอมพวิ เตอรเ์ บอ้ื งตน้ 27 รปู แบบที่ 1 ท�ำซ�้ำแบบเงื่อนไขเป็นจรงิ (While Structure) ตรวจสอบเงื่อนไข จรงิ คำ� ส่ังท่ี 1 เท็จ รปู แบบที่ 2 ท�ำซำ�้ จนเงอ่ื นไขเปน็ จรงิ (Repeat…Until Structure) ค�ำสงั่ ที่ 1 ตรวจสอบเงอ่ื นไข เทจ็ จริง รูปแบบที่ 3 ท�ำซ�้ำตามเง่อื นไขทีก่ �ำหนด (Do…End do Structure หรอื For Loop) (เง่อื นไขทกี่ ำ� หนด) FOR i = 1 TO N ค�ำส่งั ท่ี 1

28 บทท่ี 1 หลกั และวธิ ีการสรา้ งเกมคอมพวิ เตอร์เบ้อื งต้น การเขยี นสตอรี่บอร์ด (Story Board) การเขยี นสตอรีบ่ อรด์ (Story Board) เปน็ การออกแบบภาพนง่ิ เพอ่ื สร้างเปน็ ภาพเคลอ่ื นไหว ซ่ึงมีขั้นตอนในการเตรียมการน�ำเสนอในรูปแบบต่าง ๆ ท้ังภาพนิ่ง ข้อความ เสียง และส่ือมัลติมีเดีย ลงกระดาษ ท้ังน้ี เป็นการน�ำเสนอเน้ือหาที่สามารถแสดงออกได้อย่างต่อเน่ือง ล�ำดับสถานการณ์เกม ไดอ้ ย่างเปน็ รูปธรรม โดยแสดงรายละเอยี ดทจี่ ะปรากฏในแตล่ ะดา่ น ตวั อย่าง เกม ............................................................................ ดา่ น ......................................................................... ล�ำดับท่ี ภาพนิ่ง/ภาพเคลือ่ นไหว ขอ้ ความ ................................................................. การปรากฏของภาพ ............................................................................... ............................................................................... ............................................................................... เสยี งบรรยาย .......................................................... ............................................................................... ............................................................................... เสยี งดนตร.ี .............................................................. เสียงประกอบ ......................................................... 1. การสร้างเกม ขั้นตอนน้ีเป็นการสร้างเกมต้ังแต่การสร้างตัวละคร สร้างฉาก สร้างเสียง สร้างแอนิเมชัน และการเขยี นโปรแกรมบงั คบั ควบคมุ การท�ำงานของเกม ตามการวางแผนการออกแบบ มาแลว้ 2. การดแู ลตรวจสอบ ข้นั ตอนน้ีรวมตั้งแต่การตรวจสอบการท�ำงานของเกม การปรับปรงุ แกไ้ ข ขอ้ ผดิ พลาด การน�ำเกมคอมพวิ เตอรท์ เ่ี สร็จสมบรู ณแ์ ลว้ ไปใชง้ าน และถา้ เกมทสี่ รา้ งขน้ึ มกี ารเลน่ ทซี่ บั ซอ้ น ควรจดั ท�ำคู่มอื ประกอบการเล่นเกมให้ผูเ้ ลน่ ได้ศกึ ษาและท�ำความเข้าใจในเกมไดง้ า่ ยขึ้น โดยรายละเอียด ในขนั้ ตอนน้ี เร่ิมจากการทดสอบการควบคมุ การท�ำงานของเกม การหาข้อผดิ พลาดของเกม การทดสอบ ประมวลผลของคะแนน การเปล่ียนฉากเม่ือผู้เล่นผ่านความท้าทายในแต่ละด่าน การทดสอบการบรรลุ จุดหมายของเกม การน�ำเกมที่ตรวจสอบสมบูรณ์แล้วไปใช้กับกลุ่มเป้าหมายตามการวางแผนของเกม และการจดั ท�ำคมู่ อื เพอื่ อธบิ ายขอบเขตของเกมทส่ี ามารถท�ำงานได้ เชน่ คณุ สมบตั ขิ องฮารด์ แวร์ คณุ สมบตั ิ ของซอฟต์แวร์ หรือระบบปฏิบัตกิ ารทร่ี องรบั การตดิ ตงั้ วิธีการเล่น กฎกติกาการเล่น

การสรา้ งเกมคอมพิวเตอรเ์ บอ้ื งต้น 29 แบบทดสอบและกจิ กรรม การฝึกทักษะ บทท่ี 1 คำ� ชี้แจง นักเรียนเลอื กค�ำตอบทถ่ี กู ต้องทีส่ ดุ เพียงค�ำตอบเดียว 1. Transparent Immediacy หมายถงึ คณุ สมบัติของเกมคอมพิวเตอร์ในข้อใด ก. การจ�ำลองรูปแบบการน�ำเสนอภาพมุมมอง ข. การทีผ่ ูเ้ ลน่ มสี ว่ นร่วมกบั เกมได้มากขน้ึ อยา่ งเป็นธรรมชาติ ค. การเคลือ่ นไหวของตัวละครทม่ี กี ารโตต้ อบกับผเู้ ลน่ ง. การทีเ่ กมสามารถส่ือสารกับผู้เลน่ ไดห้ ลายมติ ิ 2. “การด�ำเนินงานตามข้ันตอนที่ก�ำหนดไว้อย่างแน่นอน แบง่ งานระหวา่ งผ้เู กีย่ วข้องชัดเจน เหมาะใน การพัฒนาระบบงานขนาดกลางหรือขนาดใหญ่ท่ีมีระบบซับซ้อน มีคุณสมบัติเป็นทางการและคงที่ แตเ่ ป็นวธิ กี ารทีต่ อ้ งใชเ้ วลานาน” หมายถงึ ข้อใด ก. เทคนคิ การรวบรวมข้อมูล (Data Gathering) ข. เทคนิคการจัดการโครงการ (Project Management) ค. วิธีวงจรพฒั นาระบบ (SDLC) ง. วิธีพฒั นาระบบแบบรวดเรว็ (RAD) 3. ขอ้ ใดอธิบายเกีย่ วกบั “การวิเคราะห์ ออกแบบ เขียนโปรแกรมเชิงวตั ถุ (OOAD)” ได้ถกู ต้องท่สี ดุ ก. เป็นวธิ ีท่ผี ใู้ ช้ ผพู้ ฒั นามีสว่ นร่วมในการก�ำหนดความตอ้ งการของระบบ ออกแบบรว่ มกัน ข. เปน็ วธิ ที ม่ี กี ารจดั สรา้ งระบบทดลองกอ่ นการพฒั นาระบบทง้ั หมดแลว้ ใหผ้ ใู้ ชป้ ระเมนิ คา่ ระบบ ค. เป็นวธิ ีการที่ใชซ้ อฟตแ์ วร์ส�ำเร็จรปู สนับสนุนการพฒั นาระบบให้มีมาตรฐาน ง. เปน็ วธิ กี ารทมี่ องระบบเปน็ กลมุ่ วตั ถุ แตล่ ะวตั ถมุ ขี อ้ มลู การด�ำเนนิ การท�ำงานไดโ้ ดยไมก่ ระทบกนั 4. “เกม ABC สรา้ งดา่ นค�ำศพั ทท์ ผ่ี ู้เล่นตอ้ งใช้ความคิด ความรู้ บูรณาการกับทักษะอนื่ ในการแก้ปญั หา ในเกม พร้อมทัง้ มีการเพิ่มระดบั ความยากของค�ำศพั ท์ขนึ้ ทีละด่านตามล�ำดับ” จากข้อความดงั กลา่ ว แสดงว่า เกม ABC มอี งค์ประกอบของเกมในข้อใด

30 บทที่ 1 หลกั และวิธกี ารสร้างเกมคอมพวิ เตอร์เบอื้ งต้น ก. การตดั สนิ ใจ (Decisions) ข. ความสมดุล (Balance) ค. ความท้าทาย (Challenges) ง. จดุ หมายของเกม (Goal) 5. “เกม XYZ ออกแบบความสามารถของอาวุธ ให้มที ้งั จดุ เด่นและข้อจ�ำกดั ตามสถานการณ์ของเกม” จากขอ้ ความดงั กลา่ ว แสดงว่า เกม XYZ มีความสมดลุ ของเกมในขอ้ ใด ก. ความสมดุลของรูปแบบของเกม (Balance Between Game Feature) ข. ความสมดลุ ระหว่างผเู้ ลน่ (Balance Between Players) ค. ความสมดุลระหวา่ งผเู้ ลน่ กบั เกม (Balance Between the Player and the Game Play) ง. ความสมดุลในการตดั สินใจในเกม (Balance Between Decisions in Game) 6. ถ้าต้องการรบั ข้อมลู ผา่ นทางแปน้ พิมพ์ ตอ้ งใช้สญั ลักษณ์ใดในผังงาน ก. ข. ค. ง. 7. จากรูป เป็นผงั งานที่มีโครงสร้างแบบใด ก = 1 ตรวจสอบเงอ่ื นไข (ก) ง=4 ข=2 ค=3 ค�ำส่งั ท่ี 4 คำ� สั่งที่ 1 คำ� ส่ังท่ี 2 ค�ำสง่ั ท่ี 3 ก. โครงสรา้ งแบบมหี ลายทางเลอื ก รปู แบบ Case ข. โครงสรา้ งแบบมหี ลายทางเลือก รูปแบบ IF ค. โครงสรา้ งแบบมที างเลือกตามค�ำสง่ั ง. โครงสรา้ งแบบมีทางเลือกตามกลุ่มค�ำส่งั

การสรา้ งเกมคอมพิวเตอร์เบื้องต้น 31 8. ภาพโครงสร้างในขอ้ ใด เป็นโครงสรา้ งแบบท�ำซ้ำ� ที่มรี ูปแบบการท�ำซำ้� จนเง่ือนไขเป็นจรงิ ก. ข. ตรวจสอบ เทจ็ ตรวจสอบ จรงิ คำ� สัง่ ท่ี 1 เงื่อนไข เงือ่ นไข จริง เท็จ คำ� สัง่ ที่ 1 ค. ง. คำ� ส่งั ท่ี 1 (เง่อื นไขทกี่ �ำหนด) FOR i = 1 TO N ตรวจสอบเงื่อนไข เท็จ จรงิ คำ� สั่งที่ 1 9. การออกแบบภาพนิ่งเพ่ือสร้างเป็นภาพเคล่ือนไหว ซ่ึงมีขั้นตอนในการเตรียมการน�ำเสนอในรูปแบบ ต่าง ๆ ที่แสดงออกไดอ้ ยา่ งต่อเน่ือง ล�ำดับสถานการณ์เกมไดอ้ ยา่ งเปน็ รูปธรรมหมายถงึ ขอ้ ใด ก. ผังงาน (Flowchart) ข. สรา้ งระบบ (Construction) ค. วางแผน (Planning) ง. สตอรีบ่ อรด์ (Story Board) 10. ข้อใดแสดงถึงขนั้ ตอนการดูแลตรวจสอบในการสรา้ งเกม ก. การสร้างตวั ละคร ฉาก เสียง ข. การก�ำหนดคุณสมบตั ขิ องฮาร์ดแวร์ ซอฟตแ์ วร์ การตดิ ตงั้ และวธิ กี ารเล่น ค. การล�ำดบั สถานการณ์เกมอย่างเปน็ รปู ธรรม ง. การแสดงโครงสร้างการท�ำงานทมี่ ีการท�ำงานวนรอบตามเง่ือนไข

32 บทที่ 1 หลักและวธิ ีการสรา้ งเกมคอมพิวเตอรเ์ บือ้ งต้น คำ� ชีแ้ จง นกั เรยี นน�ำรายละเอยี ดวธิ กี ารสรา้ งเกมคอมพวิ เตอรต์ ามวธิ พี ฒั นาแบบรวดเรว็ (RAD) ทก่ี �ำหนด ใหใ้ สใ่ นตารางใหถ้ กู ต้องตามล�ำดับของรายละเอียดวธิ กี ารสรา้ งเกม จัดท�ำคมู่ อื ประกอบการเลน่ เกม เขยี นผงั งาน (Flowchart) วางแผนจุดหมายของเกม เขียนโปรแกรม ตรวจสอบการทำ� งานของเกม ศึกษาแนวคดิ ของเกม วิเคราะหร์ ูปแบบการเลน่ เกม เขียนสตอรบ่ี อร์ด (Story Board) สรา้ งตัวละคร ปรับปรุงแก้ไขและติดตง้ั วธิ พี ฒั นาแบบรวดเรว็ รายละเอยี ดวิธีสรา้ งเกม 1. การวางแผน (Planning) 1. การวางแผน ................................................................................................ 2. การออกแบบ (Design) ................................................................................................ ................................................................................................ 3. การสร้างระบบ (Construction) 2. การออกแบบ ................................................................................................ 4. การเปลี่ยนระบบ (Cutover) ................................................................................................ ................................................................................................ 3. การสร้างเกม ................................................................................................ ................................................................................................ ................................................................................................ 4. การดแู ลตรวจสอบ ................................................................................................ ................................................................................................ ................................................................................................

การสร้างเกมคอมพวิ เตอร์เบอ้ื งตน้ 33 ใบงานประจำ� หนว่ ยการเรยี นรู้ท่ี 1 ค�ำช้แี จง นักเรยี นฝกึ ปฏิบัติ และตอบค�ำถามตอ่ ไปนใ้ี หถ้ กู ต้อง 1. เกมคอมพวิ เตอร์ มคี วามหมายอย่างไร โปรดอธบิ าย 2. คณุ สมบตั ขิ องเกมคอมพวิ เตอร์ ควรได้แก่อะไรบา้ ง 3. อธิบายประเภทของเกมคอมพิวเตอร์จากการแบง่ ตามรปู แบบการเล่นเกม 4. อธิบายและยกตัวอยา่ งเกมจากการแบ่งประเภทเกมคอมพิวเตอร์ ตามลกั ษณะการแสดงผล 5. จากเกมตวั อยา่ งทีก่ �ำหนด ให้นักเรียนระบุประเภทของเกมตามการแบ่งประเภทของเกม เกมตัวอย่าง ประเภทของเกม เกมสตรีต ไฟเตอร์ (Street Fighter) เกมปรนิ ซ์ ออฟ เปอร์เซีย (Prince of Persia) เกมคณติ ศาสตร์ (Math Game) เกมวอรค์ ราฟต์ (Warcraft) เกมจ�ำลองการบิน (Flight Simulator) เกมรอ็ กแมน (Rockman) เกมไฟนอล แฟนตาซี (Final Fantasy) เกมฟีฟา่ (FIFA) เกมบจี ีเวล (Bejeweled) เกมกราดิอสุ (Gradius)

34 ใบงานประจำ� หน่วยการเรียนรทู้ ่ี 1 6. เปรียบเทยี บหลกั การสรา้ งเกมคอมพวิ เตอร์ด้วยวธิ ีวงจรพฒั นาระบบ (SDLC) กบั วิธพี ฒั นาระบบงาน แบบรวดเรว็ (RAD) วิธีวงจรพฒั นาระบบ (SDLC) วิธพี ัฒนางานแบบรวดเร็ว (RAD) 7. การวิเคราะห์ ออกแบบ เขยี นโปรแกรมเชงิ วตั ถุ มีขอ้ ดอี ยา่ งไร 8. อธบิ ายแนวคิดของเกมท่นี กั เรยี นศกึ ษา จ�ำนวน 1 เกม 9. วาดสญั ลักษณท์ ใ่ี ช้ในการเขียนผงั งานตามความหมายทีก่ �ำหนดให้ ความหมาย สญั ลักษณ์ การประมวลผล การตดั สินใจ การแสดงผลข้อมลู ทางจอภาพ การรับข้อมูลทางแป้นพิมพ์

การสร้างเกมคอมพิวเตอรเ์ บื้องตน้ 35 ความหมาย สญั ลกั ษณ์ จดุ เชอื่ มตอ่ ในหนา้ กระดาษเดียวกัน การเตรียมข้อมูล การแสดงผลข้อมูลทางเครื่องพมิ พ์ การเริ่มผังงาน การรบั เขา้ ข้อมูล ค�ำอธิบายเพมิ่ เติม 10. เขียนสตอรีบ่ อร์ดของดา่ นในเกมท่นี กั เรียนศึกษา จ�ำนวน 1 ดา่ น เกม ............................................................................ ด่าน ......................................................................... ล�ำดบั ที่ ภาพนิ่ง/ภาพเคลอื่ นไหว ขอ้ ความ ................................................................. การปรากฏของภาพ ............................................................................... ............................................................................... ............................................................................... เสียงบรรยาย .......................................................... ............................................................................... ............................................................................... เสยี งดนตร.ี .............................................................. เสียงประกอบ .........................................................

36 ใบงานประจำ� หนว่ ยการเรียนรู้ท่ี 1 ล�ำดับท่ี ภาพนิง่ /ภาพเคล่ือนไหว ข้อความ ................................................................. การปรากฏของภาพ ............................................................................... ล�ำดบั ท่ี ภาพนง่ิ /ภาพเคล่ือนไหว ............................................................................... ............................................................................... การปรากฏของภาพ เสยี งบรรยาย .......................................................... ............................................................................... ............................................................................... เสยี งดนตร.ี .............................................................. เสยี งประกอบ ......................................................... ขอ้ ความ ................................................................. ............................................................................... ............................................................................... ............................................................................... เสียงบรรยาย .......................................................... ............................................................................... ............................................................................... เสยี งดนตร.ี .............................................................. เสียงประกอบ .........................................................

แนวคดิ บทท่ี ซอฟตแ์ วร์ หมายถงึ ชดุ ค�ำ สง่ั หรอื โปรแกรมทค่ี วบคมุ การท�ำ งานของคอมพวิ เตอร์ 2 เพอ่ื ใหท้ �ำ งานตามวตั ถปุ ระสงค์ มลี �ำ ดบั ขน้ั ตอนการท�ำ งานทเ่ี ขยี นดว้ ยค�ำ สง่ั คอมพวิ เตอร์ เรียงกนั เป็นโปรแกรมคอมพิวเตอร์ แบง่ เป็น 2 ประเภท ไดแ้ ก่ ซอฟต์แวรร์ ะบบ และ ัข้นตอนและจ ิรยธรรมในการ ซอฟต์แวร์ประยกุ ต์ ขั้นตอนการเขียนโปรแกรมเกมคอมพิวเตอร์ ประกอบด้วย 1. การกำ�หนด เ ีขยนโปรแกรมเกมคอมพิวเตอ ์ร และวเิ คราะห์ปัญหา 2. เขียนอลั กอรทิ มึ ผังงาน และรหสั จ�ำ ลอง 3. เขยี นโปรแกรม 4. ทดสอบและแก้ไขโปรแกรม 5. ท�ำ เอกสารและบ�ำ รงุ รักษา จริยธรรมของวิศวกรซอฟต์แวร์มีดังนี้ 1. คำ�นึงถึงผลประโยชน์ต่อส่วนรวม 2. คำ�นึงถึงลูกค้าและนายจ้างเป็นหลัก 3. ตัดสินใจอย่างอิสระ เป็นตัวของตัวเอง ยึดมั่นในหลักวิชาการ 4. เผยแพร่การรักษาจริยธรรม 5. ยึดมั่นในคุณธรรม และ รักษาชือ่ เสียงในวิชาชีพ 6. ผลิตผลงานตามหลกั สงู สดุ ของหลักวิชาการ 7. ให้ความ เปน็ ธรรมและสนับสนนุ เพอ่ื นร่วมงาน 8. พัฒนาตนเองอยเู่ สมอ สาระการเรยี นรู้ 1. ซอฟตแ์ วร์ (Software) 2. ภาษาคอมพิวเตอร์ 3. ข้นั ตอนการเขยี นโปรแกรมเกมคอมพิวเตอร์ 4. จรยิ ธรรมและจรรยาบรรณทีด่ ใี นการเขียนโปรแกรมเกมคอมพิวเตอร์ 5. จรรยาบรรณวิชาชพี 6. มาตรฐานในการพฒั นาซอฟตแ์ วร ์ สมรรถนะประจ�ำ บท 1. ปฏบิ ตั กิ ารเขียนโปรแกรมเกมคอมพวิ เตอร์ตามล�ำ ดับข้ันตอน 2. เรยี นรจู้ รยิ ธรรมและจรรยาบรรณทด่ี ใี นการเขยี นโปรแกรมเกมคอมพวิ เตอร์ และน�ำ ไปใช้ในการประกอบวิชาชีพ จดุ ประสงคเ์ ชิงพฤตกิ รรม 1. อธบิ ายความหมายและจ�ำ แนกประเภทซอฟตแ์ วร์ 2. ระบุการแบ่งภาษาคอมพิวเตอร์ในยุคต่าง ๆ และยกตัวอย่างภาษา คอมพิวเตอร์ท่นี �ำ มาเขียนโปรแกรมในงานด้านตา่ ง ๆ 3. ลำ�ดับข้นั ตอนการเขียนโปรแกรมเกมคอมพิวเตอร์ 4. อธบิ ายจรยิ ธรรมและจรรยาบรรณ รวมถงึ แนวทางปฏิบัติที่ดใี นการเขยี น โปรแกรมเกมคอมพิวเตอร์ 5. อธิบายองคป์ ระกอบของจรรยาบรรณในวชิ าชพี วิศวกรซอฟตแ์ วร์ 6. บอกมาตรฐานที่กำ�หนดและควบคุมโดยองค์การนานาชาติ ที่ใช้สำ�หรับ ประเมินคา่ ในการพฒั นาซอฟต์แวร์

38 บทที่ 2 ขัน้ ตอนและจรยิ ธรรมในการเขยี นโปรแกรมเกมคอมพิวเตอร์ ขน้ั ตอนและจรยิ ธรรม ในการเขียนโปรแกรม เกมคอมพิวเตอร์ บทท่ี 2 ซอฟต์แวร์ (Software) ซอฟต์แวร์ (Software) หมายถงึ ชดุ ค�ำสัง่ หรอื โปรแกรมทีค่ วบคุมการท�ำงานของคอมพิวเตอร์ เพ่ือให้ท�ำงานตามวัตถุประสงค์ มีล�ำดับข้ันตอนการท�ำงานที่เขียนด้วยค�ำสั่งคอมพิวเตอร์เรียงกันเป็น โปรแกรมคอมพิวเตอร์ (Program) ซ่ึงซอฟต์แวร์แบ่งเปน็ 2 ประเภท ดงั นี้ ซอฟต์แวร์ ซอฟตแ์ วร์ระบบ ซอฟตแ์ วรป์ ระยกุ ต์ ระบบปฏิบตั ิการ ตวั แปลภาษา ซอฟตแ์ วร์ส�ำเรจ็ รปู ซอฟตแ์ วรเ์ ฉพาะทาง

การสร้างเกมคอมพิวเตอรเ์ บือ้ งตน้ 39 1. ซอฟต์แวร์ระบบ (System Software) ท�ำหน้าที่ควบคุมการท�ำงานของคอมพิวเตอร์ ด�ำเนินงานพื้นฐานต่าง ๆ ของระบบคอมพิวเตอร์ เช่น รับข้อมูลจากแป้นพิมพ์แล้วประมวลผลให้ คอมพิวเตอร์เข้าใจ จากนั้นจึงแสดงผลทางจอภาพ เมื่อเปิดคอมพิวเตอร์ให้เร่ิมท�ำงานจะมีการจ่าย กระแสไฟฟ้าให้คอมพวิ เตอร์ เพื่อคอมพิวเตอรจ์ ะท�ำงานตามโปรแกรมในทนั ที และโปรแกรมแรกทส่ี ่ังให้ คอมพิวเตอร์ท�ำงานเป็นซอฟต์แวร์ระบบซึ่งอาจเก็บไว้ในรอม (ROM) คอมพิวเตอร์จะท�ำงานไม่ได้ หากไม่มีซอฟต์แวร์ระบบ นอกจากน้ัน ซอฟตแ์ วรร์ ะบบยังใช้เปน็ เคร่ืองมอื ในการพัฒนาซอฟตแ์ วร์อื่น ๆ รวมถึงซอฟตแ์ วรท์ ใ่ี ชใ้ นการแปลภาษาต่าง ๆ ดว้ ย 2. ซอฟตแ์ วรป์ ระยกุ ต์ (Application Software) เปน็ โปรแกรมทเี่ ขยี นขน้ึ เพอื่ ใหค้ อมพวิ เตอร์ ท�ำงานด้านตา่ ง ๆ ตามวัตถปุ ระสงคข์ องการเขียนโปรแกรม ปัจจุบันมซี อฟตแ์ วร์ประยกุ ต์พัฒนาข้นึ มาก จงึ สามารถแบ่งได้ 2 กลุ่ม คอื ซอฟต์แวร์ส�ำเร็จรปู เชน่ ซอฟต์แวร์ประมวลผลค�ำ และซอฟต์แวร์เฉพาะ ทาง เชน่ โปรแกรมวดั ผลประเมินผลนักเรยี น เปน็ ต้น ในระบบการท�ำงานของคอมพิวเตอร์ สามารถแสดงความสัมพันธ์ระหว่างซอฟต์แวร์ระบบและ ซอฟตแ์ วรป์ ระยุกต์ ดังน้ี ผ้ใู ช้ ฮาร์ดแวร์ Administrator ผใู้ ช้ ซอฟตแ์ วรป์ ระยุกต์ ซอฟต์แวรร์ ะบบ ซอฟตแ์ วร์ระบบ ซอฟตแ์ วรป์ ระยุกต์ ฮาร์ดแวร์ คอมพิวเตอร์ท�ำงานประสานเก่ียวเนื่องกันระหว่างหน่วยรับเข้า หน่วยประมวลผลกลาง หน่วย ความจ�ำหลกั หนว่ ยแสดงผล และหน่วยความจ�ำรองอย่างเป็นระบบ โดยซอฟต์แวรม์ ีหน้าทีห่ ลกั จัดการ หน่วยรับเข้าและหน่วยแสดงผล จัดการหน่วยความจ�ำหลักและหน่วยความจ�ำรองในการบันทึกข้อมูล เป็นตัวเชอื่ มระหว่างผ้ใู ช้งานกบั คอมพิวเตอร์ แบ่งเป็น 1) ระบบปฏบิ ัติการ (OS : Operating System) เป็นซอฟต์แวร์ท่ีจัดการระบบคอมพิวเตอร์ ตัวอย่างเช่น - ดอส (DOS : Disk Operating System) เปน็ การใชค้ �ำสงั่ ดว้ ยตวั อกั ษร ซง่ึ ใชใ้ นระยะแรก - วินโดวส์ (Windows) เป็นระบบปฏิบัติการที่พัฒนาต่อจาก DOS โดยพัฒนาระบบ ติดต่อแบบพิมพ์ค�ำส่ัง เป็นระบบติดต่อผู้ใช้เชิงกราฟิก (GUI : Graphic User Interface) เพ่ือให้ผู้ใช้ ท�ำงานง่ายขึ้น งานจะอยู่ในหน้าต่างท่ีแสดงผลบนจอภาพ เนน้ รปู แบบกราฟิก ใชเ้ มาส์ (Mouse) เลือ่ น ตัวชีต้ �ำแหนง่ เพ่ือเลอื กต�ำแหน่งทต่ี อ้ งการบนจอภาพ - แมค โอเอส (MAC OS) เป็นระบบปฏบิ ัติการของเครอื่ งแมคอินทอช (Macintosh)

40 บทที่ 2 ขั้นตอนและจริยธรรมในการเขียนโปรแกรมเกมคอมพวิ เตอร์ - ยูนิกซ์ (UNIX) เป็นระบบปฏิบัติการท่ีสามารถใช้งานได้หลายงาน หลายคนพร้อมกัน จึงใช้กับงานท่ีต้องเชื่อมโยงกบั เครือ่ งหลายระบบและต่อเครือ่ งปลายทางได้หลายเครอ่ื งพร้อมกัน - ลีนุกซ์ (LINUX) เป็นระบบปฏิบัติการแบบ 32 บิตที่พัฒนาขึ้นมาให้คล้ายกับยูนิกซ์ แตส่ ามารถท�ำงานไดบ้ นเครอ่ื งคอมพวิ เตอรส์ ว่ นบคุ คล (PC : Personal Computer) คอื สามารถท�ำงาน ได้พร้อมกันหลายคน และผู้ใช้แต่ละคนสามารถท�ำงานได้หลายงานพร้อมกันอีกด้วย ซึ่งการท�ำงานน้ัน สามารถท�ำงานได้ทงั้ รปู แบบข้อความ (Text) และกราฟกิ (Graphic) 2) ตัวแปลภาษา ในการพัฒนาซอฟต์แวร์ จ�ำเป็นต้องใช้ซอฟต์แวร์ในการแปลภาษาระดับสูง เพ่ือให้เป็นภาษาเคร่ือง โดยมีการประมวลผลโปรแกรมท่ีเขียนข้ึนด้วยภาษาระดับสูง โดยแบ่งเป็น 2 ลกั ษณะ คอื - คอมไพเลอร์ (Compiler) แปลโปรแกรมท่ีเขียนด้วยภาษาระดับสงู เรยี กวา่ โปรแกรม ต้นฉบับ (Source Code Program) ให้เป็นภาษาเคร่ือง ทั้งน้ีถ้ามีข้อผิดพลาด เครื่องจะพิมพ์รหัส ข้อผิดพลาดออกมาดว้ ย หากไม่มีข้อผิดพลาดผู้ใช้สามารถส่ังประมวลผลโปรแกรม และเก็บโปรแกรมท่ี แปลภาษาเครอ่ื งไวใ้ ชง้ านตอ่ ไปได้โดยไมต่ ้องแปลซำ�้ อีก ตวั อยา่ งเชน่ โปรแกรมแปลภาษาซี (C) โปรแกรม แปลภาษาโคบอล (Cobol) โปรแกรมแปลภาษาปาสกาล (Pascal) โปรแกรมแปลภาษาฟอร์แทรน (Fortran) - อินเทอร์พรีเตอร์ (Interpreter) แตกต่างที่การแปลด้วยอินเทอร์พรีเตอร์จะแปล และประมวลผลทีละค�ำสั่ง ซ่ึงมีข้อจ�ำกัดที่เมื่อน�ำโปรแกรมมาใช้งานภายหลังต้องท�ำการแปลใหม่ทุกคร้ัง เชน่ ภาษา HTML เปน็ ภาษาทต่ี อ้ งใชอ้ ินเทอรพ์ รเี ตอร์ในการแปล ภาษาคอมพวิ เตอร์ คอมพิวเตอร์เป็นอุปกรณ์อิเล็กทรอนิกส์ที่ท�ำงานในระบบดิจิทัล (Digital) และการท�ำงานของ คอมพวิ เตอรต์ อ้ งมโี ปรแกรม (Program) ในการสงั่ ใหค้ อมพวิ เตอรป์ ระมวลผลตามวตั ถปุ ระสงคข์ องโปรแกรม ซึ่งสรา้ งขึ้นจากภาษาคอมพิวเตอร์ เพ่ือเปน็ สื่อกลางในการตดิ ต่อระหวา่ งมนษุ ย์กบั คอมพวิ เตอร์ ดังน้ัน ภาษาคอมพิวเตอร์ (Computer Language) หรือภาษาโปรแกรมคอมพิวเตอร์ (Computer Programming Language) จึงหมายถึง โปรแกรมที่นักเขียนโปรแกรม (Programmer) ก�ำหนดขึ้นด้วยการเขยี นซอรส์ โค้ด (Source Code) ทถ่ี ูกตอ้ งตามหลกั ไวยากรณข์ องภาษาคอมพวิ เตอร์ เพ่ือให้ติดต่อส่ือสาร ควบคุมการรับส่งข้อมูลและส่ังให้คอมพิวเตอร์สามารถท�ำงานตามท่ีโปรแกรม ตอ้ งการได้

การสรา้ งเกมคอมพิวเตอร์เบือ้ งตน้ 41 ทงั้ น้ี ในการปอ้ นค�ำสงั่ ใหค้ อมพวิ เตอรท์ �ำงานในระยะแรกนนั้ นกั เขยี นโปรแกรมไดใ้ ชก้ ารปอ้ นค�ำสง่ั ด้วย รหัสเลขฐานสอง (Binary) ซงึ่ ประกอบดว้ ยเลข 2 ตวั คือ 0 กับ 1 ซึง่ เปน็ เลขฐานทค่ี อมพิวเตอร์ เข้าใจได้ง่าย เพราะคอมพิวเตอร์ท�ำงานด้วยระบบดิจิทัล ส่วนการท�ำงานในคอมพิวเตอร์จะควบคุมด้วย สัญญาณไฟฟ้าท่ีมี 2 สถานะ คือ เปิดกับปิด ซ่ึงเทียบได้กับ 0 กับ 1 แต่ในปัจจุบันมีการพัฒนาภาษา คอมพวิ เตอรม์ ากขน้ึ ซง่ึ เหมาะกบั การใชง้ านประเภทต่าง ๆ สามารถแบ่งภาษาคอมพิวเตอรไ์ ด้ 5 ยคุ ดงั นี้ ยุคที่ 1 ภาษาเครื่อง (Machine Languages) เป็นการใช้เลขฐานสองในการแทนค�ำส่ังและ ข้อมูลตา่ ง ๆ ในการพัฒนาโปรแกรมจงึ ค�ำนวณชุดตัวเลขขึ้นมาในการใช้แทนค�ำส่ัง แลว้ จึงน�ำชุดตัวเลข มาใชใ้ นการเขียนโปรแกรม ซึง่ การใช้ภาษาเครอื่ ง จดุ เดน่ คอื คอมพิวเตอร์สามารถเข้าใจได้ทันที แตใ่ น การท�ำงานนั้นเป็นวธิ ที ีย่ ุ่งยากมาก จงึ มกี ารพฒั นาภาษาคอมพวิ เตอรใ์ นรปู แบบตวั อักษร ตวั อยา่ งค�ำส่งั ภาษาเครื่อง เช่น เก็บข้อมูลลงในหน่วยความจ�ำ 0011 0000 หมายถึง โหลดข้อมูลจากหน่วยความจ�ำ 0010 0000 หมายถงึ ด�ำเนินการบวกขอ้ มูล 0100 0000 หมายถึง ยคุ ท่ี 2 ภาษาแอสเซมบลี (Assembly Languages) เปน็ การใชต้ วั อกั ษรภาษาองั กฤษแทนค�ำสง่ั ที่เป็นชุดตัวเลขในภาษาเครื่อง ท้ังนี้ 1 ค�ำส่ังของภาษาแอสเซมบลี จะเท่ากับ 1 ค�ำส่ังของภาษาเคร่ือง โดยจ�ำรหัสค�ำสงั่ ส้ัน ๆ ท่เี รยี กวา่ นิวมอนิกโค้ด (Mnemonic Code) ตัวอยา่ ง ค�ำส่งั นิวมอนิกโคด้ ค�ำสง่ั ภาษาเครือ่ ง ความหมาย STORE 0011 0000 เกบ็ ข้อมูลไวใ้ นหนว่ ยความจ�ำ LOAD 0010 0000 โหลดขอ้ มลู จากหนว่ ยความจ�ำ ADD 0100 0000 ด�ำเนินการบวกข้อมลู SUB 1101 0000 ด�ำเนินการลบขอ้ มูล MOV 1001 0000 ยา้ ยขอ้ มูลเข้าออกจากหน่วยความจ�ำ ตวั อยา่ งค�ำสั่งภาษาแอสเซมบลี เชน่ MOV AL, 061H คอมพิวเตอร์รับค�ำสั่งนิวมอนกิ โค้ดได้ เพราะใช้แอสเซมเบลอร์เป็นตัวแปลภาษานิวมอนิกโค้ด ให้เปน็ ภาษาเครื่อง คอมพิวเตอร์จงึ ท�ำงานตามค�ำสง่ั ได้


Like this book? You can publish your book online for free in a few minutes!
Create your own flipbook