โครงงานพัฒนาเกม 8

18

Click here to load reader

Transcript of โครงงานพัฒนาเกม 8

Page 1: โครงงานพัฒนาเกม 8

"โครงงานประเภทการพฒนาโปรแกรมประยกต"(Game

Development)

โครงงานพฒนาโปรแกรมประยกต หรอ โครงงานพฒนาเกมโครงงานประเภทน �เปนโครงงานพฒนาซอฟตแวรเกมเพ�อความรหรอเพ�อความ

เพลดเพลน เกมท�พฒนาควรจะเปนเกมท�ไมรนแรง เนนการใชสมองเพ�อฝกคดอยางมหลกการ โครงงานประเภทน �จะมการออกแบบลกษณะและกฎเกณฑการเลน เพ�อใหนาสนใจแกผ เลน พรอมท �งใหความรสอดแทรกไปดวย ผพฒนาควรจะไดทาการสารวจและรวบรวมขอมลเก�ยวกบเกมตางๆ ท�มอยท�วไป และนามาปรบปรงหรอพฒนาข �นใหม เพ�อใหเปนเกมท�แปลกใหม และนาสนใจแกผ เลนกลมตางๆ

ตวอยางโครงงานประเภทพฒนาโปรแกรมประยกต

1. เกมผจญภยกบพระอภยมณ

2. เกมอกษรเขาวงกต

3. เกมเลอกต �งสมาชกสภาผแทนราษฎร

4. เกมผจญภยกบภาษาองกฤษ

5. เกมหมากฮอส

Page 2: โครงงานพัฒนาเกม 8

โครงงานการพฒนาเกมคอมพวเตอร 3 มต

บทคดยอ

ปจจบนเกมไดเขามามบทบาทตอสงคมไทยและเยาวชนไทยมากข �น แตเกมสวนใหญถกสรางและออกแบบมาในแนวทางของวฒนธรรมตางประเทศ อกท �งรปแบบเกมท�ปรากฏใหเหนจะเนนเร�องการฆาฟนและเอาชนะ ซ�งอาจไมเปนผลดตอวฒนธรรมและสงคมไทย เน�องจากเกมสามารถเปนเคร�องมอท�ชวยพฒนาระบบวธการคดวเคราะห สรางจนตนาการ หรอแมกระท�งขดเกลาจตใจ

ปรญญานพนธเลมน �จงไดนาเสนอแนวเกมท�มงเนนออกแบบและรเร�มสรางสรรค

เน �อหาของเกมใหออกมาในรปแบบ Simulation 3 มตออนไลนท�สนกสนานและมความบนเทง สอดแทรกความรตางๆ เพ�อใหมความเหมาะสมตอผ เลนทกคน เกมจะเนนความเปนธรรมชาตของตวละครท�สามารถตดสนใจได

ดวยตนเอง โดยนาความรทางดานปญญาประดษฐ (Artificial

Intelligence) มาชวยในการออกแบบเพ�อสรางตวละครท�มชวตชวาและมความใกลเคยงกบมนษยมากท�สด จงไดรปแบบเกมท�ใหผ เลนไดรบท �งความ

บนเทงและไดรบความรไปพรอมๆกน (Edutainment) สงเสรมใหผ เลนทาความด สรางมนษยสมพนธกบผ เลนคนอ�นและอนรกษวฒนธรรมไทย

นอกจากน �ยงเปนการสงเสรมการพฒนาเกมไทยใหมความกาวหนาและมคณภาพย�งข �นตอไป

Page 3: โครงงานพัฒนาเกม 8

บทท� 1 บทนา

1.1 ความเปนมาและความสาคญของปญหา

การพฒนาเกมใหมความนาสนใจ มความสนกสนานน �น แนนอนส�งหน�งท�ขาด

ไมไดท�จะทาใหเกมมชวตชวามากข �น คอ NPC (Non Player

Character) ท�มความฉลาด สามารถตดสนใจไดดวยตนเองอยางเปน

ธรรมชาต ซ�งทาใหผ เลนไดรสกวา NPC มชวตจรงๆ ดงน �นการพฒนาตอง

อาศยความรทางดานปญญาประดษฐ (Artificial Intelligence) เปน

ทฤษฎท�ทาให NPC ทาหนาท�ตางๆ ไดอตโนมต โดยกระทาส�งตางๆอยางมเหตผลจนบรรลเปาหมายท�กาหนดไว โดยผจดทาโครงงานใชทฤษฎตรรกศาสตร

คลมเครอ (Fuzzy Logic) และ Finite State Machine ในการ

ออกแบบ NPC

ท �งน �การเลนเกมเพ�อความสนกสนาน แลวไดรบความรไปพรอมๆกนน �น

(Edutainment) ยอมเปนส�งท�ดและเหมาะกบยคสมยในปจจบน ดงน �น

ผจดทาโครงงานจงจดทาโครงงานการพฒนาเกมคอมพวเตอร 3 มตท�ถก

พฒนาข �นเพ�อความบนเทง โดยเกมเปนแนว Simulation 3 มตออนไลน ท�จาลองรปแบบชวตของสงคมไทยในสมยกอน เปนเกมแนวนารกสดใส เน �อหาไมรนแรง เหมาะสมกบผ เลนทกเพศทกวย สอดแทรกความรทางดานวชาการ เสรมทกษะดานคณธรรม และหลกธรรมทางพระพทธศาสนา พรอมท �งนาเสนอวฒนธรรมไทย การละเลนไทย อกท �งเปนเกมออนไลน ผ เลนจงสามารถสรางเพ�อน มตรภาพใหมๆกบผ เลนคนอ�นๆ รวมท �งทาใหผ เลนไดสมผสประสบการณของสงคมไทยในอดต

Page 4: โครงงานพัฒนาเกม 8

นอกจากน �การพฒนาโครงงานการพฒนาเกมคอมพวเตอร 3 มต จะชวยสรางเสรมทกษะท �งทางดานความคดสรางสรรค การท างานอยางเปนระบบ การวางแผนการทางาน และเทคโนโลยทางดานคอมพวเตอรแกผจดทาโครงงานเปนอยางมาก

1.2 วตถประสงคของโครงงาน

1. 1. เพ�อศกษาและออกแบบการสรางเกม 3 มตออนไลน

2. 2. เพ�อศกษาเทคนคทางดานปญญาประดษฐสาหรบการพฒนาเกม

3. 3. เพ�อศกษาการสรางเกมออนไลน ทาใหรองรบผ เลนไดจานวนมาก

4. 4. เพ�อศกษาการใชงานและออกแบบโมเดล 3 มตดวยโปรแกรม 3Ds

Max8

5. 5. เพ�อศกษาการเขยนโปรแกรมสรางเกมออนไลน 3 มตดวยภาษาไพ

ธอน (Python)

6. 6. เพ�อสรางเกมท�มความบนเทงและความสนกสนานเหมาะสมกบผ เลนทกเพศทกวย

1.3 ขอบเขตของการศกษา

1. 1. NPC มความฉลาดในการตดสนใจเร�องตางๆภายในเกม

2. 2. ผ เลนสามารถสรางความสมพนธกบ NPC ได

3. 3. ผ เลนสามารถซ �อ/ขาย อาหาร และเพ�มทกษะของตนเองจากการทากจกรรมตางๆได

4. 4. เกมสามารถออนไลน โดยผ เลนเขาใชไดคร �งละหลายคน

1.4 ประโยชนท�คาดวาจะไดรบ

Page 5: โครงงานพัฒนาเกม 8

1. เขาใจและสามารถออกแบบสราง NPC ท�มความฉลาด สามารถตดสนใจไดอยางเปนธรรมชาตโดยใชเทคนคปญญาประดษฐได

2. เขาใจระบบการทาเนตเวรค (Network) สาหรบเกมออนไลน และสามารถสรางเกมออนไลนท�รองรบผ เลนไดคร �งละจานวนมาก

3. เขาใจและสามารถใชโปรแกรม 3ds Max8 ในการออกแบบสรางโมเดลตวละครและฉากตางๆได

4. เขาใจและสามารถทาแอนนเมชน (Animation) เคล�อนไหวตวละคร 3

มตได

5. เขาใจภาษาไพธอนและสามารถใช Panda3D Engine ในการพฒนาเกมได

6. เขาใจและสามารถเขยนโปรแกรมเพ�อใชสาหรบการตดตอฐานขอมลได

1.5 สวนประกอบของปรญญานพนธ

ปรญญานพนธเลมน �ประกอบไปดวยเน �อหา 5 บท ดงน �

บทท� 1 กลาวถงความเปนมาและความสาคญของปญหา, วตถประสงคของ

โครงงาน, ขอบเขตของการศกษา, ประโยชนท�คาดวาจะไดรบ, และสวนประกอบของปรญญานพนธเลมน �

บทท� 2 กลาวถงทฤษฎท�เก�ยวของกบการทาโครงงาน ซ�งประกอบไปดวย ทฤษฎ

ตรรกศาสตรคลมเครอ, Finite State Machine, การสรางโมเดล 3 มต

และการสรางแอนนเมชน, Client-Server ส าหรบเกมออนไลน, และ 3D

Engine ท�นามาใชในการพฒนาเกม

บทท� 3 กลาวถงการออกแบบและการพฒนาเกมสวนตางๆของเกม

Page 6: โครงงานพัฒนาเกม 8

บทท� 4 กลาวถงผลการทดลอง โมเดลตวละครผ เลน, โมเดลตวละคร NPC

และการเลนเกม

บทท� 5 กลาวถงบทสรปของโครงงาน ปญหาและอปสรรค, แนวทางในการพฒนาตอ และขอสรปของโครงงาน

บทท� 2 ทฤษฎท�เก�ยวของ

2.1 ตรรกศาสตรคลมเครอ (Fuzzy Logic)

2.1.1 ความหมายของตรรกศาสตรคลมเครอ

ตรรกศาตรคลมเครอพฒนาจากทฤษฏเซตวภชนย (Fuzzy set) โดยเปนการใชเหตผลแบบประมาณ ซ�งแตกตางจากการใชเหตผลแบบเดดขาดในลกษณะ

ถก\ผด, ใช\ไมใช ของตรรกศาตรแบบฉบบ (Classical Logic) ตรรกศาตรคลมเครอน �นสามารถถอเปนการประยกตใชงานเซตวภชนยเพ�อจาลองการตดสนใจของผ เช�ยวชาญตอปญหาท�ซบซอน

ตรรกศาสตรคลมเครอน �นสามารถระบความเปนสมาชกของเซต (Set

membership values) ดวยคาระหวาง 0 และ 1 ทาใหเกดระดบก�งในลกษณะของสเทา นอกจากขาวและดาซ�งมประโยชนในการจาลองระดบ ซ�ง

สามารถระบดวยคาพด “เลกนอย” “คอนขาง” “มาก” โดยใชคาความเปนสมาชกของเซตบางสวน ตรรกศาสตรคลมเครอน �มความสมพนธกบเซตวภชนย

และทฤษฎความเปนไปได (Possibility theory) ซ�งคดคนข �นในป ค.ศ.

1965 โดยศาสตราจารย ลอตฟ ซาเดห (Lotfi Zadeh) แหงมหาวทยาลยแคลฟอรเนย เบรกเลย

2.1.2 หลกการของตรรกศาสตรคลมเครอ

Page 7: โครงงานพัฒนาเกม 8

ตรรกศาสตรคลมเครอตองการตวแปรท�เปนตวเลขมากกวาเพ�อการแสดงความสาคญของขอผดพลาดและใหความสาคญเก�ยวกบอตราการเปล�ยนแปลงใชไดดในระบบควบคมหลายๆ ประเภท ข �นตอนการดาเนนการของตรรกศาสตร

คลมเครอน �นประกอบไปดวย 3 ข �นตอนดงรปตอไปน �

รปท� 2.1 Fuzzy rule-based inference

4vCrisp sets คอ หลกของคณตศาสตรท�สอนในโรงเรยน โดยมนยามวา

“Object แตละอนตองเปนของ set ใด set หน�ง หรออาจไมเปนอยาง

แนนอน” ซ�งใชไดสาหรบหลายๆปญหาเพราะหลายๆ object สามารถจดเขาพวกไดอยางถกตอง เชน เสยมกตองเปนเสยม มนไมมทางท�บางสวนจะเปนเสยม บางสวนจะเปนกรรไกรตดหญา เปนตน

Crisp sets ถกใชเปนประโยชน แตกเกดปญหาในหลายคร �ง เชน

universe ของ IQ โดยกาหนด set เปน Dumb, Average, and

Clever:

Dumb = {70, 71, 72, … 89}

Average = {90, 91, 92, … 109}

Clever = {110, 111, 112, … 129}

แสดงกราฟเสนดงรปท� โดย Degree of membership มคาเปน 0

หรอ 1

รปท� 2.2 Degree of membership ของ IQ

2.1.2.1 Fuzzification

ข �นตอนแรกของกระบวนการท�เรยกวา fuzzification น �นเปนการแปลง

ขอมลอนพทท�ชดเจนใหเปนขอมลอนพทแบบฟซซ� รวมไปถงการหา Degree

Page 8: โครงงานพัฒนาเกม 8

of membership ของขอมลท�ชดเจน ในเซตของฟซซ�ท�ไดกาหนดเอาไว

ตวอยางเชน หากใหน �าหนกของคนๆหน�งในหนวยปอนด เราสามารถหา

degree ไดวา คนๆน �มน �าหนกต�ากวามาตรฐาน มน �าหนกเกน หรอมน �าหนกมาตรฐานได

อนพทท�เขามายงระบบฟซซ�น �นอยในรปของตวเลขท�ชดเจน เปนเลขจานวนจรงท�

บอกถงปรมาณ ตวอยางเชน คนหนก 185.3 ปอนดหรอ คนสง 6 ฟต 1 น �ว

เปนตน ในกระบวนการ fuzzification น �นจะทาการเทยบขอมลท�ชดเจนให

เปน Degrees of membership ใน Qualitative fuzzy sets

ตวอยางเชน 185.3 ปอนดจะถกเทยบใหเปน “น �าหนกคอนขางเกน”, 6 ฟต

1 น �ว ถกเทยบใหเปน “สง” การเทยบน �จะใช Membership

functions หรอเรยกอกช�อหน�งวา Characteristic functions

5 Membership Functions

Membership Functions จะเทยบอนพตใหเปน Degree of

membership โดยถา Degree of membership มคาเปน 1 จะ

บอกไดวา อนพทเปนจรงโดยส �นเชง ถา Degree of membership ม

คาเปน 0 จะบอกไดวา อนพทเปนเทจโดยส �นเชง และถา Degree of

membership มคาระหวาง 0 และ 1 จะบอกไดวา อนพทเปนจรงใน

ระดบหน�ง Membership functions จะเทยบใหวาระดบเทาไหร

2.1.2.2 Fuzzy Rules

ตวดาเนนการทางตรรกะของฟซซ�น �นแตกตางไปจากปกต โดยตวดาเนนการตางๆถกนยามเอาไวดงน �

Truth (A OR B) = MAX(Truth(A),Truth(B))

Page 9: โครงงานพัฒนาเกม 8

Truth (A AND B) = MIN(Truth(A),Truth(B))

Truth (NOT A) = 1-Truth(A)

Truth (A) หมายถง Degree of membership ของ A ในฟซซ�เซต

เปนเลขจานวนจรงท�มคาอยระหวาง 0 และ1 ตวอยางเชน สมมตใหคนๆหน�ง

น �าหนกเกนเปนดกร 0.7, สงเปนดกร 0.3 จะไดเปน

น �าหนกเกน AND สง = MIN (0.7, 0.3) =0.3

น าหนกเกน OR สง = MAX (0.7, 0.3) =0.7

NOT น �าหนกเกน = 1-0.7 = 0.3

NOT น �าหนกเกน = 1-0.7 = 0.3

NOT สง = 1-0.3= 0.7

NOT (น �าหนกเกน AND สง) =1-MIN (0.7, 0.3) =1-0.3=0.7

Rule Evaluation

ในระบบฟซซ�กฎทกกฎจะถกประเมนเพ�อหา Degree of membership

ของกฎน �นๆ ซ�งวธเลอกเอาทพทแบบงายท�สดกคอใหเลอกเอาทพทของกฎท�ม

Degree of membership สงสดเปนเอาทพทของฟซซ�ตวอยาง

สมมต ระบบฟซซ�มกฎอยดงน �

If(in melee range AND uninjured)AND NOT hard

then attack

If(NOT in melee range) AND uninjured then do

nothing

If(NOT out of range AND NOT uninjured)AND( NOT

wimp) then flee

Page 10: โครงงานพัฒนาเกม 8

เม�อค านวณหา Degree of membership ในเซตตางๆ จากอนพทท�รบเขามา สมมตไดเอาทพทเปน

Attack ดกร 0.2 Do nothing ดกร 0.4 Flee ดกร 0.7

ดงน �น เอาทพทจงเปน Flee

2.1.2.3 Defuzzification

Defuzzification เปนกระบวนการหาเอาทพทท�ชดเจนออกมาเปนตวเลข

ซ�งมหลายเทคนคท�สามารถน ามาใชงาน มเทคนคหน�งท�ช�อ singleton

output membership functions เปนเทคนคท�มประสทธภาพเทคนคหน�ง เน�องจากไมตองใชการประมวลผลมากนก โดยการคานวณโดยใชสตรดงตอไปน �

เอาทพท = (2.1)

โดย คอ Degree of membership, คอคาเอาทพทท�ชดเจนของแตละเอาทพท ตวอยางเชน

Flee Do nothing Attack

= -10 =1 =10

เอาทพท =

ซ�งอาจจะใชเอาทพทท�ไดเปนอตราเรวของการหน (Flee) เปน -2.5

(อตราเรวการหนสงสด -10)

2.2 Finite State Machine

Finite state machine เกดข �นจาก เซต 2 เซต ไดแก

1. 1. เซตของสถานะ (States) ท�แสดงถงเหตการณท�เปนไปไดท�จะเกดข �นท �งหมด

Page 11: โครงงานพัฒนาเกม 8

2. 2. เซตของการเปล�ยนแปลง (Transitions) เปนเง�อนไขท�เช�อมตอ

ระหวางสถานะ 2 สถานะ ท�ตดกน

โดยสามารถพจารณาการเปล�ยนแปลงระหวางสถานะดวย If-Then

Conditionals เพ�อตรวจสอบเง�อนไขหรอกฎเกณฑท�วางไว

ขอดของการใช Finite State Machine ในการออกแบบโมเดลเกม มดงตอไปน �

1. Coding ไดงายและรวดเรว

2. สะดวกในการท า Debugging

3. ไมเปลองทรพยากรในการประมวลผล

2.3 การสรางโมเดล 3 มตและการสรางแอนนเมชน

2.3.1 การออกแบบและกระบวนการสรางโมเดลตวละครภายในเกม

โมเดลตวละครในงาน 3 มต สามารถสรางไดหลายวธ เชน สรางดวยเสนเนรบ

(Nurb) หรอ สรางจากโพลกอน (Polygon) แตวธท�เปนท�นยมแพรหลายมกจะเปนวธการสรางโมเดลแบบการป �นโดยใชโครงสรางโมเดลแบบโพลกอน

เหตผลท�วธน �เปนท�นยมเพราะมวธการข �นโมเดลท�งายในการสรางหรอแกไข

2.3.1.1 ความละเอยดของโมเดล

สาหรบการป �นโมเดลตวละครประเภทตวคนหรอสตวตางๆ ดวยวธดงกลาวน �น

สามารถแบงชนดยอยๆ ไดสองแบบคอ โมเดลแบบความละเอยดต�า (Low

polygon model) และโมเดลแบบความละเอยดสง (High polygon

model)

- โมเดลแบบความละเอยดต�า

Page 12: โครงงานพัฒนาเกม 8

เปนโมเดลท�ใชจานวนโพลกอนท�ไมมากนก ขอดของโมเดลแบบน �คอสราง และ

แกไขรายละเอยดเพ�มเตมไดงาย ประหยดเวลาในการเรนเดอร (Render)

และเคร�องคอมพวเตอรทางานไมหนก และดวยความไมหนกของโมเดลน�เองท�ทาใหโมเดลชนดน �มกจะเหมาะกบงานท�ตองการความเรวในการประมวลผลสงๆ

เชนโมเดลสาหรบเกมตางๆ

- โมเดลแบบความละเอยดสง เปนโมเดลท�มความละเอยดสง จงมจานวนโพลกอนท�ใชในการท างานรวมท �งขนาดไฟลของโมเดลมากข �นตามไปดวย และเน�องจากความใหญและละเอยดน�เองท�ทาใหโมเดลแบบน �ตองใชเวลาในการประมวลผลตางๆมากมาย สวนใหญโมเดลแบบน �มกจะถกใชในงานประเภทท�ตองการความสมจรงมากๆ เชน ในงานภาพยนตร งานโฆษณา หรอในการเร�มเร�องท�เปนสวนแอนนเมชนสวยๆของเกมตางๆ เปนตน

2.3.1.2 ข �นตอนหลกในการข �นรปโมเดล

ในการป �นโมเดลเราสามารถแบงข �นตอนหลกๆ ไดดงน �

- เตรยมแบบรางใหพรอมสาหรบอางองตาแหนงตางๆ

- ป �นโมเดลไปทละสวน เชน ลาตว แขน ขา และสวนหน แลวแตตามความถนด

นาโมเดลท�ป �นเรยบรอยแลวมาใสรายละเอยดพ �นผว ดวยการวาดลวดลายท�ตองการในโปรแกรมตกแตงและวาดภาพ

2.3.1.3 การเตรยมแบบรางสาหรบการข �นโมเดล

เน�องจากการสรางโมเดลความละเอยดต า จะตองใชวธดง ดด หรอยายจด

ตางๆ ไปมากบ Polygon ดงน �นในการทางานจงควรจะมแบบรางของโมเดล

ท�ตองการสรางสาหรบใชอางองการยายตาแหนงดวยเหตผล 2 ประการคอ

Page 13: โครงงานพัฒนาเกม 8

- ประการแรกคอสามารถข �นโมเดลไดงาย เพราะการวาดในกระดาษใหเรยบรอยจะทาใหไดเหนหนาตาตวโมเดลกอน และเม�อเหนหนาตาคราวๆ แลวการป �น

โมเดลกจะงายย�งข �น

- ประการท�สองคอใชสาหรบอางองตาแหนงจดตางๆ ท�เราจะใชอางองในการป �นรปโมเดล

2.3.2 เคร�องมอหรอโปรแกรมท�นยมใชในการสรางภาพ 3 มต

โปรแกรมท�นยมใชในการสรางงานโมเดลกราฟฟก 3 มตข �นมาโดยโปรแกรม

ระดบมออาชพท�ไดรบความนยมในการสรางงานโมเดล 3 มต มดงน �

2.3.2.1 3Ds Max

โปรแกรม 3D Studio Max น � เปนโปรแกรมกราฟฟกท�ไดรบความนยม

มาก พฒนาโดย Autodesk Media and Entertainment

ปจจบนออกถงเวอรชน 9 เปนโปรแกรมท�มประสทธภาพในการสรางโมเดลสง มปลกอนท�ยดหยน ใชงานงาย และมอยคอนขางมากใน

แพลตฟอรมของวนโดวสโปรแกรมน �มกจะถกนาไปใชในการสรางวดโอเกม งานสถาปตยกรรมและการออกแบบ รวมไปถงการทาสเปเชยลเอฟเฟค ในภาพยนตรบางเร�อง

- ขอดของโปรแกรม 3Ds Max

3Ds Max มขอดคอใชงานงาย เปนท�นยมใชกนอยางแพรหลาย มขอมลและส�อ ใหศกษาจานวนมาก ในประเทศไทยโปรแกรมน �เปนท�นยม จงสามารถหาขอมลและสอบถามปญหาไดงาย สวนความสามารถของตวโปรแกรมน �นเพยบพรอม ท �งในเร�องการข �นโมเดลหรอการสรางแอนนเมชน มเทคนคให

Page 14: โครงงานพัฒนาเกม 8

เลอกใชมาก ซ�งชวยอานวยความสะดวกไดเปนอยางด และจดเดนท�สาคญของ

3Ds Max คอแกไขงานไดงายกวาโปรแกรมอ�น ตวชวยปลAกอนมใหเลอกใช

ปรมาณมาก เชน ม Character Studio ชวยในการสรางงาน โปรแกรมน �เหมาะกบงานหลากหลายระดบ และเหมาะกบการนาไปชวยในการสรางตวละครภายในเกม เพราะทาโมเดลแบบความละเอยดต�าไดด มเกมจานวนมากท�

สรางโดยใช 3Ds Max ท าแอนนเมชนไดด และนยมนาไปสรางงานดานสถาปตยกรรม เหมาะกบผ เร�มตนท�ตองการเปนมออาชพในอนาคต

- ขอเสยของโปรแกรม 3Ds Max

ใชปลAกอนเปนตวชวยท�มากเกนไป เพราะถาตองการงานใหเสรจฉบไวน �น

จาเปนตองใชปลAกอนเปนตวชวย

2.3.2.2 Maya

Maya เปนโปรแกรมกราฟฟกสรางภาพ 3 มต เกดจากบรษท Alias

Systems Corporation แตปจจบนเปนของ Autodesk เดมเปน

ซอฟแวรท�ใชงานบนเคร�อง Silicon Graphics (SGI) ท�ใช

ระบบปฏบตการ (OS) Irix เทาน �นแตกไดมการพอรตมาใชกบเคร�องพซท�ใช

ระบบปฏบตการ Windows NT และ XP และในปจจบนสามารถใชกบ

เคร�อง Mac ท�ใช Mac OS X

ไดอกดวย Maya ท�ถกใชอยางมากในอตสาหกรรมหนงและ ภาพยนตร และมการใชบางในเกมคอมพวเตอร

Maya มจดเดนในเร�องของความยดหยนอยางมากในการทางาน โดยใชการท

างานแบบ Node-base เปนหลก กลาวคอฟงกชนการท างานแตละแบบจะ

ถกเกบเปน Node โดยแตละ Node จะมอนพทและเอาทพทเราสามารถ

Page 15: โครงงานพัฒนาเกม 8

เช�อม Node เหลาน �เขาดวยกน เพ�อใหเกดผลท�แตกตางกนไดนบไมถวน

รวมถงการใชงานสครปทท�เรยกวา MEL ซ�งใชงานไดงายและมประสทธภาพ

- ขอดของโปรแกรม Maya

เปนโปรแกรมท�ข �นโมเดลไดรวดเรว และเปนโปรแกรมท�ครบครนทางดานงาน 3

มตมากท�สด ใหภาพ แสง และรายละเอยดไดสมจรง มจดเดนในเร�องของความยดหยนอยางมากในการทางาน นยมนาไปใชในการสรางภาพยนตร ทา

ภาพยนตรการตน 3 มต

- ขอเสยของโปรแกรม Maya

มกระบวนการท�ซบซอนและ ไมเหมาะกบผ ท�ไมชอบการคานวณ และผ ท�เพ�ง

เร�มตนกบงานทางดาน 3 มต และแกไขงานในสวนของโมเดลแบบความละเอยดต�าไดยากและซบซอน

2.3.2.3 LightWave

LightWave 3D โปรแกรมท�นกสรางภาพ 3 มต (3D Animator) ท�วโลกตางยอมรบวา เปนโปรแกรมท�สามารถสรางโมเดล ไดงาย และรวดเรว อก

ท �งยงเปนโปรแกรมท�เรนเดอรภาพไดสมจรงท�สดอกดวย โดย LightWave

3D ไดรบความนยมสง ในงานทว (โทรทศน) และงานภาพยนตร เชน

Titanic, Star Trek VI ภาพยนตรแอนนเมชน 3 มตอยาง “Jimmy

Nouton” ในไทยเองผลงานท�สรางมาจาก LightWave ท�เหนกนท�วไป

เชน ตกตา China Doll, งานโฆษณาฟจ ชด Smile

- ขอดของโปรแกรม LightWave

Page 16: โครงงานพัฒนาเกม 8

Lightwave มขอดคอเร�องของการข �นโมเดลท�ข �นแบบฟรฟอรมไดงาย แมจะมเคร�องมอใหใชนอยแตกเพยงพอแกการทางาน ผ เร�มใชสามารถใชเวลาศกษาไดไมนาน ใชทรพยากรเคร�องนอยกวาโปรแกรมอ�นมาก กาหนดคาพารามเตอรตางๆ ไดงาย ไมยงยากซบซอน โปรแกรมน �กเหมาะสาหรบผ เร�มตนใหมเพราะงายและรวดเรวในการศกษา คาส�งและเคร�องมอตางๆ มไมมาก แตกสามารถสรางงานระดบมออาชพได

- ขอเสยของโปรแกรม LightWave

การทาแอนนเมชนของ LightWave ยงมประสทธภาพท�ดอยกวาโปรแกรม

สรางภาพ 3 มตรายอ�นๆ เชน การสรางกระดกคนเพ�อนาไปสรางเปนตวละครของโมเดลยงทาไดไมดพอ

2.3.3 โปรแกรมท�เลอกใชในการสรางโมเดล 3 มตในเกม

จากการสารวจและรวบรวมขอมล พบวาโปรแกรมสรางภาพ 3 มตแตละโปรแกรม มท �งขอดและขอเสยแตกตางกนออกไป ข �นอยกบผ ใชจะเลอก

โปรแกรมตวไหนมาใชใหเหมาะสมกบงานประเภทน �นๆ ซ�งในการสรางเกม 3

มต จาเปนตองเลอกใชเคร�องมอสรางภาพ 3 มต มาสรางตวละคร, ฉาก และอปกรณตางๆภายในเกม ดงน �นจงตองเลอกใชเคร�องมอท�สรางโมเดลไดด

โดยเฉพาะ การสรางโมเดลท�เปนแบบความละเอยดต�า คอโมเดลท�มความละเอยดของจานวนโพลกอนนอย เหมาะสมกบการนาไปประกอบภายในเกม

เพราะถาความละเอยดสงจะทาใหการเรนเดอรภาพออกมาทาไดชา เกมเกด

อาการกระตก โปรแกรม 3Ds Max จงเหมาะสมท�สดในการทางาน เพราะ

ทางานกบโมเดลแบบความละเอยดต�าไดดท�สด สนบสนนไฟล 3 มตได

Page 17: โครงงานพัฒนาเกม 8

หลากหลาย มแหลงทรพยากร เชน คนหาโมเดลตางๆท�สรางจาก 3Ds Max

ไดงาย และท�สาคญเปนท�นยมในการสรางกราฟฟก 3 มตภายในเกม

2.3.4 การใชงานโปรแกรม 3Ds Max ในการสรางโมเดลและแอนนเมชน

การใชโปรแกรม 3Ds Max สาหรบสรางโมเดลตวละครและฉากตางๆ

ภายในเกม รวมท �งการสรางแอนนเมชนใหแกตวละคร มกระบวนการพ �นฐานตางๆ ท�ควรทราบดงน �

2.3.4.1 กระบวนการพ �นฐานท�สาคญในการสรางโมเดล

1) การยายตาแหนงของจด (Vertex translation) ตามแนวแกน x, y

และ z ซ�งใช สาหรบการปรบแตงรปรางของโมเดลใหไดรปรางท�ตองการ

2) การสรางเสนขอบบนโมเดล (Edge Creation) เพ�อเพ�มรายละเอยด

โมเดล โดยสวนใหญจะใชการสรางเสนระหวางจด 2 จด

3) การหมนโมเดลรอบแนวแกน x, y และ z ใชในการเปล�ยนระนาบของวตถ

(Rotation)

4) การยอและขยายโมเดล เปนการปรบขนาดของโมเดล สามารเลอกไดวาจะ

ยอขยายตามแนวแกนใด (Scaling)

5) การดงหรอผลกพ �นผวของโมเดลเพ�อสราง Polygon ใหมเพ�มข �นมา หรอ

ทาใหเกดชองบนโมเดล (Extrude)

6) การแตกจด (Break) และการเช�อมจด (Weld) บนโมเดล

7) การใสรปภาพพ �นผวใหกบโมเดล (Texture mapping) ซ�งกระบวนการน �ใชสาหรบตกแตงรายละเอยดพ �นผวของโมเดล

2.3.4.2 สวนประกอบหลกสาหรบกระบวนการทาแอนนเมชน

Page 18: โครงงานพัฒนาเกม 8

1) กระดก (Bone) เปนส�งท�ใชควบคมพ �นผวของโมเดลใหเคล�อนไหวตามการเคล�อนท�ของกระดกซ�งเราสามารถกาหนดอาณาเขตการควบคมพ �นผวโมเดล

ของกระดกแตละช �นได

2) จดศนยรวมจาลอง (Dummy) เปนจดศนยกลางของกระดกท �งหมด ซ�งถาเราเล�อนตาแหนงของจดศนยรวมจาลอง โมเดลท�ถกกระดกควบคมอยจะเล�อนตามดวย

3) สวนเช�อมตอไอเค (IK Chain) เปนวตถท�ใชกบกระดกสวนท�เปนขอพบ

รปท� 2.27 การใชสวนเช�อมตอไอเค

4) คยเฟรม (Key frame) เปนการสรางแอนนเมชนใหตวละครโดยการ

กาหนดคยเฟรม ซ�งใน 3Ds Max จะมการสรางแอนนเมชนระหวางคยเฟรมท�กาหนดไวใหโดยอตโนมต

2.4 Client-Server สาหรบเกมออนไลน

2.4.1 เทคนคและวธการของเกมเนตเวรค

ในการเขยนเกมแบบ Multiplayer ท�สามารถเลนผานระบบเครอขายไดมอยหลายรปแบบ และหลายวธการเช�อมตอ ตวอยางของเกมท�เลนผานเนตเวรค

ไดมหลายเกมดวย เชน RedAlert, Age of Empire, Warcraft

และเกมอ�นๆ อกหลายเกมท�ไมไดกลาวถงกมความสามารถดานเนตเวรคดวยเชนกน

แหลงอางอง https://sites.google.com/site/adbandon/ng-�� !�-thekhnoloyi-sarsnthes-%/&-tawxyang-hawkhx-

khorng-ngan-khxmphiwtexr