DirectX چیست؟ چگونه کار می کند؟ نسخه ها، تاریخچه، عیب یابی

بازی‌ها و برنامه‌های چندرسانه‌ای برخی از رضایت‌بخش‌ترین برنامه‌هایی هستند که می‌توانید برای رایانه شخصی خود دریافت کنید، اما اجرای صحیح آنها همیشه آنطور که می‌توانست آسان نیست. اول(First) ، معماری رایانه شخصی هرگز به عنوان یک پلتفرم بازی طراحی نشد. دوم(Second) ، طبیعت گسترده رایانه شخصی به این معنی است که دستگاه یک شخص می تواند با دیگری متفاوت باشد. در حالی که کنسول‌های بازی همگی دارای سخت‌افزار مشابهی هستند، طیف وسیعی از تفاوت‌ها می‌تواند باعث دردسر بازی شود.

ویژگی ها، ابزارها و حداقل الزامات DirectX 12 Ultimate

برای کاهش درد هر چه بیشتر، مایکروسافت(Microsoft) نیاز به معرفی استاندارد مشترکی داشت که همه بازی‌ها و برنامه‌های چندرسانه‌ای بتوانند از آن پیروی کنند - یک رابط مشترک بین سیستم‌عامل و هر سخت‌افزاری که در صورت تمایل روی رایانه شخصی نصب شده است. این رابط مشترک DirectX است ، چیزی که می تواند منبع سردرگمی زیادی باشد.

DirectX 12 چیست؟

DirectX رابطی است که برای آسان کردن برخی از وظایف برنامه نویسی برای توسعه دهنده بازی و بقیه ما که می خواهیم بنشینیم و آخرین بلاک باستر را بازی کنیم، طراحی شده است.

تاریخچه DirectX

هر بازی باید وظایف خاصی را بارها و بارها انجام دهد. باید از طریق ماوس، جوی استیک یا صفحه کلید ورودی شما را تماشا کند و باید بتواند تصاویر صفحه نمایش را نمایش دهد و صداها یا موسیقی را پخش کند. این تقریباً هر بازی در ساده ترین سطح است.

اساساً، برنامه نویسان بازی مستقیماً با سخت افزار رایانه شخصی شما در سطح اساسی صحبت می کردند. هنگامی که مایکروسافت (Microsoft)ویندوز(Windows) را معرفی کرد ، برای ثبات و موفقیت پلتفرم رایانه شخصی ضروری بود که همه چیز برای توسعه دهنده و پخش کننده آسان تر شود. به هر حال، چه کسی زحمت نوشتن بازی برای یک ماشین را به زحمت می‌اندازد، وقتی که مجبور بود هر بار که کار روی یک بازی جدید شروع می‌کرد، چرخ را دوباره اختراع کند؟ ایده مایکروسافت(Microsoft) ساده بود: برنامه نویسان را مستقیماً با سخت افزار صحبت نکنند و یک جعبه ابزار مشترک بسازند که به جای آن بتوانند از آن استفاده کنند. DirectX متولد شد.

DirectX چگونه کار می کند؟

در ابتدایی‌ترین سطح، DirectX یک رابط بین سخت‌افزار رایانه شخصی شما و خود ویندوز(Windows) است که بخشی از Windows API یا Application Programming Interface است. بیایید به یک مثال عملی نگاه کنیم. وقتی یک توسعه‌دهنده بازی می‌خواهد یک فایل صوتی را پخش کند، این به سادگی استفاده از عملکرد کتابخانه صحیح است. هنگامی که بازی اجرا می شود، DirectX API را فراخوانی می کند که به نوبه خود فایل صوتی را پخش می کند.

توسعه‌دهنده نیازی ندارد بداند با چه نوع کارت صوتی سروکار دارد، چه قابلیتی دارد یا چگونه با آن صحبت کند. مایکروسافت (Microsoft)DirectX را ارائه کرده است و سازنده کارت صدا یک درایور با قابلیت DirectX ارائه کرده است. (DirectX)او درخواست می‌کند که صدا پخش شود، و این می‌شود - هر دستگاهی که روی آن کار می‌کند.

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

به عنوان مثال، روال های DirectInput می توانند با انواع دستگاه های ورودی، از موش های دو دکمه ای ساده گرفته تا جوی استیک های پیچیده پرواز، سروکار داشته باشند. بخش‌های دیگر شامل DirectSound برای دستگاه‌های صوتی است و DirectPlay یک جعبه ابزار برای بازی‌های آنلاین یا چند نفره ارائه می‌کند.

نسخه های DirectX

نسخه فعلی DirectX در ویندوز 10 (Windows 10)DirectX 12 است . ویندوز(Windows) 7 دارای DirectX 11 بود. در ویندوز ویستا (Windows Vista)نسخه 10(Version 10) و در XP به طور پیش فرض 9.0 است. این مورد بر روی تمام نسخه های ویندوز(Windows) از ویندوز(Windows) 98 تا سرورهای ویندوز و از جمله سرورهای ویندوز(Windows Servers) ، همراه با هر نسخه در بین آن اجرا می شود. برای ویندوز 95(Windows 95) و ویندوز NT 4(Windows NT 4) ، به نسخه خاصی از DirectX 3.0a نیاز دارد. بهبود در کد اصلی DirectX به این معنی است که شما حتی ممکن است در بسیاری از عناوین بهبودهایی را در هنگام ارتقاء به آخرین بیلد مشاهده کنید.DirectX . دانلود(Downloading) و نصب DirectX نیز لازم نیست پیچیده باشد.

ارتقاء DirectX

همه نسخه‌های موجود ویندوز(Windows) با DirectX به یک شکل یا به شکل دیگری به عنوان یک مؤلفه اصلی سیستم ارائه می‌شوند که نمی‌توان آن را حذف کرد، بنابراین باید همیشه حداقل یک پیاده‌سازی اولیه از سیستم را روی رایانه شخصی خود نصب کنید. با این حال، بسیاری از بازی های جدید قبل از اینکه به درستی کار کنند یا حتی به آخرین نسخه نیاز دارند.

به طور کلی، بهترین مکان برای نصب آخرین DirectX (install the latest DirectX)مایکروسافت(Microsoft) یا Windows Update است . آخرین نسخه  DirectX 12 Ultimate است. منبع خوب دیگر برای DirectX خود بازی ها هستند. اگر بازی به نسخه خاصی نیاز دارد، روی سی دی نصب قرار می گیرد و حتی ممکن است توسط خود نصب کننده بازی به صورت خودکار نصب شود. با این حال، به لطف شرایط مجوز مایکروسافت، آن را روی دیسک های جلد مجلات پیدا نخواهید کرد.

تشخیص مشکلات DirectX

تشخیص مشکلات نصب DirectX(Diagnosing problems with a DirectX installation) می تواند مشکل ساز باشد. خوشبختانه، مایکروسافت(Microsoft) یک ابزار مفید به نام DirectX Diagnostic Tool ارائه می دهد ، اگرچه این واضح نیست. شما این ابزار را در منوی استارت(Start Menu) با هیچ نسخه ای از ویندوز(Windows) پیدا نخواهید کرد و هر کدام تمایل دارند آن را در مکان دیگری نصب کنند.

ساده ترین راه برای استفاده از آن این است که منوی Start را باز کنید،  dxdiag را در نوار جستجو تایپ کنید و سپس روی OK کلیک کنید. هنگامی که برنامه برای اولین بار بارگیری می شود، چند ثانیه طول می کشد تا نصب DirectX شما بررسی شود و هر مشکلی پیدا شود. ابتدا(First) ، تب DirectX Files اطلاعات نسخه مربوط به هر یک از فایل‌هایی که نصب شما استفاده می‌کند را نمایش می‌دهد. (DirectX Files)بخش یادداشت‌ها(Notes) در پایین ارزش بررسی دارد، زیرا فایل‌های مفقود یا خراب در اینجا پرچم‌گذاری می‌شوند.

برگه‌هایی که نشان‌دهنده نمایش(Display) ، صدا(Sound) ، موسیقی(Music) ، ورودی(Input) و شبکه(Network) هستند، همگی به بخش‌های خاصی از DirectX مربوط می‌شوند و همه به جز برگه ورودی(Input) ابزارهایی برای آزمایش عملکرد صحیح روی سخت‌افزار شما ارائه می‌دهند.

در نهایت، تب More Help راهی مفید برای راه اندازی DirectX Troubleshooter ، ابزار ساده خطی حل مسئله مایکروسافت برای بسیاری از مشکلات رایج DirectX را ارائه می دهد.

امیدواریم این پست برای شما آموزنده باشد.



About the author

من یک مهندس نرم افزار با بیش از 10 سال تجربه در ساخت و نگهداری از Apple Mac، دستگاه های iOS و مرورگرهای Google Chrome هستم. تجربه من شامل توسعه، نگهداری و بهره برداری از محصولات نرم افزاری از ابتدا یا مشارکت در پروژه های منبع باز است. من همچنین این فرصت را داشته ام که روی پروژه های سخت افزاری متنوعی کار کنم - از تعمیر صفحه نمایش شکسته در بیمارستان ها تا طراحی و اجرای ویژگی های جدید برای آیفون. در اوقات فراغت از انجام بازی های ویدیویی مورد علاقه، خواندن کتاب، پختن شام با خانواده یا گذراندن وقت با دوستان لذت می برم.



Related posts