110 likes | 219 Views
การเขียนโปรแกรมบนวินโดว์ด้วยภาษาซี (เริ่มต้นเขียนเกมอย่างง่าย). รศ . ธีรวัฒน์ ประกอบผล คณะวิทยาศาสตร์ สถาบันเทคโนโลยีพระจอมเกล้าเจ้าคุณทหารลาดกระบัง. เครื่องมือช่วยในการเขียนเกม. DirectX http://www.microsoft.com/directX CDX Engine http://cdxlib.com.
E N D
การเขียนโปรแกรมบนวินโดว์ด้วยภาษาซี(เริ่มต้นเขียนเกมอย่างง่าย)การเขียนโปรแกรมบนวินโดว์ด้วยภาษาซี(เริ่มต้นเขียนเกมอย่างง่าย) • รศ.ธีรวัฒน์ ประกอบผล • คณะวิทยาศาสตร์ • สถาบันเทคโนโลยีพระจอมเกล้าเจ้าคุณทหารลาดกระบัง
เครื่องมือช่วยในการเขียนเกม DirectX http://www.microsoft.com/directX CDX Engine http://cdxlib.com
DirectX SDK(DirectX Software Development Kit) เป็นชุดคำสั่งที่ออกแบบมาสำหรับใช้กับตัวแปรภาษาหลาย ๆ ตัว ประกอบด้วย DirectX Graphics ประกอบด้วย DirectDraw และ Direct3D DirectX Audio ประกอบด้วย DirectSound และ DirectMusic DirectInput ใช้รับข้อมูลอินพุต DirectPlay ใช้เล่นเกมบนเน็ตเวอร์ DirectShow ใช้แสดงมัลติมีเดีย DirectSetup ใช้ Setup
รหัสโปรแกรมที่ถูกสร้างขึ้น 1. เข้าสู่ DirectX cdx_Init() จองหน่วยความจำสำหรับการเขียนเกม 2. ประมวลผลเกม (Process) cdx_DoFrame() เป็นฟังก์ชันที่ใช้ในการแสดงภาพและเสียง 3. ออกจาก DirectX cdx_DeInit() คืนหน่วยความจำของออปเจ็กต่าง ๆ ของเกม
การสร้างฉากและตัวละครการสร้างฉากและตัวละคร 1. ประกาศตัวแปรและสร้างออบเจ็กต์ของภาพ 2. แสดงภาพ 3. ลบออบเจ็กต์ของภาพ
1. ประกาศออบเจ็กต์ CDXSprite *BackGround = 0; 2. สร้างออบเจ็กต์ (cdx_Init()) BackGround = new CDXSprite(Screen,”ชื่อไฟล์”,640,480,1, CDXMEM_VIDTHENSYS) BackGround->SetColorKey();
3. แสดงภาพบนหน้าจอ (cdx_DoFrame) BackGround -> Draw(Screen->GetBack(),0,0,0); 4. การลบออบเจ็กต์ (cdx_DeInit) SAFEDELETE(BackGround);
การแสดงตัวละคร 1. ประกาศตัวแปร CDXSprite *Twat 2. การสร้างออบเจ็กต์ (cdx_Init()) Twat = new CDXSprite(Screen,”ชื่อไฟล์”,100,200,1, CDXMEM_VIDTHENSYS); Twat -> SetColorKey(); Twat -> SetPos(300,250);
3. แสดงภาพบนหน้าจอ (cdx_DoFrame) Twat -> Draw(Screen->GetBack(),0,0,CDXBLT_TRANS); 4. การลบออบเจ็กต์ (cdx_DeInit) SAFEDELETE(Twat);
การแสดงเสียง Background 1. ประกาศตัวแปร #include <CDXMidi.h> CDXMidi *MIDI = 0; int song1; 2. การสร้างออบเจ็กต์ (cdx_Init()) MIDI = new CDXMidi(); MIDI -> Init(g_hWnd,NULL); song1 = MIDI -> LoadMidi(“ชื่อไฟล์.mid”);
3. แสดงเสียง (cdx_Init()) MIDI -> Play(song1); 4. การลบออบเจ็กต์ (cdx_DeInit) SAFEDELETE(MIDI);