شاید بزرگترین معایب NTC مربوط به فیلتر بافت باشد. همانطور که با فناوری هایی مانند DLSS دیدیم، هنگام استفاده از بافت های فشرده شده از طریق NTC، امکان سوسو زدن تصویر و سایر مصنوعات بصری وجود دارد. و در حالی که بازیها میتوانند از فیلتر ناهمسانگرد برای بهبود ظاهر بافتها در فاصله دور با حداقل هزینه استفاده کنند، در حال حاضر چنین چیزی در مورد NTC Nvidia امکانپذیر نیست.
در متن: بازیهای امروزی از بافتهای بسیار دقیقی استفاده میکنند که میتوانند به سرعت بافر فریم را در بسیاری از کارتهای گرافیک پر کنند، که منجر به لکنت و خرابی بازی در عناوین اخیر AAA برای بسیاری از گیمرها میشود. با توجه به اینکه سازندگان پردازنده گرافیکی حتی در جدیدترین مدلهای میانرده از VRAM خسیسی دارند، وظیفه مهندسین نرمافزار است که راهی برای استفاده بیشتر از سختافزارهای موجود امروزی بیابند. شاید از قضا، امیدوارکنندهترین پیشرفت در این مسیر تاکنون از Nvidia حاصل شده است – فشردهسازی بافت عصبی میتواند نیازهای سیستم را برای عناوین AAA آینده، حداقل در مورد VRAM و ذخیرهسازی کاهش دهد.
علاقهمندان به گرافیک و توسعهدهندگان بازی که میخواهند در NTC غواصی عمیقی داشته باشند، میتوانند مقاله را در اینجا پیدا کنند – ارزش خواندن دارد. انویدیا همچنین الگوریتم جدید را در SIGGRAPH 2023 که در تاریخ 6 آگوست آغاز می شود، ارائه خواهد کرد.
با این حال، NTC محدودیت هایی دارد که ممکن است جذابیت آن را محدود کند. اول، مانند هر فشرده سازی با اتلاف، می تواند تخریب بصری را در نرخ بیت کم ایجاد کند. محققان تاری خفیف، حذف جزئیات ظریف، نوارهای رنگی، جابجایی رنگ و نشت ویژگیها بین کانالهای بافت را مشاهده کردند.
محققان توضیح میدهند که ایده پشت این رویکرد این است که همه این نقشهها را به همراه زنجیره mipmap خود در یک فایل واحد فشرده کنند و سپس آنها را در زمان واقعی با دسترسی تصادفی مشابه فشردهسازی بافت بلوک سنتی از حالت فشرده خارج کنند.
وقتی به آخرین نظرسنجی Steam نگاه می کنیم، می بینیم که 8 گیگابایت رایج ترین اندازه VRAM برای رایانه های شخصی با راه حل های گرافیکی اختصاصی است. این احتمالاً برای مدتی تغییر نخواهد کرد، به خصوص که ارتقاء کارت گرافیک هنوز گران است و به نظر نمی رسد سازندگان GPU علاقه ای به ارائه بیش از 8 گیگابایت حافظه گرافیکی در اکثر مدل های رایج ندارند.
در بازیهای مدرن، ویژگیهای بصری یک ماده در نقشههای جداگانه ذخیره میشود که نحوه جذب و انعکاس نور را توصیف میکند، و مجموعهای که استفاده میشود از یک موتور بازی به موتور دیگر متفاوت است. هر نقشه معمولاً نسخههای کوچکتر و اضافی نقشه اصلی را در همان فایل قرار میدهد. این به اصطلاح “mipmaps” برای بهینه سازی استفاده از حافظه گرافیکی در مواقعی که به وضوح کامل بافت مورد نیاز نیست، مانند زمانی که یک شی خاص از دید شما دور است، استفاده می شود.
همچنین بخوانید: چرا بازی های رایانه ای مدرن از VRAM استفاده می کنند؟
یک مزیت آشکار این است که توسعه دهندگان بازی می توانند از NTC برای کاهش نیازهای فضای ذخیره سازی و VRAM برای بازی های آینده استفاده کنند، یا حداقل، با قرار دادن بافت های بیشتر در همان فریم بافر و در نتیجه کاهش نیاز به تعویض آنها، لکنت را کاهش دهند. هنگام حرکت در یک محیط دقیق به داخل و خارج می شود. مزیت دیگر این است که NTC به ضرب ماتریس متکی است که در پردازندههای گرافیکی مدرن سریع است و حتی در هنگام استفاده از هستههای Tensor در پردازندههای گرافیکی GeForce RTX سریعتر است.
یکی از داغ ترین موضوعات در حال حاضر حول محور بازی های مدرن AAA و سیستم مورد نیاز آنها است. هر دو مشخصات حداقل و توصیه شده افزایش یافته اند، و همانطور که در عناوینی مانند The Last of Us Part I، Forspoken، The Callisto Protocol و Hogwarts Legacy دیده ایم، اجرای آنها حتی در 1080p با استفاده از پیش تنظیم Ultra اکنون مشکلاتی را برای گرافیک ایجاد می کند. کارت های مجهز به 8 گیگابایت VRAM.
همچنین بخوانید: چگونه رندر بازی سه بعدی کار می کند: بافت
الگوریتم جدید به سادگی فشرده سازی بافت عصبی (NTC) نامیده می شود و همانطور که از نامش پیداست از یک شبکه عصبی طراحی شده به طور خاص برای بافت مواد استفاده می کند. برای اینکه این سرعت برای استفاده عملی کافی باشد، محققان Nvidia چندین شبکه عصبی کوچک بهینهسازی شده برای هر ماده ساختند. همانطور که از تصویر بالا می بینید، بافت های فشرده شده با NTC جزئیات بسیار بیشتری را حفظ می کنند و همچنین به طور قابل توجهی کوچکتر از حتی همین بافت های فشرده شده با تکنیک های BC تا یک چهارم وضوح اصلی هستند.
فشردهسازی دهها هزار بافت منحصربهفرد برای یک بازی نیز زمان میبرد، اما انویدیا میگوید الگوریتم جدید ظاهراً ده برابر سریعتر از پیادهسازیهای معمولی PyTorch است. به عنوان مثال، بسته به سطح کیفیتی که تنظیم میکنید، میتوان یک بافت 9 کاناله 4K را با استفاده از Nvidia RTX 4090 در عرض یک تا 15 دقیقه فشرده کرد. محققان خاطرنشان میکنند که NTC از بافتهایی با رزولوشن تا 8K (8192 در 8192) پشتیبانی میکند اما ارقام عملکردی را برای چنین سناریویی ارائه نکرده است.
خبر خوب این است که انویدیا روی راه حلی کار می کند که می تواند استفاده از VRAM را کاهش دهد. در یک مقاله تحقیقاتی که این هفته منتشر شد، این شرکت الگوریتم جدیدی را برای فشردهسازی بافت توضیح میدهد که ظاهراً بهتر از هر دو روش فشردهسازی بلوک سنتی (BC) و همچنین سایر تکنیکهای فشردهسازی پیشرفته مانند AVIF و JPEG-XL است.
علاوه بر این، هنرمندان بازی نمیتوانند بافتها را به همان روشهایی که امروزه انجام میدهند، بهینه کنند، به عنوان مثال، با کاهش وضوح نقشههای بافت خاص برای اشیا یا NPCهای کمتر مهم. انویدیا میگوید همه نقشهها باید قبل از فشردهسازی اندازه یکسانی داشته باشند، که مسلماً گردش کار را پیچیده میکند. وقتی در نظر بگیرید که مزایای NTC در فواصل دوربین بزرگتر کاربرد ندارد، این بدتر به نظر می رسد.