PDA

مشاهده نسخه کامل : DirectX چیست ؟



K A S R A
08-04-08, 15:03
سلام به همه دوستان عزیز :love:

این تاپیک در حقیقت مقدمه ایه برای شروع برنامه نویسی گرافیکی Game Programing .

برای کسایی که سفت و سخت به Game Programing علاقه دارن ( یکیش خود من ) اولین قدم آشنایی با DirectX و ماهیت و اجزا اصلیش هست . هر چند که کار سختیه ولی جذابیت عجیبی داره .

DirectX چیست ؟

مجموعه ای از Interface های گرافیکی که در قالب فایل های DLL در ویندوز قرار گرفتن و توسط Microsoft ساخته شدن .

واسه اینکه بشه در برنامه نویسی از این Interface ها استفاده کرد , Microsoft در DirectX API امکان دسترسی به توابع DiredctX رو فراهم کرده .

Only the registered members can see the link

DirectX API چیست ؟

یه سری از توابع و کلاسها که به مااجازه میدن تا بتونیم از Interface های گرافیکی DirectX در برنامه های گرافیکی و Game ها استفاده کنیم .

وظیفه DirectX چیست ؟

فراهم کردن بستری مناسب برای تعامل سخت افزار و نرم افزارهای گرافیکی .
Interface های گرافیکی یا همون توابع Multimedia برای اینکه پردازش بشن به سخت افزار مناسبی احتیاج دارن . این سخت افزار به عنوان یک مفسر گرافیکی قابلیت اجرا و تفسیر این دستورات رو داره .

اما سخت افزار ها فقط میتونن دستورات پایه گرافیکی رو اجرا کنن . یعنی اینکه دستورات پیچیده تر باید ابتدا توسط DirectX به دنباله ای از دستورات پایه تبدیل بشن و در مرحله آخر برای اجرا میرن سراغه سخت افزار .

دستور پایه دستوریه که در یک Cycle CPU یا GPU یا هر پردازشگر دیگه ای اجرا بشه . مثه دستورات انتساب در زبانهای برنامه نویسی .
با توجه به معماری یک سخت افزار گرافیکی , مجموعه دستورات پایه استانداردی برای آن در نظر گرفته می شود .

اجزا DirectX :
مهمترین مولفه های DirectX :

1 - DirectDraw
2 - Direct3D
3 - DirectSound
4 - DirectSound3D
5 - DirectMusic
6 - DirectPlay
7 - DirectInput

ادامه دارد :11():

MoBiN.R
08-04-08, 20:21
مثله همیشه عالی بود ... ولی این DirectX یه کم سخته .. البته من توی C#.Net امتحانش نکردم .. اما توی VB6 میتونم سخته

K A S R A
09-04-08, 14:14
سلام :love:
زبان ++C به خاطر قدرت و انعطاف پذیری که داره , یک زبان ایده آل برای ساخت و طراحی Game هست .
بااستفاده از کتابخانه های DirectX و ++C میشه هر بازیی رو برای هر پلتفرم ساخت و تقریبا هیچ محدودیتی برای این کار وجود نداره .

ولی طراحی بازی به این سبک ( یعنی نوشتن Engine از اول ) کار فوق العاده سختیه , ولی اگه این آشنایی کوچیک با روش ساختن Game Engine رو کسی بدونه , دید خیلی بازتری نسبت به ساختن Game پیدا می کنه .

قبل از هر چیزی برای طراحی Game با DirectX باید DirectX SDK رو نصب کنیم . :great:

جدیدترین ورژن این ابزارو میشه از این آدرس Download کرد .

Only the registered members can see the link

بعد از نصب کردنش , تعداد زیادی Sample هست که میشه از اونا در حین کار استفاده کرد ...

ادامه دارد :11():

MoBiN.R
09-04-08, 19:07
کسری جان یه کم مراعات مارو بکن ... این DirectX 2008 حدود 442 مگابایته .. ما توی دانلود 50 مگ موندیم چه برسه به ....

K A S R A
09-04-08, 23:47
آره حجمش تقریبا بالاست ... اگه یه ADSL 128داشته باشی تقریبا سه ساعته دانلود می شه . اما اگه Dial Up داری که بیخیالش شو :great:

واجب شد تا یه توضیحی در مورد این SDK بدم .

DirectX SDK(Software Development Kit) چیست ؟

مجموعه ای از ابزارهای توسعه مورد نیاز یک بازی ساز Game Developerهست و
همه امکانات DirectX رو در قالب کتابخانه ها و سرفایل ها به زبانهای VB.NET , C# , C/C++ در اختیار برنامه نویس میذاره .

توی نصب کردن هم میشه به صورت Plugin توی VStudio.NET ازش استفاده کرد و هم به صورت یه نرم افزار مستقل .

مهمترین مولفه های DirectX SDK :

DirectX Header & Libraries
DirectX Sysem Component(runtime)
DirectX API Documentation
Sample Application & Source Code
Other Utilities…

از طریق این SDK میشه به تمامی امکانات و ابزار های DirectX دسترسی داشت . معمولا هر دو ماه یه بار هم Update میشه و شامل Sample ها و Source Code های بیشتر و جدیدتری هست .

مهمترین بخش این SDK کتابخانه D3DX هست .که یه Toolkit نرم افزاری هست
و به بازی ساز امکان میده که از قابلیت های سطح بالای DirectX در برنامه هاش به راحتی استفاده کنه .

همچنین شامل روتین های بهینه شده در سطح سخت افزاری (low-level) هست که میشه از اونا در سایر پلتفرم ها استفاده کرد .