بسته برنامه نویسی و توسعه بازی
اگر تا چندی پیش توسعه بازی یکی از حوزه های
انحصاری و دشوار برنامه نویسی به شمار می رفت، امروزه با ارائه شدن
کتابخانه ها و ابزارهای ساده امکان یادگیری برنامه نویسی بازی برای هر فرد
علاقمند فراهم شده است. در این راستا بسته برنامه نویسی بازی با جمع بندی
تکنولوژی های موجود و ارائه بیش از سی کتاب آموزشی گامی موثر به سمت
علاقمندان این حوزه برداشته است.
بسته برنامه نویسی و توسعه بازی
از سه بخش زیر تشکیل شده است:
- Microsoft DirectX
- Microsoft XNA
- E-Books
در ادامه به معرفی مختصر هر بخش می پردازیم.
DirectX چیست؟
Microsoft
DirectX مجموعه اي از رابط هاي برنامه نویسی کاربردي (Application
Programming Interfaces (API است که براي اداره كردن وظايف مربوط به برنامه
هاي چند رسانه اي، به ويژه برنامه ريزي بازي و ويدئو، در پايگاه مايکروسافت
ارائه شده است. در اصل، نام های موجود در این مجموعه تماما با Direct شروع
مي شوند، از قبيل Direct3D DirectDraw،
DirectMusic، DirectPlayو
DirectSound که کاراکتر
X جایگزینی برای هر بخش به شمار می رود. پس از معرفي Xbox، شرکت
مايکرسافت رابط هاي برنامه نویسی کاربردي براي طراحي بازي چند پايگاهي را
که براي مکمل کردن و يا جايگزين کردن اجزای منفرد DirectX طراحي شده اند، منتشر کرد که از جمله آن ها می توان
XInput را نام برد.
Direct3D (API
گرافيک سه بعدي ارائه شده توسط DirectX) در گسترش بازي هاي
کامپيوتري براي ويندوز مايکروسافت، Xbox مايکروسافت و Xbox 360 مايکروسافت
استفاده مي شود. علاوه بر این Direct3D در پیاده سازی وظایف گرافیکی و
تصویری توسط ديگر نرم افزارهاي کاربردي مورد استفاده قرار می گیرد که در
این میان می توان برنامه های بخش مهندسی براي CAD/CAM را نام برد.
تاريخچه
اواخر سال 1994 شرکت مایکروسافت در آستانه
انتشار سیستم عامل جدید خود Windows 95 قرار داشت. در آن زمان ارزیابی
کارشناسان نشان می داد که گرایش طراحان و برنامه نویسان بازی به سمت سیستم
عامل جدید ممکن است با مشکل بزرگی مواجه شود. دلیل این امر این بود که
سیستم عامل قبلی شرکت مایکروسافت یعنی MS-DOS اجازه دسترسي مستقيم به كارت
ويدئو، صفحه کليد، موس، وسايل صدا و ديگر قسمت هاي سيستم را مي داد. در حالي که Windows 95، با نمونه حافظه حفاظت
شده اش، دستيابي به سخت افزار را محدود مي کرد. ازین رو مایکروسافت نیازمند
راه حلی سریع برای رفع این محدودیت
بود تا موانع موجود را از سر راه توسعه دهندگان و برنامه نویسان بازی
بردارد. در آن زمان سه نفر از اعضای شرکت مایکروسافت Craig Eisler،Alex St.
John
و
Eric Engstrom با همکاری یکدیگر و
پس از چند ماه کار راه حل این مشکل را ارائه کردند. این راه حل و حاصل کار
DirextX بود.
اجزاء تشکيل دهنده DirectX
DirectDraw: براي کشيدن تصاوير دو بعدي به کار می رود که هنوز در تعدادي از بازي ها مورد
استفاده قرار می گیرد.
(Direct3D (D3D: کشيدن تصاوير سه بعدي را امکان پذیر می سازد.
DXGI: براي شمارش آداپتورها و نظارت و مديريت
زنجيره هاي مبادله اي در Direct3D 10 و بالاتر استفاده می شود.
DirectInput: براي واسطه قرار دادن سخت افزار
ورودي شامل صفحه کليد، موس، دسته هاي بازي و ديگر کنترل گرهاي بازي به کار
می رود.
DirectPlay: براي برقراري ارتباط در يك شبكه
محلي يا گسترده استفاده می شود.
DirectSound: براي پخش و ركورد كردن صداهاي
موجي شكل به کار می رود.
DirectSound3D: براي پخش صداهاي سه بعدي مورد
استفاده قرار می گیرد.
DirectMusic: براي پخش آرم هاي برنامه ساخته
شده در DirectMusic Producer به کار می رود.
DirectX Media: شامل DirectAnimation براي فيلم
هاي انيميشن دو بعدي شبكه، DirectShow
براي پخش صوت، تصوير، فيلم و صداي زنده بر روي مرورگر (streaming media)،
DirectX Transform براي برنامه هاي دو سويه شبکه (بين برنامه و کاربر) و
Direct3D Retained Mode براي گرافيک هاي سه بعدي سطح بالاتر. DirectShow
داراي DirectX plugins براي پردازش سيگنال صوتي مي باشد و DirectX Video
Acceleration براي پخش ويدئو شتاب داده شده مورد استفاده قرار می گیرد.
DirectShow:
از تاريخ آوریل 2005
DirectShow
به عنوان بخش مستقل و جدا از
DirectX معرفی شد. اين بخش در
SDK
موجود مي باشد.
SDK) Software Development Kit): برنامه اي است
که برنامه نويسان از آن براي ساخت پروژه هايشان استفاده مي کنند.
DirectX Media Objects: پشتيباني آبجکت های
جرياني مثل رمزگذارها، رمزگشاها و جلوه ها را به عهده دارد.
DirectSetup: براي نصب اجزاء DirectX مورد
استفاده قرار می گیرد.
DirectX 10
آخرین نسخه ارائه شده از DirextX، نسخه 10 آن
می باشد که همراه ویندوز ویستا ارائه شده است. نسخه هاي قبلي ويندوز قادر
به اجراي برنامه هاي انحصاري DirectX 10 نيستند. تغييرات عمده ای در
DirectX 10 دیده می شوند. ازجمله آن ها اینکه
DPLAY.DLL در
DirectPlay
حذف و dplayx.dll جایگزین آن شده است. بازي هاي که بر اين فايل تکيه مي
کنند باید نسخه ای از آن را به dplay.dll تغيير نام دهند.
محتوای
بسته
بسته ارائه شده شامل آخرین نسخه های ارائه شده توسط مایکروسافت می باشد:
-
DirectX End-User Runtimes (June 2008) (
^ )
-
DirectX Software Development Kit (
^ )
کتاب
های زیر برای مطالعه و یادگیری بیشتر ارائه شده اند.
.png)
XNA Framework چیست؟.png)
XNA Framework بر پایه دات نت فریم ورک 2.0
ارائه شد و هدف از طراحی آن ارائه دادن مجموعه کتابخانه ها و کلاس های
توسیعی بود که توسعه دهندگان بازی بتوانند با کمترین مقدار کدنویسی و اجرای
کد در محیطی مدیریت شده، از پلتفرم های مختلف حداکثر استفاده را ببرند.
کدهای نوشته شده بر پایه XNA Framework مانند کدهای دات نت فریم ورک در
محیطCommon Language Runtime اجرا می شوند. از این رو بازی های ایجاد شده
قابل اجرا بر روی پلتفرم ویندوز XP، ویستا و پلتفرم Xbox 360 مایکروسافت می
باشند.
XNA Framework
مجموعه ای از تکنولوژی های سطح پایین را بسته بندی کرده و به این ترتیب
تضمین می کند که فریم ورک خود مسئول هماهنگ کردن تغییرات بین پلتفرم های
مختلف هنگام جابجا شدن بازی از یک پلتفرم به پلتفرم دیگر خواهد بود و این
امر به توسعه دهندگان کمک می کند به جای درگیر شدن با جزئیات پلتفرم، بیشتر
به محتوا و طراحی بازی خود توجه داشته باشند. این فریم ورک به همراه
ابزارهای کمکی از قبیل
XACT ارائه شده است که به برنامه نویسان اجازه
می دهد ویژوال، صدا و مدل کاراکتری را به بازی های خود اضافه کنند.
برای توسعه بازی ها تحت XNA Framework از زبان برنامه نویسی
#C استفاده می شود.برای توسعه بازی ها تحت XNA Framework از زبان برنامه نویسی
#C استفاده می شود.
XNA مخفف چیست؟
کاراکتر X در این عبارت نشان می دهد که فریم
ورک مذکور ابتکاری بین پلتفرم های مهم شرکت مایکروسافت یعنی DirectX و Xbox
می باشد. کاراکتر N برای Next-Generation در نظر گرفته شده است چرا که
توسعه دهندگان این فریم ورک معتقدند که نرم افزار در نسل بعدی بازی ها
بیشتر از سخت افزار ایفای نقش خواهد کرد. و در نهایت کاراکتر A معرف کلمه
Architecture می باشد. فلسفه حضور
این کلمه در نام فریم ورک مذکور ادغام ابزارهای مختلفی است که در اختیار
توسعه دهندگان بازی قرار می گیرند تا بازی های خود را ایجاد کنند.
XNA Game Studio چیست؟
XNA Game Studio محیط توسعه مجتمع برای برنامه
نویسی بازی می باشد که بر پایه Visual Studio 2005 Team System طراحی شده
است. XNA Game Studio ساختارهای لازم برای همکاری بین ایجاد کنندگان محتوای
بازی، برنامه نویسان، مدیران و تست کنندگان بازی را فراهم می کند. وظایف
مدیریت پروژه زیر توسط XNA Game Studio ارائه می شوند:
-
asset management
-
defect tracking
-
project automation
-
work item lists
محتوای بسته
XNA Game Studio
نسخه 2.0
برای ویژوال استودیو 2005 به صورت
نهایی ارائه شده است. نسخه XNA Game Studio 3.0 که برای ویژوال استودیو
2008 طراحی شده است به صورت CTP توسط مایکروسافت ارائه شده است. هر دو
محصول در بسته برنامه نویسی ارائه شده اند:
-
XNA Game Studio 2.0
(
^ )
-
Visual Studio Service Pack 1
(برای نصب
XNA Game Studio 2.0 ضروری است) (
^ )
-
XNA Game Studio 3.0 CTP
(
^ )
کتاب
های زیر به عنوان مکمل آموزشی ارائه شده اند:
.png)
E-Books
بسته
ارائه شده شامل بیش از سی عنوان E-book در زمینه برنامه نویسی بازی می
باشد. در این میان موضوعات مختلفی گردآوری شده اند. یکی از موضوعات، زبان
های برنامه نویسی در زمینه توسعه بازی می باشد و کتاب های زیر در این راستا
ارائه شده اند:
.png)
موضوعات مهندسی برنامه نویسی، طراحی و تست بازی از جمله مباحث دیگر در کتاب
های گردآوری شده می باشند.
قیمت و نحوه سفارش بسته
قیمت بسته به همراه هزینه ارسال آن
120000
ریال می باشد. برای سفارش آن و کسب اطلاعات بیشتر، نامه الکترونیکی با
عنوان Game Programmnig Pack
به پست الکترونیکی
a.hosnaddinov@gmail.com ارسال نموده و یا با شماره تلفن
2753819-0912 تماس بگیرید.