.NET Logo
Welcome Guest Search | Active Topics | Members | Log In | Register

XNA คืออะไรหรอ??? Options · View
whiteline
Posted: Monday, December 03, 2007 12:50:00 AM
Rank: มือพระกาฬ
Groups: Member

Joined: 12/3/2007
Posts: 12
Location: Silpakorn
หลายๆคนอาจจะงงๆว่าตกลงมันคืออะไรกันแน่ ยิ่งคนที่ไม่มีพื้นฐานเลยเนี่ย อาจเกิดอาการงงเป็นไก่ตาแตกเลยว่า อะไรคือ framework??? อะไรคือ pipeline ถ้าถามผม คำถามเหล่านี้ ผมก็ตอบไมได้เหมือนกัน (เอ๊ะ ยังไง) จะขออธิบายเปนแบบที่ประมวลผลแล้วแล้วกันนะครับ สำหรับผู้ที่ เป็น "ผู้เริ่มต้นจริงๆ"

การสร้างเกมคอมพิวเตอเค้าทำกันยังไง
ก่อนจะมาทำความเข้าใจว่าXNAมันคืออะไร เราไปทำความเข้าใจกับการเขียนเกมบนวินโดว์กันก่อน
เกมที่หลายๆคนเล่นกันนั้น ไม่ว่าจะเป็นแบบ 2 มิติ หรือ 3 มิติ เช่น Prince of persia , Comand conquer , Dota , Ragnarok เกมต่างๆเหล่านี้ ถูกสร้างด้วยมาตราฐานตัวนึงของไมโครซอฟ นั่นก็คือ Directx sdk นั่นเอง อ๊ะๆ อย่าสับสนกับ Directx เฉยๆนะครับ เพราะมันมี Sdk ต่อท้าย เหมือนเพื่อนผมคนนึงทื่มันอยากจะสร้างเกม แล้วดันดาวโหลด directx 9.0 c มาเฉย สำหรับคนที่จะเริ่มต้น ระวังข้อผิดพลาดตรงนี้ด้วยนะครับ แล้ว Directx sdk คืออะไรล่ะ มันก็คือกลุ่มคำสั่งที่ใช้เขียนควบคุมฮาดแวให้แสดงผล หรือรับค่าต่างๆจากผู้ใช้ให้ง่ายขึ้นนั่นเอง อทิบายง่ายๆคือ หากเราไม่ใช้ Directx เราก็ต้องสั่งงานฮาดแวให้แสดงผลโดยตรง ซึ่งเป็นการยุ่งยากมาก หลายๆคนอาจจะเคยเห็นหนังสือเช่น "การเขียนเกมด้วย Delphi" หรือการเขียนเกมด้วยโปรแกรมอื่นๆ นั่นเป้นการสั่งงานฮาดแวโดยตรงเลย แต่มาตราฐานของDirectx ที่ถูกลงไว้ในวินโดว์เกือบทุกเครื่อง ทำให้ทั้งผู้เล่น และผู้ผลิต ไม่ยุ่งยากในการแยกมาตราฐานนั่นเองครับ สำหรับคนที่สนใจ Directx สามารถหาE-bookได้ตาม internet (text book) หรือในไทยเองก็เห็นในท้องตลาดอยู่ 2- 3 เล่ม (แต่ผมไม่ค่อยแนะนำเท่าไหร่นะครับ เพราะว่ามีเฉพาะเรื่องของสองมิติ แล้วก็ยังเขียนแบบเอาไปประยุกต์เองไมได้เต็มที่ พูดง่ายๆคืออ่านแล้วงงนั่นเอง) อ้อ ส่วนพวกหนังสือที่เขียนประมาณว่า สร้างเกมด้วย gamemaker หรือ Rpg maker ก็เป็นการสร้างเกมได้นะครับ แต่ก็เป็นเกมง่ายๆ และไม่มีความหลากหลาย คือเกมมันก็จะมีระบบและหน้าตาเหมือนๆกันหมด แตกต่างกันที่กหราฟฟิค แนะนำให้อ่านเพื่อดูแนวคิดเท่านั้นนะครับ แต่หากต้องการจะพัฒนาในสิ่งที่เป็นของคุณ จริงๆ มาศึกษาDirectx และ XNA กันดีกว่าครับ ถึงไหนแล้วเนี่ย อ้อ เมื่อเราสามารถใช้ชุดคำสั่งสั่งงานให้แสดงผลได้ง่ายขึ้นแล้ว ก็จริง แต่ก็มีหลายๆคนที่คิดว่ามันยังยากเกินไปอยู่ จึงมีส่วนที่สองตามมา นั่นก็คือ Game engine นั่นเอง

อะไรคือGame engine
พูดให้ง่ายๆเลย เกมเอนจิ้นก็คือกลุ่มคำสั่งที่เขียนครอบDirectx อีกที เพื่อให้การสั่งงานDirectx ง่ายยิ่งขึ้น โดยที่เกมเอนจิ้นมีทั้งฟรี คอมเมอเชียล หรือต้องเปิดเผยสิ่งที่คุณทำเสร็จเมื่อผลงานออกมา(open source) ซึ่งประสิทธิภาพก็ขึ้นอยู่กับราคานั่นเองครับ ยกตัวอย่างเช่น Ogre engine ( www.ogre3d.org) ที่เป็น Engine ที่ไม่คืดเงิน หรือแม้กระทั่ง Unreal3 ที่ราคาเป็นหลัก 10 ล้าน (ใช้ทำเกม lineage2) ก้หามาดูตามกำลังทรัพย์นะครับ ส่วนผม ขอใช้ของฟรีก่อนดีกว่า อิอิ

แล้วไอ้Directx sdk หรือ Game engine เนี่ย มันใช้งานยังไง
ตัวไดเรคเอ็กเองเนี่ย อ้างอิงภาษา c++ (สมัยเด็กๆผมอยากเขียนเกม ก็ไปยืมหนังสือเชขียนโปรแกรมด้วย Visual basic มาอ่าน ด้วยความที่ไม่รู้ว่ามันไม่เหมือนกัน -_-")ซึ่งในไทย คอมไพเลอที่นิยมใช้กันก็คือ visual studio จะเป็น 2003 หรือ 2005 ก็ได้ แต่ว่าเกมเอนจิ้นเนี่ย ขึ้นอยู่กับทางผู้ผลิตว่า จะใช้ภาษาอะไรในการเขียน อาจจะเป็น ภาษา c# ภาษา python หรือแม้กระทั่ง java ก็มีเอนจิ้นที่รองรับ ใครถนัดภาษาไหนก็ลองหาเอนจิ้นสำหรับภาษานั้นๆมาลองดูนะครับ

แล้ว Xna คืออะไร
เกริ่นมาซะยืดยาว แล้ว XNA คืออะไร
เอาตามคววามคิดง่ายๆเลยก็คือ มันก็คือ Directx สำหรับ XBox360 นั่นเอง เพียงแต่ว่า จะต้องควบคุมด้วยภาษา C# นั่นเอง (อนาคต c# ดูจะสดใสนะครับ ดว้ยความที่มันง่ายกว่า c++ แล้วดูเหมือนจะกลายมาเป็นมตราฐานใหม่สำหรับการพัฒนาเกมในยุคปัจุบันแล้ว) อ้อ และ คอมไพเลอที่แนะนำก็คือ โปรแกรม microsoft visual c# express edition ซึ่งสามารถโหลดมาใช้วงานได้ฟรีๆเลยนะครับ โดยที่ Xna สามารถที่จะทำงานได้ทั้งการพัฒนาเกมบน Xbox360 และ วินโดสด้วย (แต่ผมว่า ห่ากอยากพัฒนาเกมสำหรับเครื่องพีซีเนี่ย ไปใช้เอนจิ้นเฉพาะของpcน่าจะง่ายกว่านะครับ อันนี้ความเห็นส่วนตัว) อนาคตของ Xbox360 ตอนนี้ดูจะสดใสมาก หลังจากความล้มเหลวของ ps 3 และเกมแม่เหล็กที่ข้ามแพลตฟอมมาลงXbox360 กันหลายเกมมาก ทำให้ตอนนี้ XNA กำลังเติมโตและขยายตัวอย่างรวดเร็ว เพราะฉะนั้น เรามาเริ่มศึกษาXNA กันดีกว่าครับด้วยสโลแกนที่ว่า
ว่า...... ว่า.....ลืมครับ ประมาว่า คุนฝันมัน ร้างมัน และคนเป็นล้านก็จะเล่นมันในอนาคต (วอนคนรู้มาตอบทีนะครับ) เอาล่ะสำหรับวันนี้เราทำความรู้จักกันเท่านี้ก่อน หากใครมีข้อสงสัย pm มาได้นะครับ

ป.ล.
ถ้าหากอยากจะเริ่มศักษาXNA ต้องมีเครื่องมืออะไรบ้าง
1. microsoft visual c# 2005 express edition
2. directx sdk ตัวล่าสุด(หาโหลดได้ที่เว็บไมโครซอฟนะครับย)
3. Xna game studio express (ซึ่งตอนนี้เป็นเวอชั่น 1.0อยู่นะครับ)

มี 3 ตัวนี้ คุณก็เริ่พัฒนาเกมบน Xbox 360 ได้แล้วครับ ^_^
ส่วน Xna starter kit นั้น จะมีหรือไม่มีก็ได้ครับย เพราะเป้นเกมตัวอย่างสำเร็จที่ทำให้ดูเท่านั้นเอง
มีข้แอผิดพลาดยังไงขออภัยมา ณ ที่นี้ด้วยครับ ^^
poramate
Posted: Thursday, December 06, 2007 10:29:46 AM
Rank: มือฝึกหัด
Groups: Member

Joined: 12/2/2007
Posts: 5
Location: Thailand
ใช้ visual studio 2008 Express Edition ได้หรือเปล่าครับ
whiteline
Posted: Thursday, December 06, 2007 11:28:31 PM
Rank: มือพระกาฬ
Groups: Member

Joined: 12/3/2007
Posts: 12
Location: Silpakorn
รู้สึกจะไม่ได้นะครับ แต่ xna 2.0 จะสามารถใช้ได้กับ vs 2005 ทุกตัวครับ
ball
Posted: Friday, December 07, 2007 2:47:25 AM

Rank: อาจารย์
Groups: Administration

Joined: 12/1/2007
Posts: 462
Location: Bangkok
Quote:
The XNA Game Studio Setup program will install only for a Visual Studio 2005 product that has been updated with Service Pack 1 for Visual Studio 2005.


Quote:
XNA Game Studio is not supported on any member of the Microsoft Visual Studio 2008 product line or any pre-released version of Microsoft Visual Studio 2008.


ที่มา: XNA.com

Imagination is more Important than Knowledge... /A.Einstein
Users browsing this topic
Guest


Forum Jump
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.

Main Forum RSS : RSS

YAFVision Theme Created by Jaben Cargman (Tiny Gecko)
Powered by Yet Another Forum.net version 1.9.1.8 (NET v2.0) - 3/29/2008
Copyright © 2003-2008 Yet Another Forum.net. All rights reserved.


Sponsored by