آموزشکنسول و بازی

دایرکت ایکس 11 و 12: از تفاوت ها تا نحوه کارکرد آنها

دایرکت ایکس 12 در کنار ویندوز 10 در سال 2015 منتشر شد. با انتشار آن، دایرکت ایکس 12 مایکروسافت آغازگر دوره جدیدی برای گیمرها و توسعه دهندگان بازی بود. دایرکت ایکس 12 که قادر به کاهش سربار پردازنده و در عین حال افزایش عملکرد گرافیک است، به سرعت نامی برای خود دست و پا کرد. با این حال، آیا واقعاً افزایش عملکرد شما به سادگی تغییر از دایرکت ایکس 11 به 12 است؟ بیایید با نگاهی به تفاوت های دایرکت ایکس 11 و 12 دریابیم.

مایکروسافت دایرکت ایکس چیست؟

دایرکت ایکس مجموعه ای از API است که برای انجام وظایف مربوط به چند رسانه ای استفاده می شود. این شامل برنامه نویسی بازی بر روی پلتفرم های مبتنی بر مایکروسافت مانند ویندوز و ایکس باکس می شود. برای ارائه برخی زمینه ها، اجازه دهید به طور خلاصه در مورد API ها صحبت کنیم. یک رابط برنامه نویسی کاربردی (API) این امکان را برای دو یا چند اپلیکیشن رایانه ای فراهم می کند تا با یکدیگر ارتباط برقرار کنند. مثل یک تلفن به آن فکر کنید؛ اگر مادرتان یک پیامک حاوی لیست مواد غذایی برای شما بفرستد، تلفن شما آن داده ها را دریافت کرده و برای شما نمایش می دهد که اساسا یک API است.

چه تفاوت هایی بین دایرکت ایکس 11 و 12 وجود دارد

یکی از قابل توجه ترین تفاوت های این دو، نحوه تعامل آنها با سخت افزار شما است. اکثر بازی‌های توسعه‌یافته با دایرکت ایکس 11 فقط از دو تا چهار هسته پردازنده استفاده می‌کنند. یکی از این هسته ها معمولاً به گرافیک اختصاص داده شده که چه کاری انجام دهد. سپس بازی از هسته‌های باقیمانده برای مدیریت تنظیمات مختلف CPU مانند ذرات بازی یا ترسیم فاصله استفاده می‌کند. از سوی دیگر، دایرکت ایکس 12 حجم کاری یک CPU را در چندین هسته پخش می کند و همچنین به هر هسته اجازه می دهد تا همزمان با GPU صحبت کند.

دایرکت ایکس 12 همچنین با برخی از فانتزی ها همراه است که شامل محاسبات ناهمزمان و اشیاء حالت خط لوله (PSOs) می شود. محاسبات ناهمزمان با اجازه دادن به بارهای کاری متعدد به صورت موازی، استفاده از GPU را افزایش می دهد و این اساسا پتانسیل کامل GPU شما را باز می کند. جدای از رندر گرافیکی، GPU شما مسئولیت رسیدگی به طیف وسیعی از وظایف دیگر مانند اجرای الگوریتم های یادگیری ماشین را بر عهده دارد.

با دایرکت ایکس 11، پردازنده گرافیکی تنها می تواند یکی از این وظایف را در یک زمان و به ترتیب خاصی انجام دهد. وقتی این اتفاق می افتد، عملکرد ضربه می زند زیرا تمام منابع GPU شما استفاده نمی شود. مثل یک گارسون در یک رستوران به آن فکر کنید. وقتی یک گارسون برای اولین بار سفارش شما را می گیرد، از شما می پرسند که دوست دارید اول چه بنوشید. هنگامی که نوشیدنی های خود را دریافت می کنید، از شما می پرسند که برای غذای اصلی چه می خواهید. سفارش شما به صورت مرحله ای انجام می شود. پیشخدمت قرار نیست قبل از اینکه غذای اصلی خود را بخورید از شما بپرسد که برای دسر چه می خواهید. اگرچه این کارآمد است، اما آنقدر که می‌توانست کارآمد نیست.

در محاسبات، هر یک از وظایف پیشخدمت توسط یک منبع GPU متفاوت انجام می شود. تا زمانی که نوشیدنی خود را دریافت نکنید، منابع GPU مورد نیاز برای سفارش غذای اصلی شما بیکار خواهند بود. با محاسبات ناهمزمان دایرکت ایکس 12، پیشخدمت می تواند سفارش شما را به یکباره مانند یک زنجیره فست فود دریافت کند. این کار استفاده از GPU را به حداکثر می رساند و عملکرد بازی شما را بهبود می بخشد.

دایرکت ایکس 12 همچنین PSOها را معرفی کرد. با دایرکت ایکس 11، هنگامی که هندسه یک بازی به GPU ارسال شده تا رندر شود، تنظیمات سخت افزاری مختلفی وظیفه تفسیر و رندر این داده ها را بر عهده دارند. به این خط لوله گرافیکی گفته می‌شود و جریان ورودی و خروجی داده‌ای است که هنگام نمایش فریم‌های GPU شما رخ می‌دهد. با این حال، خط لوله گرافیکی دایرکت ایکس 11 کامل نیست.

این خط لوله شامل مجموعه ای از حالت های مختلف، از جمله حالت شطرنجی، حالت ترکیبی و حالت استنسیل عمقی، در میان اجزای دیگر است. در دایرکت ایکس 11، وابستگی هایی بین این حالت های مختلف وجود دارد. در نتیجه تا زمانی که حالت قبلی تعریف نشده باشد، نمی توان یک حالت را تکمیل کرد. این امر استفاده از GPU را کاهش می دهد و سربار CPU را با هزینه عملکرد افزایش می دهد.

برای دور زدن این موضوع، دایرکت ایکس 12 PSO ها را معرفی کرد، که اشیایی هستند که وضعیت کل خط لوله گرافیکی را توصیف می کنند. PSOها مانند یک بطری هستند که شامل حالات و اجزای مختلف مورد نیاز برای ایجاد یک تصویر است. این به GPU اجازه می دهد تا به جای نیاز به محاسبه مجدد حالت ها بر اساس خط لوله گرافیکی فعلی، هر حالت وابسته را از قبل پردازش کند.

این به طور قابل توجهی سربار CPU موجود در دایرکت ایکس 11 را کاهش می دهد و عملکرد را بهبود می بخشد. بنابراین، این تفاوت در واقع چگونه به نظر می رسد؟ خب، طبق گفته مایکروسافت، دایرکت ایکس 12 سربار CPU را تا 50 درصد کاهش می دهد و عملکرد GPU را تا 20 درصد بهبود می بخشد. در حالی که آنها برخی از پیشرفت های اساسی هستند، این بدان معنا نیست که شما همان نتایج را خواهید دید.

چرا تغییر از دایرکت ایکس 11 به 12 ساده نیست

دایرکت ایکس 11 برای اولین بار در 27 اکتبر 2009 برای ویندوز ویستا منتشر شد. بنابراین، با دنبال کردن دایرکت ایکس 12 در سال 2015، این یک فاصله شش ساله بین دایرکت ایکس 11 و دایرکت ایکس 12 است. در طول این مدت، هزاران بازی با استفاده از دایرکت ایکس 11 توسعه یافته اند. متأسفانه، انتقال از دایرکت ایکس 11 به 12 چیزی جز آسان نیست.

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

همانطور که گفته شد، یک بازی توسعه یافته در دایرکت ایکس 12 بسته به دانش توسعه دهنده از API می تواند عملکرد بدتری داشته باشد. پیشرفت هایی با دایرکت ایکس 12 وجود دارد، اما واقعاً به این بستگی دارد که یک توسعه دهنده چقدر می تواند آن را پیاده سازی کند. به همین دلیل، بسیاری از توسعه دهندگان ترجیح می دهند از API های سطح بالا مانند دایرکت ایکس 11 استفاده کنند.

آیا باید دایرکت ایکس 11 یا 12 را انتخاب کنید

پاسخ این سوال به چند چیز بستگی دارد، مانند اینکه چه بازی را می خواهید اجرا کنید. برای مثال، Guild Wars 2 روی دایرکت ایکس 11 اجرا می‌شود. حتی اگر سیستم‌عامل و سخت‌افزار شما از دایرکت ایکس 12 استفاده می‌کند، گزینه انتخاب دایرکت ایکس 11 را در Guild Wars 2 نخواهید داشت، زیرا بازی از آن پشتیبانی نمی‌کند. این کاملاً تصمیم توسعه دهنده، ArenaNet است.

باور کنید یا نه، نه سال طول کشید تا ArenaNet از دایرکت ایکس 9 به 11 تغییر مکان داد. با این حال، برخی از بازی ها هستند که از دایرکت ایکس 11 و 12 پشتیبانی می کنند (برای مثال Fortnite). از طریق تنظیمات بازی، کاربران می توانند بین هر دو نسخه جابجا شوند. به طور خلاصه، همه بازی‌ها از دایرکت ایکس 11 و 12 پشتیبانی نمی‌کنند. برای آنهایی که این کار را انجام می‌دهند، بین این دو جابجا شوید و خودتان تعیین کنید که کدام یک در رایانه شما عملکرد بهتری دارد.

اینکه آیا می توانید بین دایرکت ایکس 11 و 12 انتخاب کنید به سخت افزار شما نیز بستگی دارد. تقریباً هر پردازنده‌ی گرافیکی مدرنی از دایرکت ایکس 12 پشتیبانی می‌کند، اما این را نمی‌توان در مورد پردازنده‌های گرافیکی قدیمی‌تر مانند Radeon HD 4870 گفت. این GPU که در سال 2008 عرضه شد، فقط تا دایرکت ایکس 10 را پشتیبانی می‌کند. این بدان معنی است که قادر به اجرای اکثر بازی های مدرن که با دایرکت ایکس 11 و 12 اجرا می شوند، نخواهد بود.

آیا دایرکت ایکس 12 انتخاب مناسبی برای شماست

روی هم رفته، تغییر از دایرکت ایکس 11 به دایرکت ایکس 12 آنقدرها که به نظر می رسد سیاه و سفید نیست. این به عوامل مختلفی مانند سخت افزار، نرم افزار، سیستم عامل و اینکه آیا یک بازی اصلا از هر دو پشتیبانی می کند بستگی دارد. همه اینها باید قبل از تصمیم گیری در نظر گرفته شوند و این احتمالاً برای نسل های آینده دایرکت ایکس نیز صادق خواهد بود.

منبع
makeuseof
نمایش بیشتر

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا