Ray tracing არის ტექნიკა კომპიუტერული გრაფიკის გადასაღებად, რომელიც ქმნის სურათს სხივების გზის გაკვლევით სცენაზე. სხივებს შეუძლიათ ურთიერთქმედება ობიექტებთან სცენაზე, გადმოხტნენ მათ და მოიპოვონ ისეთი თვისებები, როგორიცაა ფერი.
Ray Tracing: საფუძვლები
Ray tracing ემსგავსება რეალურ სამყაროს განათებას. სინათლე, რომელსაც ჩვენ ვხედავთ, არის ენერგიის წყაროებიდან გამოსხივებული ფოტონების შედეგი, როგორიცაა მზე. ობიექტებთან შეჯახებისას ფოტონებს შეუძლიათ გადახტომა და გაფანტვა. სარკე არის ყველაფერი რაც თქვენ გჭირდებათ რომ ნახოთ ეს მოქმედებაში. სარკეში სინათლე ანარეკლს ქმნის.
Ray tracing ამის სიმულაციას ახდენს. მიკვლეული სხივების რაოდენობა უმნიშვნელოა რეალურ სამყაროსთან შედარებით, სადაც მილიონობით ფოტონი ატრიალებენ ჩვენს ხედვის ველზე. თანამედროვე თამაშები თითო პიქსელზე სადღაც ერთ-ოთხ სხივს აფიქსირებს. მიუხედავად ამისა, ეს საკმარისია რეალური სამყაროს სიმულაციისთვის.
სხივის ბილიკის მიკვლევა ასევე საშუალებას აძლევს მას ურთიერთქმედდეს თამაშის სამყაროსთან. სხივზე, რომელიც წითელ ობიექტს აფრქვევს, შეიძლება გავლენა იქონიოს ამ ფერმა და იქვე ასხივოს წითელი ბზინვარება. სხივები შეიძლება გაიფანტოს სხვადასხვა გზით, იმის მიხედვით, თუ რა თვისებები აძლევენ თამაშის შემსრულებლებს ობიექტებს, რაც საშუალებას იძლევა რეალისტური ნახევრად ამრეკლი ან უხეში ზედაპირები.
Ray Tracing არის მნიშვნელოვანი წინგადადგმული ნაბიჯი 3D გრაფიკისთვის. ის ქმნის რეალისტურ გამოსახულებას სხივების გზის სიმულაციის გზით, როდესაც ისინი მოძრაობენ თამაშში. ეს იწვევს განათებას, რომელსაც შეუძლია ურთიერთქმედება გარემოსთან მაშინაც კი, როდესაც გარემო არ არის ხილული მოთამაშისთვის. Ray Tracing არ საჭიროებს სპეციალურად აშენებულ აპარატურას ფუნქციონირებისთვის, მაგრამ ის პრაქტიკულია მხოლოდ ვიდეო ბარათზე ან სათამაშო კონსოლზე, რომელსაც შეუძლია დააჩქაროს სხივების მიკვლევა, რადგან ეს ძალიან მოთხოვნადია.
Ray Tracing vs. Rasterization (ან, 3D გრაფიკა, როგორც თქვენ იცით)
შეიძლება მაინც დაბნეული იყოთ მაშინაც კი, თუ ეს ახსნა გესმით. ანარეკლი იყო წარსულ თამაშებში, თუნდაც რამდენიმე ათეული წლის წინანდელ თამაშებში. რით განსხვავდება სხივების მიკვლევა?
წარსული 3D თამაშები და ყველაზე თანამედროვე თამაშები იყენებენ რასტერიზაციას. რასტერიზაცია აერთიანებს მოთამაშისთვის ხილული 3D თამაშის სამყაროს ელემენტებს 2D გამოსახულებაში. ის ასახავს მხოლოდ იმას, რაც უნდა იყოს ხილული მოთამაშისთვის, რადგან ნებისმიერი შესრულება, რომელიც გამოიყენება იმის შესაქმნელად, რასაც მოთამაშე ვერ ხედავს, იკარგება. თუმცა, ეს ქმნის პრობლემას.
მოდით, დავუბრუნდეთ სარკის მაგალითს. მოთამაშის გარემო და მოთამაშის პერსონაჟი არ ჩანს მოთამაშისთვის (ყოველ შემთხვევაში, პირველი პირის თამაშში). რასტერიზაციასთან ერთად სარკე ვერ ასახავს.
რა თქმა უნდა, სარკეები არსებობს თანამედროვე თამაშებში. ისინი ორჯერ ასრულებენ სცენას. ერთი პასი არის მოთამაშის თვალთახედვიდან, ხოლო მეორე სხვა პერსპექტივიდან. თუმცა ეს აორმაგებს სცენის გადასაღებად საჭირო შესრულებას.
ეკრანის სივრცის ასახვა, ტექნიკა პოპულარული 3D თამაშების ძრავებში, გამოიყენეთ ეკრანის მონაცემები ასახვის შესაქმნელად. ეს ტექნიკა იდეალურია ამრეკლავი ზედაპირებისთვის მოთამაშის პერსპექტივის კუთხით, როგორიცაა წყალი.თუმცა, ასახული ობიექტები ქრება, თუ ასახული ელემენტი ეკრანიდან გადადის.
Ray Tracing არ იზიარებს ამ პრობლემებს, რადგან, რასტერიზაციისგან განსხვავებით, მას შეუძლია მოთამაშის პერსპექტივის მიღმა.
ასევე, თამაშებში, რომლებიც სხივებს ზედაპირებთან ურთიერთქმედების საშუალებას აძლევს, სხივების მიკვლევას შეუძლია აჩვენოს რეალისტური ფერის სისხლდენა და ნახევრად ამრეკლი ზედაპირები, რომლებიც რთულია რასტერიზაციისთვის.
რა აპარატურას მოითხოვს Ray Tracing?
Ray Tracing არ არის ახალი იდეა. კომპიუტერულმა მეცნიერებმა 1980-იანი წლების დასაწყისში ჩაატარეს ექსპერიმენტები სხივების კვალზე, ქმნიდნენ სტატიკური გამოსახულებებს რეალისტური განათებით, ასახვითა და ჩრდილებით. სამწუხაროდ, მათ საათები დასჭირდათ.
ვიდეო თამაშს სჭირდება რეალურ დროში სხივების მიკვლევა 30 კადრი წამში ან მეტი. ეს შესაძლებელია მხოლოდ ვიდეო ბარათით, რომელიც შექმნილია სხივების მიკვლევის დასაჩქარებლად.
Nvidia-ს RTX სხივების მიკვლევა ეყრდნობა სილიკონს, რომელსაც ეწოდება Tensor Core. Tensor Cores გვხვდება მხოლოდ RTX ვიდეო ბარათებში. Nvidia-ს GTX ბარათებს შეუძლიათ თამაშის გადაცემა სხივური ტრასინგის გამოყენებით, რადგან, როგორც ითქვა, სხივების თვალყურის დევნება არ საჭიროებს სპეციალურად აშენებულ სილიკონს. თუმცა, შესრულება უაზროა RTX ბარათებთან შედარებით. და ზოგიერთ თამაშს, როგორიცაა Minecraft RTX სხივების მიკვლევით, საჭიროებს RTX ვიდეო ბარათს იმის გამო, რომ ისინი რთავენ სხივების მიკვლევას.
AMD ბარათებს, რომლებიც აჩქარებენ სხივების მიკვლევას, არ აქვთ სპეციფიკური ბრენდინგი და არ აქვთ გამოყოფილი სილიკონი. ამის ნაცვლად, ისინი იყენებენ ტექნიკის შესწორებებს და პროგრამული უზრუნველყოფის განახლებებს უკეთესი შედეგებისთვის. უფრო რთულია AMD ბარათების იდენტიფიცირება, რომლებიც აჩქარებენ სხივების მიკვლევას, ამიტომ ყურადღება მიაქციეთ დეტალებს.
Sony-ის PlayStation 5-სა და Xbox Series X და S-ს აქვთ AMD-ის გრაფიკული აპარატურა, რომელსაც შეუძლია დააჩქაროს სხივების მიკვლევა. თუმცა, დეველოპერებს ევალებათ ამის ჩართვა და ბევრი თამაში არა. თვალსაჩინო მაგალითია Cyberpunk 2077, რომელიც მხარს უჭერდა RTX ray tracing-ს კომპიუტერზე გაშვებისას, მაგრამ არ უჭერდა მხარს სხივების კვალს შემდეგი თაობის კონსოლებზე. ფუნქცია დაპირებულია შემდეგი თაობის კონსოლებისთვის მომავალ პატჩში.