متن اصلی

هنگامی‌که صحبت از صنعت بازی‌های رایانه‌ای به شمار می‌آید بسیاری از افراد مختلف بلافاصله محصولات جدید منتشره و افکار چگونگی دسترسی به آن‌ها جهت کسب تجربه‌ای ناب و منحصربه‌فرد در ذهن آن‌ها تداعی می‌گردد تا برای مدتی هر چند کوتاه از هیاهوی زندگی و دنیای افسار گسیخته خارج از کنترل فعلی به دور بوده و با حرکت به سمت جهانی دیگر احساسات متفاوتی را برای خود به ارمغان بیاورند، اما ورود به حوزه نامبرده به سادگی امکان‌پذیر نبوده و پیش‌نیازهایی را نیازمند می‌باشد که از جمله مهم‌ترین آن‌ها می‌توان بهره‌مندی از سخت‌افزارهای مناسب و قدرتمند اشاره کرد. همان‌طور که مستحضر می‌باشید سال 2016 میلادی برای صنعت بازی‌های رایانه‌ای و جامعه عظیم بازی‌بازان به‌عنوان یکی از مهم‌ترین و تأثیرگذارترین سال‌های موجود و نقطه عطفی در کارنامه گسترده دنیای پهناور مورد ذکر به شمار می‌رود، زیرا نه تنها شاهد ورود سخت‌افزارهای قدرتمند و کاهش فناوری ساخت تراشه‌های شتاب‌دهنده گرافیکی به‌منظور تجهیز نمودن بازی‌بازان جهت ورود به میدان نبرد، بلکه برای اولین بار در تاریخ رایانه‌های شخصی شاهد عرضه محصولاتی مبتنی بر رابط برنامه‌نویسی DirectX 12 نیز بوده‌ایم؛ دلیل برگزیدن عرضه رابطه برنامه‌نویسی نامبرده به‌عنوان یکی از اساسی‌ترین دستاوردهای سال جاری اهمیت فراوان نرم‌افزار و لایه‌های زیر ساختی جهت توسعه انواع مختلف بازی‌های رایانه می‌باشد. اگر تاکنون اخبار و نوشته‌های منتشره در رسانه‌های گوناگون را دنبال کرده باشید بدون شک به این نکته واقف هستید که DX12 در دسته رابط‌های برنامه‌نویسی سطح پایین طبقه‌بندی شده و در حقیقت بزرگ‌ترین تفاوت رابط نامبرده در مقایسه با نمونه‌های فعلی موجود (نظیر یازدهمین نسخه از رابط برنامه‌نویسی DX و …) همین مورد می‌باشد.

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

directx12-api

یکی از محبوب‌ترین عناوین منتشره در سال جاری که با پشتیبانی از دوازدهمین نسخه از رابط برنامه‌نویسی دایرکت ایکس علاوه بر ارتقا پله‌های فناوری، انتظارات مشتریان پیش از عرضه نهایی محصول را فراتر از حالت معمولی برده است Rise of the Tomb Raider می‌باشد؛ اما عنوان نامبرده هنگام پردازش توسط رابط برنامه‌نویسی DX12 متأسفانه از اشکالات عدیده‌ای رنج برده و همان‌طور که پیشتر نیز گفته شد ضعیف‌تر از نسخه پیشین خود یعنی DX11 عمل می‌کند؛ البته ذکر این نکته ضروری است که برخی از صحنه‌ها و موقعیت‌های موجود در بازی هنگام استفاده از رابط نامبرده افزایش کارایی را به خود دیده‌اند، اما عملکرد کلی بازی هنگام پردازش توسط DX11 بهتر از نسخه رابط فعلی می‌باشد. تمامی توضیحات مطرح گردیده در جدیدترین نسخه از عنوان HITMAN نیز برقرار بوده و از قابلیت بسط برخوردار می‌باشند. درحالی‌که برخی از صحنه‌ها و موقعیت‌های موجود در محیط بازی هنگام پردازش کدهای دستوری توسط رابط برنامه‌نویسی DX12 میزبان افزایش کارایی بوده‌اند، اما عملکرد کلی بازی همانند عنوان پیشتر معرفی شده تعریفی نداشته و ضعیف‌تر از نسخه پیشین رابط برنامه نویسی است. علاوه بر موارد مذکور کرش و خروج ناگهانی از بازی نیز نمونه‌ای دیگر از دستاوردهای سازندگان هنگام پردازش عنوان هیتمن توسط رابط برنامه‌نویسی تازه نفس کمپانی مایکروسافت می‌باشد. عنوان خوش ساخت و مورد انتظار Deus Ex: Mankind Divided نیز از این قاعده مستثنا نبوده و با وجود عرضه پچ و وصله‌های فزونی کارایی همچنان از کندی‌های متعدد در شهر پراگو رنج برده و در مقایسه با رابط برنامه‌نویسی DX11 بسیار حادتر عمل می‌کند. عنوان پیشتر انحصاری Quantum Break که در دو نسخه مبتنی بر فروشگاه مایکروسافت استور (توسعه یافته توسط رابط برنامه‌نویسی DX12) و استیم (توسعه یافته بر پایه رابط برنامه‌نویسی DX11) عرضه گردیده است نیز از افت فریم‌های هنگفتی رنج می‌برد.

dues-ex-mankind-divided-dx12

عناوین نامبرده تنها نمونه‌هایی از محصولات مبتنی بر دوازدهمین نسخه از رابط برنامه‌نویسی تازه نفس دایرکت ایکس می‌باشند که تمامی آن‌ها بلا استثنی از اشکالات عدیده‌ای بهره می‌برند، اما عنوان دیگری که با وجود برخورداری از استودیو بسیار قدرتمند و گروهی خلاق و صاحب تجربیات مختلف در پشت پرده طراحی و توسعه آن از برکات رابط برنامه‌نویسی نامبرده در امان نمانده و مشاکل گوناگونی را متحمل می‌باشد Battlefield 1 است که خود علاوه بر تعجب منتقدان و بازی‌بازان، در نمایان‌سازی اشکالات ریشه‌ای رابط برنامه‌نویسی مذکور تأثیرات بسیاری را به خود اختصاص داده است. اگر در زمان مقداری به عقب بازگردیم حتماً به خاطر دارید که عنوان Battlefield 4 در دسته ابتدایی‌ترین بازی‌های میزبان رابط برنامه‌نویسی منتل (Mantle) قرار داشته و استودیو دایس به‌عنوان یکی از اصلی‌ترین شرکای طراحی و توسعه رابط برنامه‌نویسی نامبرده کارنامه درخشانی را از آن خود کرده است و ازآنجایی‌که رابط مورد ذکر هم‌اکنون در بطن DX12 به زندگی خود ادامه می‌دهد، بنابراین انتظار کارایی و عملکرد فوق‌العاده جدیدترین ساخته استودیو مذکور به‌هیچ‌عنوان خواسته بزرگی نبوده و دور از ذهن نمی‌باشد؛ اما واقعیت امر کاملاً در نقطه مقابل تمامی پیش‌بینی‌ها قرار داشته و مغایر با توقعات است. اکنون ممکن است از خود سؤال کنید که دلیل دگرسوسازی تمامی تقصیرات بر گردن کمپانی مایکروسافت و رابط برنامه‌نویسی تازه نفس ایشان چیست؟ تنبلی و کاهلی سازندگان بازی‌های رایانه‌ای در توسعه عناوین نیز به‌عنوان یکی از فاکتورهای تأثیرگذار مطرح می‌باشد. در جواب باید گفت که درست است، اما اگر شواهد و قرائن را کنار یکدیگر قرار داده و جورچین را کامل کنیم مجدد کمپانی نامبرده را در نقطه مرکز تمامی شکست‌ها مشاهده می‌کنیم. اگر به خاطر داشته باشید عنوان Battlefield 4 هنگام دریافت بسته به‌روزرسانی منتل و افزوده گردیدن رابط برنامه‌نویسی فوق جهت پردازش بازی نه تنها افت کیفیت و جلوه‌های گرافیکی را شاهد نبوده، بلکه فزونی هنگفت کارایی و عملکرد را بدون بهره جستن به ارتقا سخت‌افزاری با خود به ارمغان آورده است و به‌عنوان برگ زرینی در کارنامه استودیو دایس و کمپانی AMD خودنمایی می‌کند. پیشتر گفته شد که رابط برنامه‌نویسی سطح پایین منتل پس از معرفی رابط DX12 به صورت کامل از گردونه رقابت خارج نشده و در بطن رابط نامبرده به زندگی و حیات خود ادامه می‌دهد؛ اکنون آیا جدیدترین ساخته استودیو دایس که پیشینه‌ای بسیار غنی در مظاهرت از فناوری‌های نوین را داشته و با پشتیبانی از رابط برنامه‌نویسی منتل و اختصاص سهمی در طراحی و توسعه آن تجربیات فراوانی را کسب نموده است مانند دیگر عناوین منتشره از اشکالات عدیده و عمده‌ای رنج می‌برد جای تعجب ندارد؟

dx12-benchmark

مشکلات دوازدهمین نسخه از رابط برنامه‌نویسی دایرکت ایکس نه تنها بازی‌های اول شخص و سوم شخص، بلکه محصولات مبتنی بر دید استراتژیک را نیز در دام خود گرفتار ساخته و عناوین Civilization VI و Total War: WARHAMMER نیز دست خوش افت عملکرد قرار گرفته‌اند. تنها عنوان منتشره از جانب کمپانی مایکروسافت که کاملاً بر پایه رابط برنامه‌نویسی نامبرده توسعه یافته و عملکردی فوق‌العاده را به نمایش گذاشته است Gears of War 4 می‌باشد، اما ذکر این نکته نیز ضروری است که به دلیل عدم توسعه عنوان مذکور بر پایه نسخه پیشین رابط برنامه‌نویسی دایرکت ایکس متأسفانه مقایسه آن همانند دیگر عناوین پیشتر معرفی شده امکان‌پذیر نمی‌باشد.

directx-12-api-benefits

اکنون جهت حسن خطام مقاله مقایسه‌ای فعلی می‌توان به جدیت گفت که دوازدهمین نسخه از رابط برنامه‌نویسی دایرکت ایکس از مشکلات عدیده و عمده‌ ریشه‌ای رنج برده و وضعیت فعلی آن هنوز به درجه مناسبی از بلوغ نرسیده است. رابط برنامه‌نویسی نامبرده در مقایسه با نسخه‌های پیشین خود از پتانسیل‌های شگرفی در افزایش کارایی و ارتقا صنعت بازی‌های رایانه‌ای به درجه فراتری از فناوری برخوردار می‌باشد، اما استفاده نادرست از آن نه تنها در نزول کیفیت، بلکه افت فریم‌های وحشتناک و آسیب‌رسانی به عملکرد بی عیب و نقص بازی و شکست محصول بسیار تأثیرگذار می‌باشد. یکی از مهم‌ترین دلایل وضعیت فعلی رابط برنامه‌نویسی نامبرده چگونگی نحوه توسعه و زیرساخت‌های آن می‌باشد. معماری رابط DX12 در مقایسه با نسخه پیشین آن تغییرات هنگفتی را به خود دیده و ساختاری کاملاً متفاوت را میزبان می‌باشد که این خود برنامه‌نویسی صفر تا صد (یا بخش عظیمی) موتورهای بازی‌سازی را به‌منظور بهره‌مندی از حداکثر پتانسیل‌های نهفته در بطن خود نیازمند می‌باشد، اما بسیاری از استودیو‌های مختلف و سازندگان عناوین بازی‌های رایانه‌ای در جهت کاهش هزینه‌های توسعه یا عدم برخورداری از تجربه و دانش کافی تنها به افزودن رابط DX12 به‌عنوان یک ویژگی به نرم‌افزارهای بازی‌سازی خود مبادرت ورزیده و تمامی سنگینی ناشی از محاسبات را بر روی دوش فناوری پردازش‌های ناهمگام واگذار می‌کنند (جهت کسب اطلاعات بیشتر به مقاله آموزشی “آشنایی با فناوری پردازش‌های ناهمگام” مراجعه کنید). فناوری نامبرده درست است که به‌عنوان یکی از مهم‌ترین و اساسی‌ترین ویژگی‌های ارائه‌ای توسط رابط برنامه‌نویسی DX12 به شمار می‌رود، اما اگر گستره دید را وسیع‌تر کرده و کالبد واسط مذکور را بشکافیم مشاهده می‌کنیم قابلیت‌ها و فناوری‌های بسیار بیشتری نظیر پشتیبانی از پردازش موازی صریح کارت‌های گرافیک، کاهش بار پردازشی واحد پردازنده مرکزی و انتقال بخشی از آن‌ها به تراشه شتاب‌دهنده گرافیکی، فزونی قابلیت رسم اشکال و … را در بطن خود پنهان ساخته است که استفاده و بهره‌مندی از تمامی آن‌ها همان‌طور که پیشتر نیز گفته شد برنامه‌نویسی مجدد و کامل موتورهای بازی‌سازی را طلب می‌کند. به نظر می‌رسد که کم‌کاری‌های ناشی از عملکرد نا مناسب و به دور از ذهن دوازدهمین نسخه از رابط برنامه‌نویسی محبوب دایرکت ایکس که صنعت عناوین مبتنی بر بازی‌های رایانه‌ای را قبضه کرده است نه تنها استودیوهای طراحی و توسعه بازی‌های رایانه‌ای‌، بلکه کمپانی مایکروسافت را نیز گرفتار خود ساخته است و وضعیت فعلی رابط مذکور به‌هیچ‌عنوان جهت استفاده در بازی‌های رایانه‌ای مناسب نمی‌باشد.