Roughness cut-off

Материал из Неолурк, народный Lurkmore
Перейти к навигации Перейти к поиску

Roughness cut-off (он же отсечение по шероховатости, мыльный горизонт, убийца графония) — величайший технический костыль и самая циничная оптимизация в новейшей истории компьютерных игр, придуманная для того, чтобы твоя видеокарта не превратилась в доменную печь при виде заветных букв RTX ON. Суть этого шаманства проста до безобразия: если внутриигровая поверхность недостаточно гладкая и блестящая, как лысина маркетолога NVIDIA, то движок, лениво махнув рукой, просто отказывается считать для неё честные отражения. Зачем напрягаться, если хомячок всё равно будет считать кадры, а не блики на асфальте?

Куда деваются лучи[править]

Для понимания всей глубины этого наглого обмана, необходимо натужно включить свой моск. Возьмём идеальное зеркало. Луч света, как послушный мальчик, отскакивает от него под тем же углом, под которым прилетел. Рассчитать траекторию такого паиньки для компьютера — задача тривиальная. А теперь представь себе не зеркало, а, скажем, бетонный пол в промзоне, потёртый деревянный стол или шершавый пластик на твоём стволе. Луч света, попадая на такую шероховатую (англ. rough) поверхность, бьётся об неё в истерике и разлетается в тысячи разных направлений, как гости со свадьбы после драки.

Чтобы твой мощнейший ПеКа смог отрисовать этот хаос, ему нужно для каждого пикселя просчитать судьбу целого вороха таких обезумевших лучей. Увидев подобную перспективу, даже самая топовая видеокарта начинает громко выть кулерами, ронять FPS в район плинтуса и угрожать термическим коллапсом. И тут, в лучах божественного света (который они, кстати, тоже сэкономили), появляются гении оптимизации из Epic Games и прочих контор.

Великая иллюзия и её разоблачение[править]

Слева: твои отражения украли во имя 60 FPS. Справа: твои FPS украли во имя отражений. Классика.

Разработчики игр — народ прагматичный. Они прекрасно понимают, что 95 % игроков скорее пожертвуют реалистичными отражениями на матовой стене, чем возможностью похвастаться стабильными 60 кадрами в секунду. Так и родилась циничная в своей гениальности идея — отсечка по шероховатости. В настройках движка, например Unreal Engine, есть специальный параметр, который так и называется: r.RayTracing.Reflections.MaxRoughness. Он задаёт пороговое значение.

Когда рендерится кадр, движок смотрит на каждый материал и думает: «Так, что у нас тут? Пол. Коэффициент шероховатости — 0.6. А порог у нас стоит 0.5. Это что же, мне для этой раздолбанной плитки считать все эти диффузные отражения? А не пошли бы вы… к старым добрым кубическим картам?». И всё. Вместо честного, физически корректного, но дико затратного отражения ты получаешь в лучшем случае мутное пятно из какого-нибудь Reflection Probe или, что чаще, вообще ничего. PROFIT! Производительность спасена, игрок доволен циферками в углу экрана.

На пикче справа можно наблюдать, как это должно выглядеть в светлом будущем победившего паттрейсинга. Трассировка пути, в отличие от своего кастрированного младшего брата, не признаёт компромиссов. Она честно, как японский инженер, симулирует всю эту вакханалию отскочивших лучей, создавая мягкие, правдоподобные, слегка размытые отражения даже на самых, казалось бы, неотражающих поверхностях. Выглядит это божественно. И так же божественно ставит на колени любую современную систему. Разница в производительности между «обычным» RTX и полноценным PT может достигать десятков раз.

В сухом остатке имеем, что хвалёный Ray Tracing в 9 из 10 игр — это не более чем красивая демка настоящей технологии. Тебе дают поиграться с самыми очевидными её проявлениями, вроде идеальных отражений в лужах или на стекле, а всю сложную и по-настоящему красивую физику света прячут за ширмой roughness cut-off. Это как купить Феррари, у которой в целях экономии топлива и сохранения ресурса двигателя активны только две передачи из восьми. Ездить можно, но ощущение, что тебя где-то обманули, не покидает. И пока наши кремниевые друзья не научатся считать со скоростью света, этот компромисс будет с нами, превращая потенциально фотореалистичные миры в слегка замыленные декорации.

Мышо.png Там счёт идет, баббага свет из афедрона поступает
ОсновыКомпьютерЭлектронно-вычислительная машинаПодсветка компьютераГрафические артефактыMacBook / МакбукДва монитораКомпьютеры Ворон и БобёрКалькуляторУгольный компМеждулициеКлавиатураМассовая компьютерная безграмотностьКомпуктерМемристорАппаратное ускорениеСистемный блокРасовое превосходство ПКОтупение человечества из-за компьютеровГенератор случайных чиселМикросхемаКомпьютеры пятого поколенияШифровкаИБПМониторДрайверСуперкомпьютерТелеметрияПробелHI-FRCТоп производителей наушников
ПроцессорыРоссийский процессорRyzen 5 9600XDisable Core 0Infinity FabricX87Кулер процессорныйЦентральный процессор
ВидеокартыСгорание видеокартыGeForce 256GeForce 600NVIDIA OptiXNVIDIA Frame GenerationNvidia 3D VisionRTX 5090PhysX RIPNvidia Pre-rendered FramesRTX Mega GeometryMVSSМайнингНародный DLSSNvidia QuadroNvidia TeslaRTX PRO 6000GainwardPrecision Boost OverdriveAMD TruFormInno3dNVIDIA ReflexNVIDIA Smooth MotionDLSSNvidia HFTSNVIDIA Volumetric LightingNvidia NRCDisplayHDR True BlackФиолетовое свечение OLED
Хранилища данныхМесто на дискеКомпакт-дискПроверка памяти компьютераДедикОперативная памятьКривые флопыАрхивация и резервное копирование на оптический дискОптический дискДефрагментацияЗагрузите больше РАМROMЖёсткий дискSSDAMD FEMFXLXAAВаттное недомогание видеокартQuincunx Super Anti-Aliasing
ПрочееВиртуальная реальностьAMD vs IntelЕда за компьютеромПролил кофе на клавиатуруКомпьютерно-техническая экспертизаЗаправка картриджейAlt-TabКулерКремниевая пирамидаНоутбукATI vs NvidiaКомпьютерная мышьКомпьютерное зрениеКомпьютерная мышь в холодильникеRDNA 4ZalmanОверклокинг ЭЛТ-мониторовLG Optimus 3DЧастота опроса мышиТоп производителей блоков питанияДребезг контактовСкроллингRGB LEDKingSpec80 PLUSBe quiet!DINKioxiaШахматный рендерингGtG
МемыЖивотные за компьютеромСиний экран в публичном местеПеределка фамиклона из PAL в NTSCТысячеричная система счисленияБезопасность через умолчаниеПК vs консолиКрэкерСтруйный принтерЗмея в принтереПостукивание пальцем по клавиатуреВампир на клавиатуреЗмея в системном блокеЭникейщикКот за комьютеромOptaneResizable BARСпермопроблемы