Комп’ютерні ігри переходять на новий рівень якості, пропонуючи гравцям віртуальне оточення, яке максимально повторює реальність. Такий стрибок став можливим завдяки технології трасування променів, яку голова програмного менеджменту Xbox Джейсон Рональд називає «святим граалем» комп’ютерної графіки. Ось чому трасування променів є таким проривним.
Як графіку в іграх наближають до реальності
Люди сприймають об’єкти значною мірою завдяки тому, як вони освітлені та які тіні генерують. У реальному світі будь-яке джерело світла – екран комп’ютера, смартфона, Сонце, ліхтарик – генерує світлові промені. Ці промені переміщуються по прямій, поки не стикнуться з якимось об’єктом. Залежно від матеріалу поверхні цього об’єкта частина променів відбивається і прямує до наступної перешкоди, де знову відбивається, і так до повного розсіювання.
Частина променів потрапляє в очі спостерігача, який за освітленістю різних ділянок визначає випуклі та впалі області на об’єктах, їхнє взаємне розташування тощо. Для втілення цього у віртуальності потрібна велика обчислювальна потужність.
Підписуйтесь на наш канал у Telegram: https://t.me/techtodayua
Комп’ютери минулих років були значно слабкішими, ніж сьогодні. Тому десятиліттями ігробудівні студії імітували освітлення та тіні за допомогою, наприклад, карт освітлення. Це заздалегідь запрограмовані карти освітлення об’єктів, які добре виглядають у статиці. Але при переміщенні по віртуальній сцені ілюзія ламається. Наприклад, в іграх при віддаленні від дзеркала може зникати віддзеркалення.
З початку 2000-х в індустрії почали використовуватися шейдери. Вони піднімали якість динамічного освітлення, але потребували збільшеної обчислювальної потужності. Тому розробники також йшли на хитрощі, наприклад, обчислювали лише частину об’єктів у сцені.
Чому трасування променів
Трасування променів на комп’ютерах виконується за схожими принципами з реальністю: віртуальне джерело світла генерує промені, й обраховується шлях кожного з них до віртуальної камери, разом з відбиттям від об’єктів. Це дозволяє генерувати реалістичне освітлення об’єктів та тіні.
Однак трасування променів потребує дуже великих обчислювальних потужностей. Навіть сьогодні можна побачити, що демонстрації трасування найчастіше проводять для гладких, майже дзеркальних поверхонь. Матові шершаві поверхні виконують набагато більше відбиттів променів, що потребує суттєвого зростання потужностей.
Чому зараз
Технологія трасування променів не нова, однак вона потребує значної обчислювальної потужності. Тому її багато років використовують у кінематографі, де на обробку одного кадру можна витратити багато часу. Доба на обробку одного кадру не викликає подив у спеціаліста з кіно.
Для комп’ютерних ігор обчислення необхідно виконувати в реальному часі, і «залізо» того часу не могло впоратися з таким завданням. Адже комп’ютеру потрібно встигати обраховувати всі промені за 1/60 секунди. Лише зараз «залізо» досягло необхідної потужності. Прорив стався, коли Nvidia минулого року оголосила про випуск відеокарт зі спеціальними блоками для обчислення трасування променів. Також Microsoft вбудувала відповідні технології у Windows 10.
Трасування променів для всіх
Сьогодні використання трасування променів залишається нішевим, однак все може змінитися з виходом ігрових приставок наступного покоління – Microsoft Xbox Series X та Sony PlayStation 5. Вони засновані на чипах від Advanced Micro Devices (AMD), які мають блоки трасування променів.
Усе більше ігробудівних студій залучають трасування променів у свої проекти. Розроблена у 2009 році Minecraft від студії Mojang, яка має статус гри з найбільшими продажами в історії, у 2020 році отримала версію з трасуванням променів.
Віцепрезидент підрозділу технологій симуляції Nvidia Рев Лебаредіан каже, що поштовх до популяризації трасування променів надав також карантин. Люди хочуть почуватися поруч, перебуваючи в ізоляції. Віртуальна та доповнена реальність може певною мірою забезпечити таке відчуття.
З такою думкою погоджується і головний архітектор ігрових рішень AMD Френк Азор. Він вважає, що коронавірус сприятиме збільшенню попиту та прогресу.
Що далі
Відеокарти добре вміють робити одну справу – одночасно проводити велику кількість однакових обчислень. Тому у них добре виходить обраховувати промені, які поширюються паралельно один одному. Проблеми виникають, коли промені мають перетинатися, а саме цей ефект створює реальне відчуття освітлення та тіней.
Змусити паралельні процеси обмінюватися даними між собою складно. Рональд вважає, що вирішення цієї проблеми є головним завданням у поліпшенні комп’ютерної графіки в найближчі 5-7 років.
Тим часом ігри продовжать використовувати різні трюки для заощадження обчислювальної потужності. Для більшості ігор цього вистачить, щоб надати привабливу картинку.
За матеріалами: BBC