Ray tracing - bu sahna bo'ylab nurlar yo'lini kuzatish orqali tasvirni yaratuvchi kompyuter grafikasini ko'rsatish usuli. Nurlar sahnadagi ob'ektlar bilan o'zaro ta'sir qilishi, ulardan sakrab tushishi va rang kabi xususiyatlarga ega bo'lishi mumkin.
Nurlarni kuzatish: Asoslar
Ray kuzatuvi haqiqiy yorug'likni taqlid qiladi. Biz ko'rgan yorug'lik quyosh kabi energiya manbalaridan chiqadigan fotonlarning natijasidir. Fotonlar ob'ektlar bilan to'qnashganda sakrab tushishi va tarqalishi mumkin. Buni amalda ko'rish uchun faqat oyna kerak. Oynaga tushgan yorug'lik aksni hosil qiladi.
Nurlarni kuzatish buni simulyatsiya qiladi. Kuzatilgan nurlar soni bizning ko'rish maydonimiz bo'ylab millionlab fotonlar o'tadigan haqiqiy dunyo bilan solishtirganda juda kam. Zamonaviy o'yinlar har bir piksel uchun bir va to'rt nur oralig'ida joylashgan. Shunga qaramay, bu haqiqiy dunyoni taqlid qilish uchun yetarli.
Nurning yoʻlini kuzatish ham unga oʻyin dunyosi bilan oʻzaro aloqada boʻlish imkonini beradi. Qizil ob'ektdan sakrab tushgan nurga bu rang ta'sir qilishi mumkin va yaqin atrofda qizil nur paydo bo'lishi mumkin. Nurlar oʻyin sanʼatkorlarining obʼyektlarga bergan xususiyatlariga qarab turli yoʻllar bilan tarqalishi mumkin, bu esa real yarim aks ettiruvchi yoki qoʻpol yuzalarga imkon beradi.
Nurlarni kuzatish 3D grafika uchun muhim qadamdir. O'yin davomida harakatlanayotgan nurlarning yo'lini taqlid qilish orqali real tasvirni yaratadi. Bu atrof-muhit o'yinchiga ko'rinmasa ham, atrof-muhit bilan o'zaro ta'sir qilishi mumkin bo'lgan yoritishga olib keladi. Ray tracing ishlashi uchun maxsus ishlab chiqilgan uskuna talab qilinmaydi, lekin u faqat video karta yoki oʻyin konsolida amaliy boʻlib, u juda talabchan boʻlgani uchun nurlarni kuzatishni tezlashtiradi.
Ray Tracing va Rasterizatsiya (yoki siz bilganingizdek 3D grafik)
Bu tushuntirishni tushunsangiz ham, siz hali ham adashishingiz mumkin. O'tmishdagi o'yinlarda, hatto bir necha o'n yilliklar eskirganlarida ham mulohazalar mavjud edi. Nurlarni kuzatish qanday farq qiladi?
Oʻtgan 3D oʻyinlar va koʻpgina zamonaviy oʻyinlar rasterizatsiyadan foydalanadi. Rasterizatsiya o'yinchiga ko'rinadigan 3D o'yin dunyosi elementlarini 2D tasvirga birlashtiradi. U faqat o'yinchiga ko'rinadigan narsani ko'rsatadi, chunki o'yinchi ko'ra olmaydigan narsalarni yaratish uchun foydalanilgan har qanday ishlash behuda bo'ladi. Biroq, bu muammo yaratadi.
Oyna misoliga qaytaylik. O'yinchining muhiti va o'yinchi xarakteri o'yinchiga ko'rinmaydi (hech bo'lmaganda birinchi shaxs o'yinida). Rasterlash bilan oynada hech narsa aks etmaydi.
Albatta, zamonaviy o'yinlarda nometall mavjud. Ular sahnani ikki marta ko'rsatadilar. Bir pas o'yinchi nuqtai nazaridan, boshqasi esa boshqa nuqtai nazardan. Bu sahna ko‘rsatish uchun zarur bo‘lgan unumdorlikni ikki baravar oshiradi.
Mashhur 3D oʻyin dvigatellaridagi usul boʻlgan ekran boʻshligʻini aks ettirish, aks ettirish uchun ekrandagi maʼlumotlardan foydalanadi. Ushbu uslub suv kabi o'yinchining nuqtai nazariga burchak ostida aks ettiruvchi yuzalar uchun idealdir. Biroq, aks ettirilgan element ekrandan tashqariga siljisa, aks ettirilgan ob'ektlar yo'qoladi.
Nurli kuzatuv bu muammolarni baham koʻrmaydi, chunki rasterlashdan farqli oʻlaroq, u pleyer nuqtai nazaridan tashqarida kuzatilishi mumkin.
Shuningdek, nurlarning yuzalar bilan oʻzaro taʼsiriga ruxsat beruvchi oʻyinlarda ray tracing haqiqiy ranglarning oqishi va rasterlashtirish qiyin boʻlgan yarim aks ettiruvchi yuzalarni koʻrsatishi mumkin.
Ray kuzatuvi qanday apparatni talab qiladi?
Nurlarni kuzatish yangi gʻoya emas. Kompyuter olimlari 1980-yillarning boshlarida nurlarni kuzatish bilan tajriba o'tkazdilar, ular real yorug'lik, ko'zgu va soyalar bilan statik tasvirlarni yaratdilar. Afsuski, ularni tasvirlash uchun soatlab ketdi.
Video oʻyin real vaqt rejimida sekundiga 30 kvadrat yoki undan yuqori tezlikda nurlanishni talab qiladi. Bu faqat nurlarni kuzatishni tezlashtirish uchun moʻljallangan video karta bilan mumkin.
Nvidia-ning RTX nurlarini kuzatish Tensor Core deb nomlangan kremniyga tayanadi. Tensor yadrolari faqat RTX video kartalarida mavjud. Nvidia-ning GTX kartalari ray tracing yordamida o'yinni ko'rsatishi mumkin, chunki aytganidek, ray tracing maxsus ishlab chiqarilgan kremniyni talab qilmaydi. Biroq, RTX kartalari bilan solishtirganda ishlash juda yomon. RTX ray tracingli Minecraft kabi baʼzi oʻyinlar nurlarni kuzatishni yoqishning oʻziga xos usuli tufayli RTX video kartasini talab qiladi.
Nurli kuzatuvni tezlashtiradigan AMD kartalari maxsus brendga ega emas va maxsus kremniyga ega emas. Buning o'rniga ular yaxshi natijalarga erishish uchun apparat sozlamalari va dasturiy ta'minot yangilanishlaridan foydalanadilar. Nurlarni kuzatishni tezlashtiradigan AMD kartalarini aniqlash qiyinroq, shuning uchun tafsilotlarga e'tibor bering.
Sony's PlayStation 5 va Xbox Series X va S-da nurlarni kuzatishni tezlashtiradigan AMD grafik qurilmalari mavjud. Uni yoqish ishlab chiquvchilarga bog'liq, lekin ko'p o'yinlar yoqmaydi. E'tiborga molik misol - Cyberpunk 2077, u ishga tushirilganda kompyuterda RTX nurlarini kuzatishni qo'llab-quvvatladi, ammo keyingi avlod konsollarida nurlarni kuzatishni qo'llab-quvvatlamadi. Bu xususiyat kelajakdagi yamoqlarda keyingi avlod konsollari uchun va'da qilingan.