Lumen

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

Lumen (он же Люмен, он же Глобальное освещение и отражения в реальном времени на основе воксельной трассировки лучей и аппроксимации диффузного освещения при помощи сферических гармоник , он же То, что заставляет твою 4090 потеть в 4К) — технология глобального освещения и отражений (GI), разработанная Epic Games и впервые представленная в Unreal Engine 5. По сути, это попытка достижения фотореалистичного освещения без полного path tracing, но с таким количеством аппроксимаций и эвристик, что порой трассировка лучей кажется более простым решением.

Суть[править]

Представь себе, что ты — разработчик игр, просветленный адепт physically based rendering (PBR) и мечтаешь о полной консистентности освещения. Ты хочешь, чтобы в твоей игре каждый фотон вел себя как в жизни, но рейтрейсинг — это дорогое удовольствие, доступное только илите и владельцам кремниевых монстров от Nvidia. И тут нисходит сам Тим Суини в сиянии HDR и говорит: «Держите, смертные, Lumen!».

Lumen работает по гибридному принципу, комбинируя Screen Space Global Illumination (SSGI) с воксельной трассировкой лучей и многоуровневой системой кэширования. То есть он смотрит, что у тебя на экране, строит воксельное представление сцены и пытается симулировать распространение света. Но если SSGI — это наивный алгоритм, который использует только данные G-Buffer, то Lumen — это уже серьезный зверь, способный на многое.

Lumen использует несколько техник, чтобы достичь своей цели:

  • Software Ray Tracing with Hardware Acceleration — да-да, тот самый рейтрейсинг, но с некоторыми допущениями. Lumen трассирует лучи в воксельном представлении сцены, что позволяет получить грубые, но быстрые результаты. Трассировка производится на compute shaders, но может использовать аппаратное ускорение RTX для пересечения лучей с вокселями. Это все еще не path tracing, но уже что-то.
  • Hierarchical Scene Representation — Lumen строит иерархическое представление сцены, используя воксели разного уровня детализации (LOD). Это позволяет оптимизировать трассировку лучей, сосредотачивая вычисления на ближайших объектах и используя грубые аппроксимации для удаленных.
  • Surface Cache — Lumen кэширует информацию об освещении на поверхностях, чтобы не тратить время на повторные вычисления. Этот кэш используется как для диффузного, так и для спекулярного освещения, что позволяет значительно ускорить работу алгоритма. Однако, этот кэш может приводить к артефактам, особенно при быстрых изменениях освещения или геометрии.
  • Mesh Distance Fields — Lumen использует signed distance fields (SDF) для определения расстояния до ближайших поверхностей. Это позволяет ему более точно рассчитывать затенение и глобальное освещение, особенно в сложных сценах. SDF генерируются заранее и хранятся в виде текстур, что ускоряет доступ к ним.
  • Final Gather with Temporal Anti-Aliasing — на последнем этапе Lumen собирает всю информацию, которую он получил, и генерирует финальное изображение. При этом он использует технику, похожую на final gathering, но с дополнительной фильтрацией и темпоральным сглаживанием. Это позволяет уменьшить шум и артефакты, но может приводить к размытию изображения и ghosting эффектам.
  • Radiance Probes for Indirect Lighting — для аппроксимации непрямого освещения от статичных объектов Lumen использует массив radiance probes, расположенных в сцене. Эти probes захватывают информацию об освещении в окружающем пространстве и используют ее для освещения динамических объектов. Это позволяет достичь более реалистичного освещения, но требует предварительного просчета radiance probes.
App.png Весьма полезная вещь, позволяет машинам работать с помощью коммандычей
МетаПрограммаDRM (SecuROMStarForceАналоговая дыра) • БагБот (Автоответчик) • Варез (Repack) • ГлюкГуйДонатКопирайт (By design) • ЛогНюкРут (Не работай под рутом) • Спортивное программированиеМегапиксельКомпьютерВерсия 2.0КодОбфускацияСкриншотДатамайнПлагинТекстовый файлБольшие данныеАльфа и бета-тестыТаймстампКэшШаблоныHello WorldНейросетиФайлИнсталляцияВидеоМощный сбой Microsoft 19 июля 2024 годаCrowdStrikeПроект GNUUserscriptDxvkVkd3dБратан хорош давай давай впередКонечный автоматLumenЗаступник (приложение)NeeUnreal MCPОптимизацияДрайверТестированиеТройная буферизацияQBitTorrentСинтезатор
ФичиБагрепорт12309BSODCookiesEmbrace, extend and extinguishFL StudioSheep.exeWinlogon.exeБубенЗащита от дуракаКостыльМашинный переводПасхальные яйцаСвистелки и перделкиСм. рис. 1Съешь ещё этих мягких французских булокTermuxGNU MetroИндусский кодНескучные обои • Сжатие (За сжатие ДжипегаШакалШкала) • Работает — не трогайРандомайзерPDF (Распознавание PDF) • Дело Google в ФАСЧат-ботXMLМакросКритическая ошибкаФреймворкСинонимайзерSourceТрёхмерное отслеживаниеТрассировка фотоновHZB OcclusionДаунгрейд RTX 4070TressFXАвтопереводчикVSCodiumThorium BrowserShovelwareФайл подкачки
ВредоносноеБотнетБрутфорсВинлокЗвонилкаКитайские пингвиныПиксель смертиТроянЧервь МоррисаBonziBuddyMediaGetBrowser hijackingTinderМиссис МажорУтечка буфера обменаWin 10 TweakerОпараш Mozilla FirefoxЯндекс.МузыкаКрэкерБезопасность через умолчаниеGrifter.aviTrojan.Winlock.DeathМиссис МажорСредаDirectStorageDriverpackГенератор случайных чиселDisable Core 0РомхакингDDrawCompatWingetCreateWinGetCoowonЯндекс МессенджерVCPkgSELinuxXfireYouTube Auto-ResumeTape OperatorBotFatherMTProtoSignalDoubleClickFixGiteeБотофермаMalware
КомпанииApple / Apple (AppleScript) • GoogleMicrosoftSAPЯндексExiled Exchange 2BraveAdNauseamСкурвление FirefoxCafe BazaarAMD FEMFXPPSSPPАвтохукQuick machine recoveryMAXBypassNROWizTreeJTubeGallium NineFalconRu-WireGuardМобильное приложениеWebRenderСмс-бомберInstaller-SHProton GEProcess LassoParkControlDolby Access
Движения8-bitOpen source (КрасноглазикиЛинуксоиды) • Вирусная сценаДаунгрейдДемосценаМоддингMMDDirectDrawЛагиБлокировка Дискорда в РоссииOpera GXНесоответствие MIME-типаRenoisePygameLs (UNIX)МетаданныеПатчNginxПиксельЭмуляторSearxТамТамMallocСвязный списокSOLIDGreasemonkeyПлатные сообщенияFlatpakNouveauFuse.jsFellouИстория браузера
Офис3DS MAXGIMPGNU EmacsMovie MakerMS Paint • OpenOffice • PowerPointviMicrosoft WordExcelБлокнотФотошопАнтивирус КасперскогоAvast!TikZShareXAlternativeToСкрепышMicrosoft OfficeТекстовый редакторWeChatZoomДиспетчер задачMicrosoft CortanaWinampBallonTranslatorKerish DoctorОбщая ошибкаFirefox: Как один баг сломал весь YouTubeМеждулициеMeld StudioLadybirdCheat EngineTotal Commander
ОСAndroidBSDDOSMenuetOSReactOSWindows (Phone 7Phone 878Vista) / МаздайЛинуксРусская ОСФантом ОСIndex.phpCompassУход мэйнтейнера NouveauБойкот лаунчеровAria2cNoiceMinecraft-Installer.exeDirectX
БраузерыInternet ExplorerОпера / Opera • Тормозилла (ОгнелисLolifoxMozilla FirefoxFirefoxFirefox Klar) • Хром (шпионаж) • SafariЯндекс.БраузерУведомления в браузереVivaldiTor-браузерЗосимаФронтенд
ИнтернетAdobe Systems (Flash) • I2PLow Orbit Ion CannonTorTunatic • Чат−клиенты (MirandaQIPSkypeЖабберDiscordVIPole) • HTTPSПрокси-сервер (Proxifier) • Торрент (Magnet-ссылкаΜTorrent) • JavaScriptCSSHTMLБаннермейкерИзменение TTL сетевых пакетовКапчаICQFiddlerViberZonaSteamSillyTavernWickr Me
РазработкаBrainFuckCC++C#JavaHaskellАссемблерChaos ConstructionsBATMySQLGitHubAutoHotKey (AutoHotInterception) • Sublime TextAPK (APKPureзапрет) • BASICPerlPythonPHPФоркUnity3DSAISIPСАПРФлагUTAUФласк макросАуработRaidCallAdobe MingОфициальный™ список кошерных программDevOpsНиколай ДуровЗаброшенное ПО
ЛюдиВеб-мастерLovinGODБалмерГейтсГенерал ФейлорДжобсМитникПоттерингде РаадтСпольскиСтоллманТорвальдсШахиджанянAche666Марк ЦукербергЕвгений ПоповДенис КумпонМассовая компьютерная безграмотность
КостылиCygwin • PunkBusterT9WineWishmasterАнтивирусыХакинтошСборки WindowsDenuvoЧистая установкаКалькулятор Consul WarMicrosoft StoreUBlock OriginLightshotAdBlockSearchApp.exeCPU-ZГуглPhotoshopКаптча с пчёламиВзлом Windows через MetasploitЩЩ Мессенджер
Команды^H^WAlt+F4Ctrl+Alt+Delman/me/quitrm -rf
3525.pngМаньяк готовится напасть, чтоб завладеть сим афедроном
ИгрыAlpha ProtocolAlan WakeCall of Duty: Black OpsDetroit: Become HumanHeavy RainMax Payne (I23) • ActionAssassin's CreedGrand Theft Auto (СерияIIIIIIVVice CityChinatown WarsSA:MP) • Legacy of KainLost VikingsMafiaMinecraftPortalPrince of PersiaPrototypeResident Evil (4) • Space Station 13Splinter CellThiefTomb RaiderUnchartedGrand Theft Auto: San AndreasManhuntWheelmanWatch Dogs 2D&D OnlinePrime WorldWorld of WarplanesCrimeCraftPersona 2Among The SleepToca LifeMoorhuhn Kart 2Reverse: 1999
СерииRise of NationsCookie ClickerHumble Indie BundlePersonaStar Wars: The Old RepublicSword Art OnlineLife is StrangeHeroes & GeneralsNew TekkenМор. УтопияKenshiTransformiceJade DynastyQuest for GloryAsphaltAmong UsBattletechMagickaDragonStrikeГорький-17DayZNeverwinter NightsOutsideSuffer: Secluded quiet placeThe Wizard of Oz: Beyond the Yellow Brick RoadQuake IIQuake 4Смерть (Phasmophobia)Poppy PlaytimeRap RatВремена РаздораCall of Duty: Black Ops 6OasisRockmanSnake Rattle 'n' RollStar ControlTouhou ProjectWorld of GooWormsВангерыОхотник на кого-то не тогоПозвоните КузеСапёрБукашкиMetal Gear
ЭпическоеBombermanCities: Skylines 2CralonThe Punisher (игра)Dynasty Warriors 8TattletailEternal Darkness: Sanity's RequiemDe dust2Mad Detective and Super AbbieFear & Hunger: TerminaЭлектроника (серия игр с жидкокристаллическим экраном)Empire EarthThe Need for SpeedCall of Duty 2GameBananaAs Dusk FallsХранители: Ключ жизниLumenFoxholeElden Ring: NightreignПриключения КенниAnimal CrossingIdolish7Подземелья КремляSerious KonstTimes of StrifeSandlot GamesТетрисХроники ХаосаNo Man's SkyPlague IncNeed For SpeedCave StorySpyroComix ZoneStar ConflictRockman 2: Dr. Wily no NazoSonic the Hedgehog (16 бит)Sonic the Hedgehog 2 (16 бит)Sonic 3 & KnucklesRockman 3 Dr. Wily no Saigo!?Candy Crush SagaGeometry DashRobot Unicorn Attack
На все временаFate/Stay NightKatawa ShoujoPhoenix WrightTsukihimeUmineko no Naku Koro niHigurashi no Naku Koro niБесконечное летоDoki Doki Literature Club!Yandere SimulatorSteins;GateИстории Дида: МультивселеннаяDiablo IIТанки ОнлайнThe Binding of IsaacUndertaleHotline Miami • ККИ (ГвинтБерсерк (ККИ)Yu-Gi-Oh!) • Гача-игры (Genshin ImpactDiablo Immortal) • Star RealmsHearthstoneGuilty GearKiller InstinctMortal Kombat (ПерсонажиСерия игрМиры) • EliteF-19Guitar HeroKerbal Space ProgramSporeThe SimsДальнобойщикиИл-2 ШтурмовикPokemon GoАвиасиммерRustLockONKingpin: Life of CrimeAction 52Angry BirdsAnother WorldBattletoadsCarmageddonChip-chan KickContraCrimsonlandDangerous DaveDiggerEarthworm JimElasto ManiaFlashbackNekketsuPacman