แนวทางการเรียนรู้สำหรับผู้เริ่มต้นพัฒนาเกม (Game Development)
บทความที่จะแนะนำแนวทางและรวบรวมเนื้อหาที่เกี่ยวข้องในการเตรียมความพร้อม
สู่การเป็น Game Developer
รู้จักกับ Game Engine
Game Engine หมายถึง เครื่องมืออำนวยความสะดวกสำหรับการพัฒนาเกมในรูปแบบต่างๆ ช่วยให้กระบวนการพัฒนาเกมนั้นมีประสิทธิภาพมากยิ่งขึ้น
- มีระบบจัดการเกี่ยวกับกราฟิก ทั้ง 2 มิติและ 3 มิติ , เสียง รวมถึงการจัดการแสง , Effect ต่างๆภายในเกม
- มีระบบจัดการ Animation สำหรับจัดการการเคลื่อนไหว , การสร้างภาพต่อเนื่อง
- มีระบบฟิสิกส์สำหรับจัดการเกี่ยวกับการเคลื่อนที่ , แรง , การชน เป็นต้น
Game Engine ที่ได้รับความนิยมในปัจจุบัน
Unity
คือ Game Engine สำหรับการพัฒนาเกมในรูปแบบ 2 มิติและ 3 มิติที่สามารถทำงานข้าม Platform ได้ ทั้งรูปแบบ Desktop , Mobile และ Web โดยประกอบด้วย API สำหรับช่วยเหลือนักพัฒนาเกมในด้านการเขียน Script โดยภาษาโปรแกรมที่ใช้เขียนคือ ภาษา C#
หลักสูตรที่เกี่ยวข้อง
ข้อกำหนดหลักสูตร Unity เบื้องต้น : ผู้เรียนต้องมีพื้นฐานการเขียนโปรแกรมภาษา C# และ การเขียนโปรแกรมเชิงวัตถุด้วย C#
Visual Scripting
เป็นระบบที่ Unity พัฒนาขึ้นให้ผู้ที่ไม่มีความรู้เรื่องการเขียนโปรแกรม สามารถพัฒนาเกมได้ง่ายขึ้นโดยใช้วิธีการโยงกราฟ หรือ การต่อโหนด (Node) เข้าด้วยกันเพื่อให้ระบบเกมสามารถทำงานได้
หลักสูตรที่เกี่ยวข้อง
ข้อกำหนดหลักสูตร Visual Scripting : ผู้เรียนต้องมีพื้นฐานการใช้งาน Unity
Unreal Engine
คือ Game Engine สำหรับการพัฒนาเกมรองรับเกมในรูปแบบเกม Desktop , Mobile ,อื่นๆ มีเครื่องมือในการช่วยเหลือนักพัฒนาเกมด้านการเขียน Script โปรแกรม โดยภาษาโปรแกรมที่ใช้เขียนคือ ภาษา C++ หรือใช้ Visual Scripting (Blueprint) ผ่านการโยงกราฟหรือโยงระบบการทำงานของเกม
หลักสูตรที่เกี่ยวข้อง
ข้อกำหนดหลักสูตร Unreal Engine : ผู้เรียนต้องมีพื้นฐานการเขียนโปรแกรมภาษา C++
Godot
คือ Game Engine หรือ เครื่องมือสำหรับการพัฒนาเกมทั้งรูปแบบ 2 มิติและ 3 มิติซึ่งเราสามารถพัฒนาเกมให้ทำงานบน Desktop , Mobile และ Web ได้ การใช้งาน Godot Engine สามารถใช้งานได้ฟรีไม่เสียค่าใช้จ่าย (Open Source)
หลักสูตรที่เกี่ยวข้อง
หลักการทำงานของ Godot Engine
คือ การนำเอาส่วนที่เรียกว่า Node มาเชื่อมต่อเข้าด้วยกันในลักษณะของทรี (Tree Of Nodes) และจัดกลุ่มการทำงานของโหนดบนส่วนที่เรียกว่า Scene และส่งสัญญาณการทำงานของแต่ละ Node ผ่าน Signal
Pygame
คือ ไลบราลีสำหรับการพัฒนาเกม 2 มิติโดยใช้งานร่วมกับ ภาษาไพธอน (Python) เป็นอีกหนึ่งทางเลือกสำหรับนักพัฒนาเกมที่มีพื้นฐานการเขียนโปรแกรมภาษา Python และต้องการพัฒนาเกมโดยไม่พึ่งพา Game Engine
หลักสูตรที่เกี่ยวข้อง
ข้อกำหนดหลักสูตร Pygame : ผู้เรียนต้องมีพื้นฐานการเขียนโปรแกรมภาษา Python
JavaScript
ถ้าต้องการอยากพัฒนาเกม 2 มิติให้ทำงานบนเว็บได้ ภาษา JavaScript ก็เป็นอีกหนึ่งทางเลือกสำหรับนักพัฒนาเกมที่มีพื้นฐานการสร้างเว็บแอพพลิเคชั่น (HTML5 , CSS3 , JavaScript) และต้องการพัฒนาเกมโดยไม่พึ่งพา Game Engine
หลักสูตรที่เกี่ยวข้อง
ข้อกำหนดหลักสูตรสร้างเกมด้วย JavaScript : ผู้เรียนต้องมีพื้นฐาน HTML5 , CSS3 และการเขียนโปรแกรมภาษา JavaScript
Game Assets หมายถึง องค์ประกอบต่างๆที่นำมาใช้สำหรับการพัฒนาเกม เช่น ภาพกราฟิก (Sprite) , โมเดล (Model) , เสียง (Sound) , พื้นผิว (Texture) , สภาพแวดล้อม (Environment) , แอนิเมชั่น (Animation) , ฟอนต์ (Fonts) อื่นๆ เป็นต้น
แหล่งดาวน์โหลด Game Assets ฟรี
- https://free-game-assets.itch.io/
รวบรวมแหล่งเว็บไซต์และ Assets ฟรีแยกเป็นหมวดหมู่สำหรับการพัฒนาเกม - https://www.kenney.nl/assets
ดาวนโหลด Asset ทั้งภาพและเสียงประกอบเกม - https://www.gameart2d.com/freebies.html
ดาวนโหลด Asset ตัวละครและฉากประกอบสำหรับพัฒนาเกม 2D - https://opengameart.org/
แหล่งรวม Asset ขนาดใหญ่สำหรับพัฒนาเกมแบบ 2D และ 3D