• หน้าแรก
  • บทความเกี่ยวกับการช๊อปปิ้ง
  • คลิปวิดีโอ
  • ทีวีออนไลน์
  • รวมเกม เกมส์มากมาย
  • แบ่งปันความรู้
  • สารบัญเว็บไซต์
  • โลกใบเล็กของเราทุกคน
  • คุยสด แชท เว็บบอร์ด
  • ติดต่อเรา

Darkbasic Tutorials

Game Interface with DarkBasic Pro ตอนที่2 ( 27 มิถุนายน 2553 )


Code ในส่วนของการแสดงผล interface

 

1 เริ่มจากการแบ่งพื้นที่ส่วนของการเขียน code ดังนี้

 

Game Interface Design

 

คำสั่ง rem คือการเขียนคอมเม้น ซึ่งตัวโปรแกรมจะไม่อ่านข้อความที่อยู่ด้านหลังของคำสั่งนี้ตลอดบรรทัด
Setting : คือส่วนที่เราตั้งค่าต่างๆของตัวเกม
Object Number : เลขประจำตัวของ Object
Image Number : เลขประจำตัวของ Image, Sprite (เลขของ Image และ Sprite จะแยกกันคือซ้ำกันได้นั่นเอง)
Sound Number : เลขประจำตัวของ Sound, Music (เลขของ Sound และ Music จะแยกกันคือซ้ำกันได้นั่นเอง)
Value : ส่วนของการตั้งค่าเริ่มต้นให้กับตัวแปรต่างๆ
Load Resource : ส่วนของการโหลด ทุกๆสิ่งต้องถูกโหลดก่อนการใช้งาน
Main Loop : การทำงานหลักซึ่งโปรแกรมจะเรียกใช้ตลอด
Procedure : การทำงานที่ต้องถูกเรียกใช้จากโดยคำสั่ง gosub หรือ goto ก่อนถึงจะทำงาน (ซึ่งอาจเป็นลูปย่อยที่ใช้เฉพาะงาน)
Function : ส่วนของฟังชั่น

 

2 ส่วน Setting

เมื่อเรากดที่คำสั่ง Setting ที่อยู่ด้านขวาล่างของโปรแกรม จะมีให้เลือกการแสดงผลหน้าต่างของโปรแกรมขึ้นมาทางด้านขวามือ

 

Game Interface Design

 

ในส่วนของพื้นที่ Code เบื้องต้นเป็นดังนี้


Make Memblock เป็นการจองพื้นที่ Memory ไว้ให้ตัวโปรแกรม
Set Text Size กำหนดขนาดของตัวอักษร
Set Text Font กำหนด Font ที่ต้องการใช้
Set Text To Bold กำหนดให้ตัวอักษรเป็นแบบหนา

 

*** หากเรานำ Curcer ไปไว้ด้านหลัง Code คำสั่งใดๆ และกด F1 ตัวโปรแกรมจะแสดงคู่มือ อธิบายคำสั่งนั้นๆ

 

3 ใส่ Number และ Load

เป็นขั้นตอนที่สำคัญ และเป็น error ของ โปรแกรมที่พบบ่อยมาก คือ การลืมใส่เลขกำกับสิ่งที่เราต้องการ Load มาใช้ในตัวเกม การโหลดจะเห็นได้ว่า เราสามารถโหลดภาพโดยคำสั่ง Load image ซึ่งนอกจากการโหลด image แล้ว ยังมีการโหลด object , sound , music และอื่นๆอีกด้วย

 

Game Interface Design

 


สำหรับการโหลด image นั้น เราต้องวางกรอบของรูป ( sprite ) ให้กับรูปที่เราโหลดไว้ โดยคำสั่ง sprite ซึ่งกรอบของรูปนี้ จะถูกนำไปใช้ สำหรับการเช็คการชนระหว่าง sprite กับ sprite เมื่อทำการโหลดทั้งหมดแล้ว ใช้คำสั่ง Hide all sprites เพื่อซ่อนสิ่งที่เราโหลดไว้ก่อนที่จะเรียกใช้งานในลำดับต่อไป

 

4 เข้าสู่ Main Loop

ในส่วนของ Main Loop เราจะเริ่มต้นด้วย Do จบลงด้วย Loop เป็นการทำงานจากด้านบนเรียงลงด้านล่างและเมื่อจบบรรทัดสุดท้ายก็จะกระโดด กลับขึ้นไปทำงานด้านบนใหม่อีกครั้ง วนซ้ำไปอยู่แบบนี้

 

Game Interface Design

 

คำสั่ง Gosub เป็นการสั่งให้โปรแกรมกระโดดไปเรียกใช้ Code ในส่วนของ Procedure ที่เราแยกไว้ ซึ่งประโยชน์คือทำให้ Code ภายใน Main Loop ไม่รกตาและยังง่ายต่อการแก้ไข หรือนำมาใช้เพื่อแบ่งย่อยการทำงานเป็นกลุ่มต่างๆ

 

คำสั่ง Text เป็นการแสดงผลตัวอักษร พิกัด X , พิกัด Y , ค่าที่ต้องการแสดง

ข้อความที่เราต้องการแสดงจะต้องเขียนอยู่ระหว่างเครื่องหมาย "..." หรือ เก็บไว้ในรูปตัวแปรแบบข้อความ ( ตัวแปร Str$ ) และใช้เครื่องหมาย + เป็นตัวเชื่อมกรณีมีข้อความหลายๆข้อความ


Str$( ) เป็นคำสั่งที่ทำให้ข้อมูลที่ส่งเข้ามากลายเป็นข้อมูลชนิดข้อความ


mousex( ) คือพิกัดของเมาส์ในแกน X เมื่อนำมาใส่ไว้ใน Str$ ( ) ค่าที่ถูกส่งออกมาจะเป็นข้อมูลชนิดข้อความ


ScanCode( ) คือคำสั่งที่รับค่าตัวเลขของแป้นพิมพ์ที่เราทำการกดใช้ เช่น ปุ่ม Esc มีค่า ScanCode ( ) = 1


MouseClick( ) คือคำสั่งที่ส่งค่าตัวเลขของการกดเมาส์แบบต่างๆ หากไม่มีการคลิ๊กจะมีค่าเป็น 0


ในส่วน Procedure นั้นทุกๆอันจะอยู่ในรูป

Procedure Name:
...
...
return

 

โดยคำสั่ง return จะเป็นการกระโดดกลับไปยังจุดที่มีการเรียกใช้ Procedure นี้

คำสั่ง Paste Sprite คือการแสดง Sprite ออกมา โดยต้องบอกพิกัด X,Y ซึ่งอาจจะไม่ต้องตรงกับพิกัดที่เราทำไว้ในขั้น Load ก็ได้ แต่หากเราเขียนเลขพิกัดไม่ตรงกับที่เรากำหนดไว้ในตอนแรก จะมีปัญหาเมื่อเราต้องการจะเช็คการชนของ Sprite มัน จะไปเช็คกับพิกัดที่เราตั้งไว้ในขั้น Load

จากนั้นให้กด F5 เพื่อเป็นการสร้างไฟล์ exe และ run โปรแกรม หากไม่มีการติด error ใดๆ

 

Game Interface Design

 

กด Esc เมื่อต้องการออกจากหน้าจอโปรแกรม

Tag :: game interface design
เข้าชมแล้ว :: 2280 ครั้ง | กลับหน้าหลัก