เอกสารวิชา การเขียนโปรแกรมเกมคอมพิวเตอร์ mult3602

บทที่ 1 แนวคิดการเขียนโปรแกรม
1.1 ประวัติการเขียนโปรแกรมคอมพิวเตอร์
1.2 หลักการและแนวคิดการเขียนโปรแกรมคอมพิวเตอร์
1.3 ขั้นตอนการเขียนโปรแกรมคอมพิวเตอร์
1.4 ผังงานการเขียนโปรแกรม

เอกสารบทที่ 1 ch1.pdf    ch1.ppt

บทที่ 2  รูปแบบวิธีการเขียนโปรแกรมคอมพิวเตอร์
    2.1 รูปแบบวิธีการเขียนโปรแกรมคอมพิวเตอร์
2.2 การเขียนโปรแกรมแบบเชิงโครงสร้าง
2.3 การเขียนโปรแกรมแบบภาษาเชิงวัตถุ
2.4 การเปรียบเทียบการเขียนโปรแกรมเชิงโครงสร้างและโปรแกรมแบบภาษาเชิงวัตถุ

เอกสารบทที่ 2 ch2.pdf     ch2.ppt

บทที่ 3  การออกแบบโปรแกรมเกมคอมพิวเตอร์
3.1 การออกแบบโปรแกรมเกมคอมพิวเตอร์ในอดีต
3.2 การออกแบบโปรแกรมเกมภาษาเชิงวัตถุ
3.3 คุณลักษณะของการออกแบบโปรแกรมคอมพิวเตอร์

เอกสารบทที่ 3  ch3.ppt ch3.pptpdf / ch3.pdf

บทที่ 4  ตัวแปร และชนิดข้อมูล สำหรับโปรแกรมเกมคอมพิวเตอร์
4.1 ตัวแปร
4.2 ชนิดข้อมูลพื้นฐาน
4.3 ตัวดำเนินการพื้นฐาน
4.4 ตัวอย่างโปรแกรมเกมคอมพิวเตอร์ในการประกาศและใช้งานตัวแปร

เอกสารบทที่ 4 ch4.pptx ch4.pdf ch4.pdf

บทที่ 5  โครงสร้างของโปรแกรมเกมคอมพิวเตอร์
5.1 โครงสร้างการเลือกทำ
5.2 โครงสร้างการวนซ้ำ

เอกสารบทที่ 5 ch5.pptx

บทที่ 6  ฟังก์ชันของโปรแกรมเกมคอมพิวเตอร์
6.1 รูปแบบ ขอบเขต การเข้าถึงฟังก์ชัน
6.2 ฟังก์ชันทางคณิตศาสตร์
6.3 ฟังก์ชันเกี่ยวกับเวลา
6.4 ฟังก์ชันอื่นๆ

เอกสารบทที่ 6 ch6.pptx

บทที่ 7  การเขียนโปรแกรมเกมคอมพิวเตอร์แบบภาษาเชิงวัตถุ
7.1 พื้นฐานโปรแกรมแบบภาษาเชิงวัตถุ
7.2 ประโยชน์ของโปรแกรมแบบภาษาเชิงวัตถุ
7.3 การประยุกต์ใช้งานโปรแกรมเกมแบบภาษาเชิงวัตถุ

เอกสารบทที่ 7 ch7.pdf  ch7.pptx

บทที่ 8  เกมเอนจิ้นและตัวอย่างโปรแกรมเกมคอมพิวเตอร์
8.1 เกมเอนจิ้น
8.2 ตัวอย่างโปรแกรมเกมคอมพิวเตอร์ เกมเก็บของ
8.3 ตัวอย่างโปรแกรมเกมคอมพิวเตอร์ เกมยิงวัตถุ

เอกสารบทที่ 8 mt3602_ch87.pdf mt3602_ch86.pptx  ใบงานที่ 7.docx   ใบงานที่ 7.pdf

เอกสารรวมทุกบท ดาวน์โหลด mult3602_all.pdf

 

course outline mult3602 (60/2)

ประมวลการสอนรายวิชา
คณะวิทยาศาสตร์ มหาวิทยาลัยราชภัฏจันทรเกษม
รหัสวิชา             MULT3602
ชื่อวิชา (ภาษาไทย)         การเขียนโปรแกรมเกมคอมพิวเตอร์
(ภาษาอังกฤษ)                Computer Game Programming
ภาคการศึกษาที่ 2 ปีการศึกษา 2560
อาจารย์ผู้สอน      อ.ไพโรจน์ สมุทรักษ์
สาขาวิชา            เทคโนโลยีมัลติมีเดีย
ภาควิชา  วิทยาศาสตร์ประยุกต์

คำอธิบายรายวิชา
แนวความคิดและระเบียบวิธีการเขียนโปรแกรมเกม การออกแบบเกมเชิงวัตถุ การออกแบบเกมดั้งเดิมเทียบกับการออกแบบเกมเชิงวัตถุ รูปแบบการเขียนโปรแกรมเกม ขอไดเปรียบของซอฟตแวรเชิงวัตถุภาษาเชิงวัตถุและการนํามาใชพัฒนาเกมคอมพิวเตอร

วัตถุประสงค์
เพื่อให้นักศึกษามีความรู้ความเข้าใจคณิตศาสตร์สำหรับมัลติมีเดียเพื่อใช้เป็นพื้นฐานในการประกอบการเรียนวิชาโครงการนักศึกษาและใช้ในการทำงานในอนาคต
1) เพื่อให้นักศึกษารู้หลักการเกี่ยวกับวิธีการเขียนโปรแกรมเกมคอมพิวเตอร์
2) เพื่อให้นักศึกษามีทักษะการออกแบบเกม
3) เพื่อให้นักศึกษามีเข้าใจความสัมพันธ์ระหว่างการเขียนโปรแกรมเกมและการออกแบบเชิงวัตถุ
4) เพื่อให้นักศึกษาเข้าใจการนำแนวคิดและวิธีการเขียนโปรแกรมเกมไปใช้ประโยชน์ในด้านการพัฒนาเกมคอมพิวเตอร์

วัน – เวลาที่สอนและห้องเรียน วันจันทร์ เวลา 13:30-12:15 ห้อง 15-0504

แผนการสอน

 

วันเดือนปี

เนื้อหา

กิจกรรมการสอน

1

08/01/61 แนะนำพื้นฐานส่วนประกอบที่สำคัญในการเขียนโปรแกรมเกมคอมพิวเตอร์ในปัจจุบันทบทวนหลักการการเขียนโปรแกรม – บรรยายด้วย PowerPoint
– ซักถาม
– ยกตัวอย่างประกอบ

2

15/01/61 กระบวนการพัฒนาโปรแกรมคอมพิวเตอร์

– การวิเคราะห์และออกแบบผังงาน

– การเขียนโปรแกรมเกมคอมพิวเตอร์

Work1: ออกแบบโปรแกรมเกม

– บรรยายด้วย PowerPoint
– ซักถาม
– ยกตัวอย่างประกอบ
– ฝึกปฏิบัติโดยผู้เรียน

3

22/01/61 – โปรแกรมเชิงวัตถุ (Object Oriented Programming, OOP) สำหรับการพัฒนาเกมคอมพิวเตอร์
– วิธีการออกแบบโปรแกรมเกมคอมพิวเตอร์- การเปรียบเทียบการออกแบบเกมแบบต่างๆ- การเขียนโปรแกรมเกมโดยใช้ script

Work2: ออกแบบโปรแกรมเกม

– บรรยายด้วย PowerPoint
– ซักถาม
– ยกตัวอย่างประกอบ
– ฝึกปฏิบัติโดยผู้เรียน

4

29/01/61 สอบย่อยเก็บคะแนน ครั้งที่ 1

– ตัวแปร และฟังก์ชัน ประเภท ชนิด วิธีการใช้งาน

– พื้นฐานการใช้ conventions และโครงสร้าง syntax เช่น เครื่องหมาย . dot operators, เครื่องหมาย;semi-colons, indentation และการใส่คำอธิบายในการเขียนโปรแกรม

– บรรยายด้วย PowerPoint
– ซักถาม
– ยกตัวอย่างประกอบ
– ฝึกปฏิบัติโดยผู้เรียน

5

05/02/61 Game Performance และการวัดค่า กระบวนการวัดประสิทธิภาพในเกม – บรรยายด้วย PowerPoint
– ซักถาม
– ยกตัวอย่างประกอบ
– ฝึกปฏิบัติโดยผู้เรียน

6

12/02/61 – โครงสร้งโปรแกรมแบบทางเลือก if, switch case

 

– บรรยายด้วย PowerPoint
– ซักถาม
– ยกตัวอย่างประกอบ
– ฝึกปฏิบัติโดยผู้เรียน

7

19/02/61 – โครงสร้างโปรแกรมแบบวนซ้ำ (Loop) for, foreach, while, do while – บรรยายด้วย PowerPoint
– ซักถาม
– ยกตัวอย่างประกอบ
– ฝึกปฏิบัติโดยผู้เรียน
26/02/61 สอบกลางภาค  

8

05/03/61 – การเรียกใช้งานตัวแปร

– การเรียกใช้ฟังก์ชัน ขอบเขต การเข้าถึง และส่วนประกอบ

– การใช้งานฟังก์ชันเฉพาะ เช่น Awake(), Start()

– บรรยายด้วย PowerPoint
– ซักถาม
– ยกตัวอย่างประกอบ
– ฝึกปฏิบัติโดยผู้เรียน
9 12/03/61 – การอัพเดตค่าตัวแปร และฟังก์ชัน

– การใช้งานฟังก์ชันทางคณิตศาสตร์

– บรรยายด้วย PowerPoint
– ซักถาม
– ยกตัวอย่างประกอบ
– ฝึกปฏิบัติโดยผู้เรียน

10

19/03/61 – การเปิด/ปิดใช้งาน คอมโพเนนต์

– การเซตค่าแอคทีฟให้วัตถุในเกม

– การหมุน การเคลื่อนย้าย วัตถุ

– การทำลายวัตถุ

– บรรยายด้วย PowerPoint
– ซักถาม
– ยกตัวอย่างประกอบ
– ฝึกปฏิบัติโดยผู้เรียน

11

26/03/61 – การใช้งาน คลาส instantiate

– การใช้งาน arrays

– การใช้ฟังก์ชัน Invoke

– การใช้งาน enumerations

– บรรยายด้วย PowerPoint
– ซักถาม
– ยกตัวอย่างประกอบ
– ฝึกปฏิบัติโดยผู้เรียน

12

02/04/61  สอบย่อยเก็บคะแนน ครั้งที่ 2  

13

09/04/61 AI Concept ในเกม

– การใชงาน AI ในเกม

– หลักการและวิธีเลือกใช้AI

– หลักการ Spawn Enermy หรือ Enermy Management

– ทฤษฏีการทํา PathFinding ในแบบต่างๆ เช่น Way Point

– บรรยายด้วย PowerPoint
– ซักถาม
– ยกตัวอย่างประกอบ
– ฝึกปฏิบัติโดยผู้เรียน

14

23/04/61 ทางเลือกในการพัฒนาเกมหลักการของ Game EngineการเลือกใชGame Engineอาชีพในการพัฒนาเกม และทางเลือกเพื่อเป็นนักพัฒนาเกมในอนาคต – บรรยายด้วย PowerPoint
– ซักถาม
– ยกตัวอย่างประกอบ
– ฝึกปฏิบัติโดยผู้เรียน

15

30/04/61 นำเสนอโครงงานเกมคอมพิวเตอร์ – ซักถาม
– นำเสนอโดยผู้เรียน

การวัดผลและการประเมินผล

1. การวัดผล

1.1 คะแนนระหว่างภาค 70 คะแนน

1.1.1 สอบย่อย 20 คะแนน

1.1.2 การค้นคว้าวิเคราะห์กรณีศึกษา การนำเสนอรายงาน การทำงานกลุ่ม การส่งงาน ตามที่มอบหมาย 10 คะแนน

1.1.3 คะแนนเข้าเรียน 10 คะแนน

1.1.4 คะแนนสอบกลางภาค 30 คะแนน

1.2 คะแนนสอบปลายภาค 30 คะแนน

2. การประเมินผล

คะแนน               ค่าระดับคะแนน

80 – 100                        A

75 – 79                           B+

70 – 74                           B

65 – 69                         C+

60 – 64                          C

55 – 59                          D+

50 – 54                         D

0 – 49                           F

ตำราหลัก

1. ไพโรจน์ สมุทรักษ์.  (2559). การเขียนโปรแกรมเกมคอมพิวเตอร์. สาขาวิชาเทคโนโลยีมัลติมีเดีย คณะวิทยาศาสตร์ มหาวิทยาลัยราชภัฏจันทรเกษม.

เอกสารประกอบ

1. Curtis Bennett.  (2009). A Simple Introduction to Game Programming With C# and XNA 3.1.  United States of America :xnagamemaking.com.

เว็บไซต์

1. http://www.sc.chandra.ac.th/phairoj-s/

2. http://unity3d.com/

3. https://www.sololearn.com/User/Login/?ReturnUrl=%2fPlay%2fCSharp

E – mailของอาจารย์ผู้สอน phairoj.s@chandra.ac.th

ข้อตกลงในการเรียน

1) ให้นักศึกษาส่งงานให้ครบทุกชิ้นงาน ห้ามคัดลอกผลงานมาส่ง
2) การแต่งกายเรียบร้อย  ในสถานที่ราชการ
3) ไม่อนุญาตให้นักศึกษาเล่นเกม เปิดเพลง เล่นสมาร์ทโฟน ในขณะเรียน
4) ถ้านักศึกษามาเรียนไม่ถึง ร้อยละ 80 ของเวลาเรียนทั้งหมด และไม่ส่งโปรเจคปลายภาคจะไม่ผ่านในรายวิชานี้

 

ตารางสอนปี-2560-เทอม2

  8:00 9:00 10:00 11:00 12:00 13:00 14:00 15:00 16:00 17:00  
จันทร์  MULT3602, 101
15-0505 (ชั้น 5)
(13:30-17:30)
 
อังคาร  MULT1105, 121
15-0505 (ชั้น 5)
(08:30-12:30)
 MULT1105, 122
15-0505 (ชั้น 5)
(13:30-17:30)
 
พุธ
พฤหัสบดี
ศุกร์  MULT3901, 101
15-0508 (ชั้น 5)
(14:30-17:30)
 
อาทิตย์  MULT4902, 240
15-0501 (ชั้น 5)
(08:30-14:30)