علی صالحی، رهبر رندرینگ ایرانی کرایتک، از توسعه Hunt: Showdown میگوید
یکشنبه ۲۹ مهر ۱۴۰۳ - ۱۳:۳۰مطالعه 16 دقیقهبازی Hunt: Showdown 1896 که در سال ۲۰۱۹ منتشر شد، برای بسیاری از گیمرهای علاقهمند به ژانر شوتر اول شخص شناختهشده و محبوب بهشمار میرود و پس از بهروزرسانیهای متعدد و تعامل مداوم با کاربران، جامعهی پرشوری از مخاطبان را بهدست آورده؛ اما شاید این نکته که رهبر تیم رندرینگ بازی فردی ایرانیتبار است، برای گیمرهای ایرانی جالبتوجه باشد.
بازی Hunt: Showdown گیمرها را به دل دنیایی تاریک و مرموز میبرد، جایی که شکارچیانی حرفهای با خطراتی فراطبیعی روبهرو هستند. داستان بازی در محیطهای مخوف و باتلاقی لوئیزیانای اواخر قرن ۱۹ جریان دارد، جایی که نیروهای شیطانی زمین را تسخیر کردهاند. در ترکیب هوشمندانهی عناصر PvE (بازیکن در برابر محیط) و PvP (بازیکن در برابر بازیکن)، گیمرها در نقش شکارچیانی قرار میگیرند که باید هیولاهایی هولناک را از بین ببرند و همزمان با دیگر شکارچیان رقابت کنند.
«هانت: شو داون» بهعنوان بازی شوتر اولشخص چندنفره، میتواند تا ۱۲ نفر را در قالب تیمهای یک تا سهنفره شامل شود. زندگی بازیکنان نهتنها به مهارتهای تیراندازی، بلکه به استراتژیها و تصمیمهای سریع و حسابشدهی آنها وابسته است.
از نظر فنی، هانت از موتور بازیساز قدرتمند CryEngine بهره میبرد. گرافیک بازی بهویژه در طراحی محیطها و افکتهای نورپردازی بسیار چشمگیر بهنظر میرسد و بهخوبی از عهدهی خلق اتمسفری تاریک و دلهرهآور برمیآید. درعینحال صدا نیز نقشی حیاتی در بازی ایفا میکند. هر حرکت شخصیتها، از دویدن گرفته تا شلیککردن یا حتی باز کردن یک در چوبی، توسط بازیکنان دیگر شنیده میشود که این امر بر تنش و هیجان بازی میافزاید.
اخیراً علی صالحی، رهبر رندرینگ هانت شودوان، در مصاحبهای با دیجیتال فاندری دربارهی تغییرات نسخهی آخر بازی که در ماه آگوست ۲۰۲۴ برای کنسولهای مطرح روز دنیا مانند ایکسباکسها، پلیاستیشن ۴ و ۵ و همچنین پیسی منتشر شده، صحبت کرده است که در ادامه خلاصهای از این توضیحات را با شما مرور میکنیم.
شرکت کرایتک
شرکت کرایتک، سازندهی این اثر، سال ۱۹۹۹ توسط برادران یرلی (چِوات، آوی و فاروق) در آلمان تأسیس شد. هدف اولیهی آنها توسعهی موتورهای بازیسازی قدرتمند و سپس خلق بازیهایی با گرافیک واقعگرایانه بود. کرایتک خیلی زود با نمایش تکنولوژی پیشرفتهی موتور بازیسازی خود، توجه ناشران بزرگ را جلب کرد.
هدف اول کرایتک توسعهی موتورهای بازیساز کرایانجین بود
اولین محصول چشمگیر کرایتک، موتور CryEngine بود که برای ساخت بازیهایی با کیفیت گرافیکی فوقالعاده و محیطهای وسیع بهینه شده بود. یکی از نخستین دموهای تکنیکی شرکت، X-Isle، مورد توجه غولهای فناوری مانند انویدیا قرار گرفت.
پس از آن کرایتک با یوبیسافت برای توسعهی بازی Far Cry همکاری کرد. این بازی در سال ۲۰۰۴ منتشر شد و بهخاطر گرافیک واقعگرایانه و دنیای باز خود، تحسین گستردهای را به همراه داشت. اما اثری که این شرکت را به شهرت جهانی رساند، سری بازیهای Crysis بود.
کرایسیس به لطف موتور بازیساز کرایانجین، نهتنها گیمپلی، بلکه جلوههای بصری فوقالعادهای را به نمایش گذاشت و طی سالهای ۲۰۰۷ تا ۲۰۱۳ محبوبیت زیادی پیدا کرد.
«آیا سیستم شما میتواند کرایسیس را اجرا کند؟»
این بازی بهقدری از نظر گرافیکی پیشرفته بود که بسیاری از کامپیوترهای معمولی آن زمان قادر به اجرای روان آن با حداکثر تنظیمات نبودند؛ تا جایی که جملهی «آیا سیستم شما میتواند کرایسیس را اجرا کند؟» به استاندارد جدیدی برای سنجش قدرت سیستمهای کامپیوتری تبدیل شد.
در سالهای بعد، کرایتک تلاش کرد تا تنوع بیشتری به سبد بازی خود اضافه کند. یکی از این تلاشها، بازی Ryse: Son of Rome بود که در سال ۲۰۱۳ بهعنوان یکی از عناوین انحصاری کنسول Xbox One منتشر شد. هرچند گیمپلی این اثر با انتقادهایی روبهرو شد، تقریباً همهی کارشناسان گرافیک این بازی را قابل توجه میدانستند.
علاوه بر هانت، سری بازیهای «فار کرای» و «کرایسیس» از محصولات بسیار محبوب کرایتک محسوب میشوند
بیایید به بازی هانت: شو داون برگردیم. این پروژه در ابتدا با Hunt: Horrors of the Gilded Age آغاز شد و قرار بود یک MMO (بازی چند نفرهی گسترده) مبتنی بر مأموریت باشد. اما در طول توسعه، تیم کرایتک تصمیم گرفت تا رویکرد خود را تغییر دهد و یک تجربهی بازی چندنفرهی رقابتی را ارائه دهد.
سرانجام بازی در سال ۲۰۱۸ با «دسترسی محدود» بهصورت استریم در اختیار گیمرها قرار گرفت تا بازخوردهای لازم برای نسخهی کامل جمعآوری شود. یک سال بعد یعنی سال ۲۰۱۹، نسخهی کامل هانت برای پیسی، ایکسباکس وان و پیاس ۴ منتشر شد.
سال ۲۰۲۳ کرایتک اعلام کرد این بازی را برای کنسولهای نسل نهم بهینه میکند. این نسخه با گرافیک بهبودیافته، بازگذاری سریعتر و عملکرد بهتر اوایل سال ۲۰۲۴ در دسترس کاربران قرار گرفت.
توضیحات علی صالحی درمورد رندرینگ جدیدترین نسخهی Hunt: Showdown 1896
به گفتهی علی صالحی، سه سال پیش مدیران و توسعهدهندگان شرکت به این نتیجه رسیدند که باید این بازی را ارتقا دهند تا از کنسولهای نسل جدید پشتیبانی کند.
بازی هانت با همکاری تیمهای موتور کرایانجین و توسعهدهندگان بازی ساخته شد
آنها میخواستند جلوههای بصری جدیدی به بازی اضافه کنند و بدین منظور باید به APIهای سطوح پایینتر باز میگشتند و تمامی ویژگیهایی را که در این سالها بهمرور به موتور آمده بود، بهطور جداگانه مرور و بازبینی میکردند. بهجای این روند، آنها تصمیم گرفتند بازی را به جدیدترین موتور کرایتک ارتقا دهند.
مهاجرت به 12 DirectX
تیم توسعهدهندهی هانت در آن زمان تیم کوچکی بود که تلاش میکرد بازی را روی نسخهی جدید کرای انجین اجرا کند، اما درنهایت تمامی شرکت به این پروسه ملحق شدند و پس از یکی، دو سال، با تلاش دو طرفهی تیم موتور و تیم توسعهی بازی، این هدف محقق شد. صالحی درمورد همسو شدن دو تیم میگوید:
هانت بهعنوان یک بازی زنده، نیازهای متفاوتی نسبت به پروژههای معمول موتور بازیساز داشت. چالش اصلی، تطبیق نیازهای متفاوت دو بخش بود. با تمرکز بیشتر بر توسعهی یک بازی پایدار، دریافتیم که بهجای توسعهی جداگانهی قابلیتهای هانت، بهتر است بازی را در بستر موتور توسعه دهیم و تلاشهای دو تیم را یکپارچه کنیم.
یکی از مهمترین اتفاقاتی که در جریان توسعهی بازی برای کنسولهای نسل جدید و بازگشت به APIهای سطوح پایین رخ داد، انتقال برنامهها از رابط کاربری برنامهنویسی DirectX 11 به X12 بود.
اگرچه مدل تردینگ Threading موتور نسبتاً مشابه قبل باقی ماند، ولی ارتقای رابط باعث شد محدودیتهای سطوح کاری رشتهها و میزان عناصری که در بازی بارگیری میشدند، به نحو چشمگیری کاهش پیدا کند.
توسعهی نسخهی جدید هانت با انتقال برنامهها از رابط کاربری برنامهنویسی DirectX 11 به X12 همراه بود
توضیح اینکه در یک برنامه، معمولاً چندین رشته وجود دارد که هر کدام وظایف خاص خود را انجام میدهند. رندر ترد (Render Thread) بهطور خاص برای پردازش و تولید تصاویر یا فریمها برای نمایش در یک محیط گرافیکی به کار میرود، درحالیکه سایر رشتهها میتوانند وظایفی مانند مدیریت ورودی کاربر، پردازش منطق بازی، یا بارگذاری منابع را انجام دهند.
علی صالحی توضیح میدهد:
در DirectX 11، ما برای رندرینگ گرافیک تنها از محتوای معلق (deferred context) استفاده میکردیم که امکان ثبت عملیات روی رندر ترد و سپس بازگرداندن یا ادغام آنها در رشتههای تصادفی را فراهم میکرد. اما حالا میتوانستیم هر عملیاتی را در لیست دستورات (command list) روی رشتههای کاری ثبت کرده و سپس آنها را در رشتهی اصلی ترکیب کنیم. این روش بسیار کارآمدتر از مدل قبلی است و بار پردازشی رندر ترد را کاهش میدهد.
شیدرها و نورپردازی
تیم توسعه با بهرهگیری از رابط DirectX 12 به قابلیتهایی مانند بهینهسازی Draw Call (دستورهایی که به کارت گرافیک میگویند چه چیزی را ترسیم کند) دست یافت. همچنین به لطف APIهای جدید بهینهسازی بازی با آخرین نسخههای شیدر انجام شد. شیدرها برنامههایی هستند که روی کارت گرافیک اجرا میشوند و وظایف مرتبط با گرافیک، مانند روشنایی یا سایهها را انجام میدهند.
با استفاده از Shader Model 6.7 به امکانات جدیدی دست یافتیم؛ مانند wave intrinsics که به مدیریت و پردازش موازی دادهها کمک میکند و wave front که امکان تعیین سایز دستهای از دادهها برای پردازش را در اختیار دولوپرها قرار میدهد. با سیستمهای جدید تنها شیدرهای قبلی را بهینهسازی کردیم و البته روشهای جدید برای استریم کردن بافتها و آمادهسازی آنها برای سختافزار هدف نیز کمک زیادی به تیم ما کرد.
کاهش لگ و تأخیر
بسیاری از گیمرها وقتی به DX12 پیسی مهاجرت میکنند، حس میکنند بازیها بهخوبی اجرا نمیشوند. ریشهی این مشکل معمولاً به کامپایل شیدرها برمیگردد. در واقع کامپایل شیدر مستقیماً روی عملکرد بازی تأثیر دارد و اگر بهدرستی مدیریت نشود، میتواند موجب ایجاد لگ یا تأخیر شود.
بااینحال یکی از ویژگیهایی که هانت: شو داون را از بازیهای همردیف خود متمایز میکند، این است که در اجرای آن با چنین مشکلی مواجه نمیشوید. چرا؟ پاسخ را از علی صالحی بشنویم:
مدیریت کامپایل شیدرها به تلاش زیادی نیاز داشت. انتقال بازی به رابط جدید مانند شمشیری دو لبه است: وقتی کنترلهای بیشتری دارید، بهینهسازیهایی را که قبلاً در درایور داشتید از دست میدهید، اما در بلندمدت میتوانید در زمینه کاهش لگ بهتر عمل کنید. از طرفی در DirectX 12 همه چیز قابل پیشبینیتر است. بنابراین ما میتوانستیم برآورد بهتری از عملکرد هر دستور داشته باشیم و آنها را به بخشهای مختلفی تقسیم کنیم: کارهایی که باید در hot code path اجرا شوند، کارهایی که بهصورت آفلاین انجام میشوند و کارهایی که در زمان بارگذاری هر مرحله انجام میشوند.
او همچنین توضیح میدهد که تیم توسعهدهندگان بهجای اینکه اشیاء را در لحظه (در زمان اجرای رندر) کامپایل کند، این فرایند را به پسزمینه منتقل کردهاند. این کار به آنها اجازه میدهد که از لگ در حین اجرای بازی جلوگیری کنند.
به این صورت، حتی اگر یک شیء آماده نباشد، بازیکن چند فریم آن را نمیبیند، اما بعد از آن بدون لگ در بازی ظاهر میشود و اصولاً گیمر متوجه موضوع نمیشود. صالحی توضیحات خود را اینگونه ادامه میدهد:
یکی از مهمترین مزایایی که در مهاجرت به DirectX 12 به دست آوردیم، این بود که کنترل بیشتری روی نحوه عملکرد بازی داشتیم. البته، همانطور که گفتم، این کار به تلاش زیادی نیاز داشت تا بهینهسازیهای قدیمی درایورهای گرافیکی را جایگزین کنیم؛اما در نهایت، نتیجهای که گرفتیم این بود که میتوانیم بسیاری از این پردازشها را به روشهای بهتر و کارآمدتری مدیریت کنیم و بازی را از لگ و مکثهای غیرضروری حفظ کنیم.
از VRAM تا DirectStorage: رندرینگ و حافظهی سیستم
کرایتک در نسخهی پیسی هانت، به کاربران اجازه میدهد میزان استفاده از VRAM سیستم را مطابق ترجیحات خود تنظیم کنند، درحالیکه این ویژگی را در اغلب بازیهای دیگر مشاهده نمیکنیم. حتی بعضی بازیها یکونیم گیگابایت از حافظهی ۸ گیگابایتی سیستم را برای ویندوز نگه میدارند و باز هم با مشکلات تصویری یا عملیاتی مواجه میشوند. صالحی میگوید:
ما روی پیسی باید به میزان منابعی که سیستم عامل در اختیارمان میگذارد توجه کنیم. طبیعتاً این موضوع به تعداد برنامههایی که در پسزمینهی سیستم اجرا میشوند، اینکه OS بازی را تا چه حد مهم میداند و عواملی ازایندست بستگی دارد. اما علاوه بر این، باید مقداری فضای اضافی در VRAM برای درایور و موارد دیگر در نظر بگیریم تا بتوانند اطلاعات را جابهجا و مدیریت کنند. برای ما در اختیار داشتن ۸۰ تا ۸۵ درصد VRAM ایدئال بود و به بهترین شکل ممکن بین کیفیت تکسچرها و جلوگیری از لگها تعادل برقرار میکرد.
فکر کردیم که شاید بهتر باشد حق انتخاب را به خود کاربران بدهیم: اگر دوست داشته باشند بافتهای باکیفیتتر را با برخی لگها تجربه کنند، یا اینکه ترجیح بدهند بازی بدون لگ باشد و در عوض جزئیات کمتری را مشاهده کنند. بگذاریم خود گیمرها تصمیم بگیرند.
هنگامیکه بحث گیم و حافظه پیش میآید، سؤالی که ذهن بسیاری از کاربران را مشغول میکند بحث DirectStorage است. در جدیدترین نسخهی هانت این قابلیت هنوز فعال نشده، اما به گفتهی شرکت بهزودی در یک بهروزرسانی به بازی اضافه خواهد شد.
Direct Storage در بهروزرسانیهای جدید بازی فعال میشود
مسئلهی مهم در مورد DirectStorage و بهطورکلی استفاده از SSDها و APIهای جدید، این است که برای کارکرد بهینهی آنها باید معماری موتور را تغییر داد. باتوجهبه افزایش پهنای باند، احتمال دارد حجم دادههایی که از موتور عبور میکند ۱۰ تا ۱۰۰ برابر شود. در این صورت تمام هستههای سیپییو مشغول بارگذاری دادهها میشوند و کار دیگری انجام نمیدهند.
به همین دلیل انطباق با این قابلیتهای جدید زمانبر خواهد بود. به گفتهی صالحی، شرکت کرایتک تاکنون بیشتر راه را تا رسیدن به این هدف طی کرده است:
ما نحوهی ذخیرهسازی و همچنین پردازش تکسچرها را تغییر دادیم و اکنون آنها را دقیقاً به همان فرمتی ذخیره میکنیم که در زمان اجرا نیاز داریم. بنابراین میتوانیم همهی تکسچرها و دادهها را بهطور مستقیم بارگذاری کنیم و با استفاده از DirectStorage آنها را به حافظهی مقصد کپی کنیم. بااینحال فرصت نداشتیم این قابلیت را در نسخهی جدید فعال کنیم و باید منتظر بهروزرسانیهای بعدی بازی بمانیم.
سیستمها و تکنیکهای نورپردازی
در بحث الگوریتمهای نورپردازی، بین سالهای ۲۰۱۰ تا ۲۰۱۳ موتور کرایانجین به سمت نورپردازی غیرمستقیم بلادرنگ (Realtime Indirect Lighting) رفت، درحالیکه سایر رقبا از نقشههای نوری استفاده میکردند. بازخوردهای انتقادی طرفداران قدیمی کرایتک شرکت را بر آن داشت تا از الگوریتمهای نورپردازی سراسری (Global Illumination) استفاده کند.
اما در نسخهی جدید شو داون نهتنها نورپردازی GI اعمال شده است؛ بلکه شاهد تغییرات مثبتی در آن هستیم:
الگوریتم اصلی و معماری پایهای GI تغییر زیادی نکرده است، اما سعی کردیم تا جای ممکن چیزهای جدیدی به آن اضافه کنیم. برای مثال حالا میتوانیم پرتوهای بازتابی (specular rays) را هم برای سطوح ناهموار رهگیری کنیم. البته این سیستم برای سطوح صاف مثل شیشه یا آب خوب کار نمیکند. در چنین مواقعی از روشهای کارآمدتری SSR یا نقشههای مکعبی استفاده میکنیم.
به گفتهی صالحی، یکی دیگر از تغییراتی که به بهبود تصاویر کمک میکند، از بهبود روشهای نمونهگیری دادهها ناشی میشود. نسخهی جدید هانت از تاریخچهی پرتوها در فریمهای قبلی استفاده میکند تا نمونهگیری دقیقتری انجام دهد و بهترین جهتهای نورپردازی را انتخاب کند.
سیستم GI Cache نتیجهی نورپردازی سراسری (GI) را برای نتایج بهتر بعدی در نقاط مختلف فضا ذخیره میکند
همچنین با بهرهگیری از سیستم GI Cache نتیجهی نورپردازی سراسری (GI) در نقاط مختلف فضا ذخیره میشود و بعداً در زمان نیاز مورد استفاده قرار میگیرد تا بدون کاهش عملکرد، نورپردازی غیرمستقیم بیشتری انجام شود.
البته این سیستم مستلزم پیشمحاسباتی برای تعیین دیدپذیری نواحی مختلف است، اما تمام فرایند نورپردازی بهصورت لحظهای انجام میشود.
تیم توسعه با استفاده از تکنیک «Diffuse Cone» برای شبیهسازی نورپردازی غیرمستقیم روی سطوح، نتایج دقیقتری در نورپردازی به دست آورد و با اقداماتی نظیر «نمونهگیری از شبکهی وکسلها (voxel grid)»، «استفاده از انباشت زمانی برای بهبود نتایج در طول چندین فریم» و همچنین «مدیریت تعاملات بین نورپردازی و محیط» موفق شد تعادل خوبی بین عملکرد بازی و کیفیت بصری ایجاد کند.
صالحی میگوید:
یکی از مهمترین مسائلی که روی آن تمرکز داشتیم، این بود که سیستم ما بتواند روی پلتفرمهای مختلف بهدرستی کار کند. بهعنوانمثال، در کنسولها یا کامپیوترهایی که سختافزار ضعیفتری دارند، تعداد بازتابها در سیستم نورپردازی غیرمستقیم را کاهش میدهیم یا وضوح شبکه وکسلها را پایینتر میآوریم تا بازی روان بماند. از طرف دیگر، روی پلتفرمهای قدرتمند، میتوانیم این تنظیمات را افزایش دهیم تا تجربهی بصری غنیتری ارائه دهیم، بدون اینکه عملکرد ضعیفتری داشته باشیم.
همچنین ما یک سیستم رزولوشن پویا (DRS) معرفی کردیم که بسته به بار فعلی عملکرد، وضوح بازی را بهصورت لحظهای تنظیم میکند. این ویژگی بهخصوص در صحنههای مبارزه شدید که نیاز به حفظ نرخ فریم ثابت داریم بسیار مفید است. سیستم بهطور خودکار در این لحظات وضوح را کمی کاهش میدهد تا بازی روان بماند و سپس وقتی سرعت صحنه کمتر شد، دوباره وضوح را افزایش میدهد.
در بخش نورپردازی تغییراتی هم با هدف کاهش نیاز گیمرها به تنظیمات دستی صورت گرفت. کاهش نشت نور و ترکیب دو مرحلهی «دیفیوز» و «بازتاب منظم» جلوهای بسیار طبیعی به صحنههای بستهی داخلی و باز خارجی داد.
رندرینگ موی کاراکترها
در نسخهی جدید هانت: شوداون رندرینگ ریش و موی کاراکترها هم به یکی از موضوعات جذاب تبدیل شد. صالحی توضیح میدهد که مدل سایهزنی یا شیدینگ، از سه بخش اصلی تشکیل میشود:
اول بازتاب مستقیم نوری که به رشتههای مو برخورد میکند، دوم جذب نور توسط رشتههای مو و بازتاب آن با رنگی دیگر و سوم نوری که پس از برخورد با رشتههای مو، از آنها رد میشود.
بعضی فاکتورها مانند آب نیز رنگ و جهت مو را تغییر میدهند و از طرف دیگر باید توجه کنیم که مو، مادهای حجمی است بدین معنا که صرفاً یک رشته مو شبیهسازی نمیشود، بلکه رشتههای مو بهنوعی با هم در تعاملاند. پس هنگامی که نور از موی کاراکتر رد میشود، متغیرهای زیادی تغییر میکنند.
کرایتک برای رسیدن به نرخ اجرای 60@4K تمامی سیستمهای نورپردازی را بهینهسازی کرده است
صالحی با شرح این جزئیات، اقرار میکند که این مدل شیدینگ ظاهر شخصیتها را بسیار باورپذیرتر و واقعیتر کرده، اما درعینحال هزینهی زیادی نیز داشته است. او همچنین میگوید برای پیادهسازی این مدل با نرخ ۶۰ فریمبرثانیه در رزولوشن 4K روی تمام سختافزارهایی که بازی پشتیبانی میکند، مجبور شدهاند کلیهی روشهای نورپردازی را مجدداً بهینهسازی کنند.
افزایش رزولوشن با قابلیتهای FSR و DLSS
رسیدن به نرخ ۶۰ فریمبرثانیه در کنسولها مستلزم این بود که تکنیکهای مختلف آپاسکیل را پیادهسازی و از رزولوشن داینامیک استفاده کنند.
البته ما فناوریهای FSR و DLSS را به بازی اضافه کردیم. FSR روی تمام پلتفرمها قابل استفاده است و روی کنسولها تکنیک پیشفرض آپاسکیل محسوب میشود. ولی روی پیسی بازیکنان میتوانند بسته به سختافزاری که دارند بین FSR و DLSS یا استفادهنکردن از هیچ نوع تکنیک بهبود رزولوشن انتخاب کنند. در حال حاضر، ما از هیچ نوع رزولوشن دینامیکیای استفاده نمیکنیم؛ بهجای آن از سایهزنی با نرخ متغیر (VRS) استفاده میکنیم. برخی از مراحل، مثل آب، به منابع بیشتری نیاز داشتند و هزینهبر بودند، بنابراین مجبور بودیم راهحلی برای آن پیدا کنیم. قصد داریم که VRS را به مراحل دیگر مثل رندرینگ ذرات و برخی بخشهای دیگر نیز گسترش دهیم.
نکتهی جالب اینکه VRS براساس هر شیء مجزا عمل میکند، نه بر مبنای بخشهایی از تصویر که شیدینگ کمتر یا بیشتری دارند. تیم توسعه همچنین تصمیم دارد در آینده VRS را بهصورت مبتنی بر تایل (Tile-Based) اجرا کند تا هر تایل سایهزنی متفاوتی داشته باشد.
همانطور که میدانید بازی هانت برای تمامی کنسولهای نسل جدید و پیسیها توسعه داده شد. در این نسل بهجز دو کنسول 4K یعنی ایکسباکس سری ایکس و پلیاستیشن ۵، ایکسباکس سری S از وضوح HD برخوردار است. موفقیت هانت به این بستگی داشت که بازی با نورپردازی سراسری GI لحظهای، بافتهای با رزولوشن بالا و سایههای واقعی به سری S نیز منتقل شود.
صالحی میگوید آنها از ابتدای کار میدانستند که هانت قرار است آنلاین باشد و نهتنها باید طیف گستردهای از سختافزارها را پشتیبانی کند، بلکه باید برای سختافزارهای آینده نیز آماده شوند:
یکی از جنبههای تلاش ما برای بهبود الگوریتمها، مثلاً در GI، این بود که محتوا را براساس سختافزاری که بازی روی آن اجرا میشود، بهینه کنیم. ما میتوانیم روشهای مختلفی برای انجام GI داشته باشیم، اما بهترین راهکار این بود که تا حد ممکن تغییرات را از طریق کدها اعمال کنیم، تا گیمرها مجبور نباشند در مراحل مختلف بازی، نورها را بهصورت دستی برای هر سختافزار تنظیم کنند. ما تلاش کردیم که این موضوع را پیادهسازی کنیم و فکر میکنم موفق شدیم. حالا یک سیستم مقیاسپذیر داریم که میتواند بسته به تعداد هستههای CPU، پهنای باند GPU و میزان VRAM موجود تطبیق یابد.
درعینحال، ما تلاش کردیم از امکانات و قابلیتهای هر سیستم و کنسول به بهترین نحو بهره ببریم و بهینهسازیهایی برای آنها انجام دهیم. برای کنسولها، بهخصوص سری اس، ازآنجاکه میدانیم چه سختافزاری در اختیار گیمر است، میدانیم کدام بخش از بازی، محدودیت اصلی ما محسوب میشود. بنابراین میتوانیم روی این محدودیتها کار کنیم و بهینهسازیهای خاصی برای سختافزارهای مشخص انجام دهیم تا شرایط بهبود یابد.
کرایتک برای رندرینگ این بازی هزینهی اولیهی زیادی پرداخت، اما به گفتهی کارشناسان راه را برای فرصتهای آتی خود در این زمینه باز کرد. در واقع تیم توسعه بهجای استفاده از روشهایی که شاید فعلاً جواب دهد و در آینده به تغییر نیاز داشته باشد، پایهای ساخت که بعدها میتوان ساختار آن را با ویژگیها، محتواها و سختافزارهای جدید بسط داد.
کلایو گراتون، مدیر تکنولوژی کرایتک، بخشی از نقشهی راه شرکت را کاهش تعداد «ترفندهای» مورد نیاز برای شبیهسازی واقعیت میداند. آنها انتظار دارند کرای انجین به سطوح جدیدی از دقت و کیفیت برسد و استانداردهای فعلی صنعت گیمینگ را ارتقا دهد.
نظرات