یه Mod کاری با نورپردازی Rebirth کرده که Square Enix نکرده بود
ویدیوی جدید Digital Foundry درباره Shader Injector فاینال فانتزی 7 ریبرث رو دیدم, واقعا ماد جالبیه و خیلی بیشتر از چیزی که فکر میکردم توی نورپردازی بازی دست برده, DF اول دوباره به مشکلات اصلی Rebirth اشاره میکنه, همون نورهای عجیب و سفید و براق که خیلی جاها انگار محیط از خودش نور میداد, نبودن سایه روی خیلی از گیاه ها و آبجکت ها, Shadow Map های کم کیفیت و AO خیلی ضعیف, نکته مهم اینه که Shader Injector اصلا یه ReShade ساده نیست, مستقیم میره سراغ Shader های نورپردازی خود بازی و بخشی از Rendering Pipeline رو تغییر میده, یعنی تغییراتش واقعا از داخل موتور و سیستم رندر بازی انجام میشه
بزرگترین تغییری که DF روش تاکید داشت نورپردازی غیرمستقیمه, اون حالت Glow عجیب Rebirth توی خیلی از محیط ها تا حد زیادی از بین رفته, فلزها و سطوح براق طبیعی تر شدن و فضاها بیشتر شبیه یه بازی PBR مدرن دیده میشن, سازنده ماد David Matos به DF گفته یکی از دلایل اصلی اون ظاهر عجیب Specular Light Leak بوده, Rebirth شدیدا به Cube Map ها تکیه میکنه ولی چون محیط بازی خیلی بزرگه پوشش Cube Map ها محدوده, بازی با GI Probe ها سعی میکنه Reflection ها رو با محیط هماهنگ کنه ولی نتیجه همیشه درست درنمیاد و بعضی بازتاب ها بیش از حد روشن میشن, David سیستم رو طوری تغییر داده که Reflection توی قسمت های بسته و کم نور تاریک تر بشه, بعد اطلاعات GI رو هم دوباره پردازش کرده تا جهت و شدت بازتاب ها طبیعی تر بشه, نتیجه اینه که اون Glow سفید معروف بازی خیلی کمتر شده
تکنیک SSR هم حسابی تغییر کرده, خود بازی به شکل عجیبی خیلی محدود از Screen Space Reflection استفاده میکرد و بعضی Reflection ها واقعا ناجور بودن, David پوشش SSR رو بیشتر کرده و روی سطوح Rough هم بازتاب رو بهتر پخش کرده, Gold Saucer یکی از جاهاییه که DF نشون میده با این تغییر تقریبا متحول شده و بازتاب ها خیلی بیشتر با خود صحنه هماهنگن, طبیعتا SSR محدودیت خودش رو داره ولی چون Rebirth نه RT Reflection داره و نه Cube Map های خیلی کاملی, DF هم با David موافقه که تکیه بیشتر روی SSR توی این بازی نتیجه بهتری میده
تکنیک Diffuse GI بازی هم بهتر شده, Rebirth به خاطر وسعت خیلی بیشترش نسبت به Remake دیگه نمیتونه مثل اون بازی به Light Map های دقیق تکیه کنه و بیشتر از Probe Based GI استفاده میکنه, برای همین نورپردازی غیرمستقیمش دقت کمتری داره, David وابستگی این بخش به Reflection Cube Map ها رو کمتر کرده و بیشتر به اطلاعات Probe GI تکیه کرده, بعد میرسیم به AO که اونجا هم ماد تغییر بزرگی ایجاد کرده, SSAO اصلی بازی خیلی سبک و ضعیفه و برای همین یه روش جدید به اسم GTVBAO اضافه شده که تماس آبجکت ها با محیط و سایه های ریز رو خیلی بهتر درمیاره, SSGI هم توی Max Quality وجود داره که توی بعضی صحنه ها Bounce Light و محل تماس شخصیت ها با زمین رو خیلی طبیعی تر میکنه
البته GTVBAO و SSGI هر دو محدودیت Screen Space خودشون رو دارن, بعضی جاها ممکنه بیش از حد تاریک بشن یا وقتی اطلاعاتی از کادر خارج میشه Artifact ببینی, ولی DF یه حرف جالب میزنه, میگه ترجیح میده نورپردازی بعضی وقتها Artifact داشته باشه ولی در مجموع درست به نظر برسه تا اینکه کاملا پایدار باشه ولی از پایه اشتباه دیده بشه, روی شخصیت ها هم تفاوت خیلی واضحه, Cloud توی بازی اصلی مخصوصا توی سایه ها بعضی وقتها خیلی بد دیده میشد, موهاش تخت میشد و صورتش یه Glow عجیب داشت, با Shader Injector ظاهر شخصیت ها طبیعی تر و سینمایی تر شده و بیشتر شبیه چیزی شده که از یه Cutscene تنظیم شده توسط هنرمند انتظار داری
یکی از مهمترین بخش های ماد Contact Shadow هاست, Rebirth روی علف ها و گیاه ها و خیلی از جزئیات کوچیک محیط سایه درست حسابی نداشت و همین باعث میشد بعضی چیزها انگار روی محیط شناور باشن, David اول ظاهرا به بالا بردن رزولوشن Shadow Map یا حتی اضافه کردن Ray Tracing فکر کرده ولی به خاطر هزینه Performance و سختی پیاده سازی بیخیال شده, در عوض Screen Space Contact Shadow رو تقریبا از صفر دوباره ساخته, جالب اینجاست که Unreal Engine 4 خودش چنین قابلیتی داره ولی ظاهرا توی نسخه موتور Rebirth حذف شده بوده, نتیجه روی علف ها و گیاه ها خیلی خوبه و محیط خیلی بهتر به زمین متصل به نظر میرسه, DF حتی میگه احتمالا این بزرگترین پیشرفت فنی کل ماد باشه
آب بازی هم کلی تغییر کرده, Ripple های ریز بیشتری روی سطح آب اضافه شده, Caustics اضافه شده, جزئیات زیر آب با افزایش عمق بیشتر Blur میشن و خط تماس آب با ساحل هم نرم تر شده, توی نسخه اصلی بعضی جاها کاملا معلوم بود آب یه Plane سه بعدیه چون لبه ش خیلی تیز بود, الان وقتی آب به ساحل میرسه آروم Fade میشه و طبیعی تر به نظر میاد, Refraction و پوشش SSR آب هم بیشتر شده, البته DF میگه همه جا نسخه ماد بهتر نیست و چند صحنه بوده که خودش آب اصلی بازی رو بیشتر پسندیده, ولی در مجموع ظاهر جدید آب رو جذاب تر و قابل باورتر میدونه
از نظر Performance هم وضعیت بد نیست, DF روی RTX 5090 و تنظیمات Max در 4K یه صحنه رو مثال میزنه که بازی اصلی حدود 115 فریم میداده, با Performance Preset ماد فقط حدود 5 تا 6 فریم افت کرده, یعنی هزینه اش خیلی سنگین نیست, ولی Max Quality با SSGI و بقیه قابلیت ها فریم رو به حدود 80 تا 90 رسونده, بنابراین Performance Preset احتمالا روی طیف زیادی از کارت ها قابل استفاده است ولی Maximum بیشتر برای سیستم های قوی تر مناسبه, Shader Compilation هم بیشتر توی یکی دو دقیقه اول خودش رو نشون میده و بعدش طبق تجربه DF وقفه جدی خاصی ایجاد نمیکنه
نسخه 2,1 الان دو حالت اصلی داره, Performance که بیشتر از SSAO خود بازی استفاده میکنه و Auto Exposure نداره, Maximum که SSGI و Auto Exposure رو فعال میکنه, خود DF بیشتر ویدیو رو با تنظیمی نزدیک به Maximum تست کرده ولی توی بخش زیادی از تست ها GTVBAO رو به جای SSGI ترجیح داده, تنظیمات ماد هم خیلی زیاده و تقریبا میشه بخش های مختلفش رو جداگانه تغییر داد یا خاموش کرد, این موضوع مهمه چون تغییرات ماد برای هر منطقه بازی جداگانه تنظیم نشدن و ممکنه یه چیزی که توی اکثر محیط ها عالیه توی یه صحنه خاص نتیجه ایده آلی نداشته باشه
البته DF در نهایت میگه بیشتر ایرادهایی که دو سال پیش موقع بررسی Rebirth از نورپردازی بازی گرفته بود با نصب Shader Injector دیگه عملا وجود ندارن, الان به جای مشکلات بزرگ قبلی بیشتر با یه سری ایرادهای کوچیک و آشنای تکنیک های Screen Space طرفیم, مثل Over Occlusion در SSGI یا قطع شدن بعضی Screen Space Shadow ها, ولی در مجموع نتیجه خیلی بهتره و بازی بیشتر شبیه یه عنوان مدرن دیده میشه, چیزی که جالبه اینه که David فقط حدود دو ماه روی این ماد و Framework اون کار کرده و خود Framework هم رایگان و Open Source هست
برای آینده هم قراره Filtering و Resolution Scaling درست برای GTVBAO و SSGI اضافه بشه که احتمالا هم Performance رو بهتر میکنه هم تصویر رو تمیزتر, ممکنه Reflection فعلی هم بعدا با Screen Space Cone Traced Reflection عوض بشه تا پایداری بیشتری داشته باشه, HDR هم توی نسخه فعلی مشکل داره و قراره درست بشه, David حتی گفته اگه قسمت بعدی FF7 که برای 2027 میاد نورپردازی مشابه Rebirth داشته باشه ممکنه برای اون هم یه ماد مشابه بسازه, در کل چیزی که من از ویدیوی DF گرفتم اینه که Shader Injector فقط یه ماد گرافیکی ساده نیست و عملا بخش بزرگی از نورپردازی Rebirth رو دوباره سر و شکل داده, مخصوصا اگه نسخه PC بازی رو دارید به نظرم حداقل Performance Preset ارزش امتحان کردن رو داره چون طبق تست DF کیفیت تصویر رو حسابی بهتر میکنه بدون اینکه افت فریم خیلی سنگینی داشته باشه
دانلود ماد:
https://www.nexusmods.com/finalfantasy7rebirth/mods/2153
آموزش نصب ماد:
راهنمای نصب
نصب این ماد در حالت عادی کمتر از یک دقیقه زمان میبرد، اما اگر اولین بار است که آن را نصب میکنید، یک نکته بسیار مهم وجود دارد.
اگر میخواهید بدون دردسر و در کوتاهترین زمان ماد را راهاندازی کنید، باید تمام مراحل این راهنما را دقیقاً و بدون هیچ تغییری دنبال کنید.
نصب و راهاندازی ماد پیچیده نیست، اما اگر از مراحل راهنما فاصله بگیرید، احتمالاً با مشکل و سردرگمی مواجه خواهید شد، مخصوصاً اگر با نحوه عملکرد آن آشنا نباشید. خوشبختانه، بعد از اینکه یک بار آن را بهدرستی نصب کنید، در اجرایهای بعدی بازی بدون نیاز به انجام دوباره مراحل کار خواهد کرد، مگر در چند مورد خاص که بعداً به آنها اشاره میشود.
مراحل نصب بسیار ساده است:
مرحله ۱: حذف Shader Cache بازی
مرحله ۲: نصب ماد
مرحله ۳: اجرای بازی
تمام!
مقدمه
قبل از شروع باید به این نکته اشاره کنم که بعضی کاربران هنگام نصب با این مشکل مواجه شدهاند که آنتیویروس فایلهای ShaderInjector را به اشتباه خطرناک تشخیص داده و حتی آنها را حذف کرده است. در نسخههای جدید این مشکل تا حد زیادی برطرف شده، اما اگر در مرحله سوم منوی Shader Injector ظاهر نشد، حتماً این مورد را بررسی کنید.
ممکن است آنتیویروس برخی فایلهای ماد را حذف کرده باشد. در این صورت کافی است آنتیویروس را موقتاً غیرفعال کنید، فایلهای ماد را در لیست استثنا (Whitelist) قرار دهید و مطمئن شوید تمام فایلها همچنان در پوشه نصب وجود دارند. همچنین Windows Smart Control هم ممکن است مانع اجرای DLL شود، پس آن را نیز بررسی کنید.
اگر با مشکلی روبهرو شدید، راهحلهای بیشتری در بخش Troubleshooting ارائه شده است.
خب، شروع کنیم!
مرحله ۱: حذف Shader Cache بازی
این مرحله یکی از مهمترین پیشنیازهای نصب ماد است.
برای اینکه Shader Injector بتواند شیدرهای بازی را رهگیری و جایگزین کند، ابتدا باید Shader Cache بازی حذف شود.
محل ذخیره Shader Cache در Final Fantasy VII Rebirth:
~/Documents/My Games/FINAL FANTASY VII REBIRTH/Saved
در این پوشه فایل زیر را مشاهده خواهید کرد:
D3DDriverByteCodeBlob
کافی است این فایل را حذف کنید.
بعد از حذف فایل، همه چیز برای نصب ماد آماده است.
نکته: اگر بعدها دوباره مشکلی پیش آمد و مجبور شدید Shader Cache را پاک کنید، نگران نباشید. طبق آزمایشهای انجامشده، پس از ساخت مجدد Shader Cache، زمان کامپایل شیدرها معمولاً کمتر میشود و حتی ممکن است فقط ۲ تا ۳ ثانیه طول بکشد.
مرحله ۲: نصب ماد
نکته برای کاربران Steam
اگر نسخه Steam را دارید، روی بازی راست کلیک کنید و از مسیر زیر وارد پوشه نصب شوید:
Manage → Browse Local Files
سپس وارد مسیر زیر شوید:
steamapps/common/FINAL FANTASY VII REBIRTH/End/Binaries/Win64
پس از رسیدن به این پوشه، فایل ZIP ماد را باز کنید و این دو مورد را داخل همین پوشه کپی کنید:
dsound.dll
پوشه ShaderInjector
وقتی هر دو فایل در این پوشه قرار گرفتند، نصب ماد تمام شده و میتوانید بازی را اجرا کنید.
مرحله ۳: اجرای بازی
حالا بازی را اجرا کنید.
از آنجا که Shader Cache را حذف کردهاید، بازی دوباره شروع به کامپایل شیدرها خواهد کرد.
چند ثانیه بعد، باید منوی Shader Injector ظاهر شود. اگر ظاهر شد، یعنی ماد بهدرستی نصب شده است.
در این مرحله فقط صبر کنید تا کامپایل شیدرها کامل شود.
به هیچ عنوان Shader Compilation را رد (Skip) نکنید.
نکته مهم: وقتی نوار پیشرفت به انتها برسد، ممکن است بازی برای چند لحظه فریز شود. این کاملاً طبیعی است و به دلیل کامپایل آخرین دسته از Pixel Shader و Vertex Shaderها رخ میدهد. فقط صبر کنید تا بازی دوباره ادامه پیدا کند.
پس از چند ثانیه دیگر، اگر همه چیز درست پیش رفته باشد، ظاهر منوی بازی تغییر میکند و ممکن است یک افت فریم یا مکث کوتاه مشاهده کنید. این اتفاق به خاطر ساخت Shader Target جدید است.
برای اطمینان بیشتر، منوی Shader Targets را باز کنید. اگر Shader Targetها در آن نمایش داده شدند، یعنی ماد کاملاً فعال است و شیدرهای بازی را بهدرستی شناسایی کرده است.
تمام شد!
از اینجا به بعد میتوانید بازی را ادامه دهید یا حتی آن را ببندید و دوباره اجرا کنید. تغییرات ماد در اجرایهای بعدی نیز باقی خواهند ماند و Shader Injector بهصورت خودکار شیدرهای جایگزین را از کش بازی بارگذاری میکند.
شیدرهای جایگزین حتی در صورت ارتقا یا بازگرداندن نسخه بازی (از نسخه 1.0.0.0 تا 1.0.0.5) نیز حفظ میشوند و معمولاً دیگر نیازی به انجام دوباره مراحل نصب نخواهید داشت.
نکته پایانی اینکه بسته به محلی که در بازی قرار دارید، ممکن است همه شیدرها از همان ابتدا بارگذاری نشوند. اگر وارد منطقهای شوید که یک Shader Target جدید نیاز داشته باشد، بازی برای اولین بار آن را ایجاد میکند که ممکن است باعث یک لگ یا افت فریم کوتاه شود. پس از ساخته شدن، این Shader Target ذخیره میشود و در دفعات بعد دیگر چنین مکثی رخ نخواهد داد.
بعد از این مرحله، دیگر نیازی به دستکاری Shader Injector ندارید و میتوانید با خیال راحت بازی را ادامه دهید.