Skip to main content

განათების გზის გამოსახულებები

Light Path Expressions
        გლობალური განათების დათვლა გულისხმობს სინათლის გადამტანი ყველა შესაძლო გზის გამოთვლას განათებიდან სენსორამდე, თუმცა ეს გზები ერთმანეთისგან შეგვიძლია აზრობრივად განვმიჯნოთ, დავაჯგუფოთ სხვადასხვა ჯგუფებად. მაგალითად თუკი სცენაში გვაქვს ორი სხვადასხვა ტიპის განათება შეგვიძლია ვთქვათ რომ განათების გზები ნაწილი მოდის ერთი განათებიდან ხოლო დანარჩენი მეორედან. ასეთ დაჯგუფებას ვუწოდოთ დაჯგუფება განათებების მიხედვით. სხვამხრივ მაგალითად სცენაში გვაქვს რაიმე x ობიექტი და ვიტყვით რომ განათების გზები იყოფიან 2 ჯგუფად, ისინი რომლებიც ერთხელ მაინც ხვდებიან ამ ობიექტს და რომლებიც არ ხვდებიან. ასეთი დაყოფა არის დაყოფა ობიექტთან ურთიერთქმედების მიხედვით. განათების წყაროდან მომავალი განათება შესაძლოა უსასრულოდ დიდი რაოდენობით აირეკლოს სანამ სენსორში მოხვდება, ასე რომ განათების გზების სიმრავე ასევე შეგვიძლია დავყოთ 2 ჯგუფად: ისინი რომლებიც ერთხელ ირეკლებიან და ისინი რომლებიც 1-ზე მეტჯერ, დაყოფა პირდაპირ და ირიბ განათბად. ასევე მაგალითად სცენაში გვაქვს დიფუზიური, გლუვი და სპეკულარული ზედაპირები, მაშინ განათება რა თქმა უნდა ან სპეკულარულ ზედაპირზე ირეკლება ან გლუვზე ან დიფუზიურზე, ასეთ შემთხვევაში შეგვიძლია გლობალური განათება დავყოთ 3 ჯგუფად: 
  1. Diffuse - განათება რომელიც დიფუზიურ ზედაპირზე არეკვლით ხვდება კამერაში.
  2. Glossy - განათება რომელიც გლუვ ზედაპირზე არეკვლით ხვდება კამერაში.
  3. Specular - განათება რომელიც სპეკულარულ ზედაპირზე არეკვლით ხვდება კამერაში.

წყარო
ასე შესაძლოა უსასრულოდ ბევრი მაგალითი მოვიყვანოთ განათების გზების სიმრავლის ჯგუფებად გაყოფისა, თუმცა საინტერესო ის ფაქტია თუ როგორ შეიძლება ეს გამოგვადგეს რენდერისას.
        მაგალითად ვარენდერებთ კომპლექსურ სცენას და საბოლოო ხარისხის რენდერისთვის საათებია საჭირო. ასეთ შემთხვევაში ძალიან დიდი დისკომფორტი იქნება მომხმარებლისთვის თუკი რენდერში რომელსაც საათები ელოდა აღმოაჩენს რომ რაიმე არ მოსწონს და ცვლილების შეტანას მოინდომებს. ის იძულებული იქნება ცვლილების შემდეგ მთელი სცენა გადაარენდეროს. ასეთი შემთხვევა დამეთანხმებით რომ ძალიან ხშირია. თუკი ჩვენ დავარენდერებთ სცენას სხვადასხვა განათებებით ცალცალკე მაშინ შესაძლებელი იქნება რენდერერს გარეთ რეზულტატის კორექტირება, შეგვეძლება კონკრეტულ განათებებს მოვუმატოთ ინტენსივობა ან თუნდაც შევცვალოთ ფერი. ასეთ შემთხვევაში არტისტს შეუძლია დამკვეთს მის თვალწინ აჩვენოს შედეგი საბოლოო ხარისხით ისე, რომ რეალურ დროში ცვალოს სხვადასხვა განათების ინტენსივობები, ფერები.
        იმისათვის, რომ შევძლოთ განათების გზების აღწერა გამოიყენება განათების გზის გამოსახულებები(Light Path Expressions შემოკლებით LPE). LPE-ს საშუალებით შესაძლებელია ცალსახად აღვწეროთ განათების ცალკეული ქვეჯგუფები. მაგალითად თუკი კამერას აღვნიშნავთ C სიმბოლოთი, განათებას L-ით მაშინ განათების გზა რომელიც განათებიდან პირდაპირ კამერაში ხვდება იქნება LC. თუკი ზედაპირზე გაბნევის დიფუზიურ, გლუვ და სპეკულარულ ხდომილებებს  აღვნიშნავთ შესაბამისად D, G და S-ით  მაშინ LDC იქნება განათების გზა რომელიც ერთხელ ირეკლება დიფუზიურ ზედაპირზე და შემდგომ ხვდება კამერაში. LPE-ს სინტაქსი საკმაოდ კომპლექსური შეიძლება იყოს და სხვადასხვა რენდერერებში სხვადასხვანაირადაა მხარდაჭერილი(იხ. LPE რენდერმენში). რენდერერების გარკვეული ნაწილი იძლევა საშუალებას, რომ მივუთითოთ სასურველი LPE თუმცა ნაწილს აქვს წინასწარ განსაზღვრული, ყველაზე გამოყენებადი LPE-ების ჩამონათვალი.

Comments

Popular posts from this blog

CPU GPU და ჰიბრიდული რენდერერები

წყარო         დღემდე აქტუალურია თემა CPU რენდერერი ჯობია თუ GPU . იმისათვის რომ ამ კითხვას მეტნაკლებად ამომწურავი პასუხი გავცეთ განვიხილოთ რენდერერის სტრუქტურა და მოცემულ პლათფორმებზე იპმლემენტაციასთან დაკავშირებული პრობლემები. რენდერერი შედგება რამოდენიმე დიდი კომპონენტისგან როგორიცაა ხილვადობის ამოცანა შეფერადება ინტეგრატორები ფუნქციონალი ხილვადობის ამოცანა         ხილვადობის ამოცანა ერთერთი ყველაზე რთულია გამოთვლითი რესურსის კუთხით. გარდა იმისა, რომ სხივის გეომეტრიასთან თანაკვეთის დათვლას საკმაოდ დიდი დრო ჭირდება, ასევე საჭიროა ამაჩქარებელ სტრუქტურების განახლება კადრიდან კადრზე დინამიური სცენებისათვის. კარგი ისაა, რომ რენდერერის ეს ნაწილი საკმაოდ ადვილად ენკაპსულირებადია და შესაბამისად გვხვდება ბიბლიოთეკები მაგალითად embree(intel), fireRays(AMD), OptiX prime(nvidia), ... რომლებიც ამ ამოცანას საკმაოდ ეფექტურად ხსნიან და რენდერერებშიც მეტნაკლებად ადვილად ინტეგრირდებიან.  სხივების მიდევნების პროცესში ძალიან მნიშვნელოვანია მსგავსი გამოთვლების ლოკალიზება და არსებული SIMD

სინათლის ხილული სპექტრი და სხივის თვისებები

Visible Spectrum სურათზე ნაჩვენებია პრიზმაში გამავალი თეთრი სხივის სპექტრულად გაშლის პროცესი.         სინათლე წარმოადგენს ელექტრომაგნიტურ ტალღას, რომელსაც როგორც ყველა ელექტრომაგნიტურ ტალღას გააჩნია რამოდენიმე მნიშვნელოვანი მახასიათებელი. ერთერთი მნიშვნელოვანი მახასიათებელი არის ტალღის სიგრძე, რომელიც განსაზღვრავს სხივის სპექტრულ ფერს. ელექტრომაგნიტური ტალღები ბუნებაში და თანამედროვე სამყაროში მრავლად გვხვდები. სხვადასხვა ტალთის სიგრძის(სიხშირის) ტალღებს იყენებენ როგორც საყოფაცხოვრებო(რადიო, მობილური ტელეფონი) დანიშნულების, ასევე სამედიცინო(რენდგენის სხივები) და სამხედრო(რადარები) მოწყობილობებში. ადამიანის თვალისთვის ხილული სინათლის ელექტრომაგნიტური ტალღების ტალღის სიგრძე იწყება დაახლოებით 400 ნანომეტრიდან და მთავრდება 700 ნანომეტრზე. ამ დიაპაზონს ქვემოთ ექცევა ულტრაიისფერი ტალღები და დიაპაზონს ზემოთ ექცევა ინფრაწითელი, რომელსაც ადამიანის თვალი ვერ აღიქვამს(იხილეთ ქვემოთ მოცემული სურათი). სინათლის თეთრი სხივი შედგება სხვადასხვა სიხშირის ტალღების ერთობლიობისგან.        

ფერების RGB მოდელი

RGB Color Model         ფერების RGB მოდელი წარმოადგენს ისეთ მოდელს რომელშიც სამი ძრირითადი ფერის წითელი, მწვანე და ლურჯის საშუალებით მიიღება ფერების ფართო სპექტრი. მისი დასახელებაც მოდის სწორედ ძირითადი ფერების ინგლისური სახელწოდების ინიციალებიდან(Red, Green, Blue).         ფერთა სპექტრის ამდაგვარი წარმოდგენა დაკავშირებულია იმასთან, რომ გამოსახულების გამოტანის მოწყობილობებში რომელიც გააჩნიათ კომპიუტერებს, ტელევიზორებს ფერის მიღება ფიზიკურად ხდება სწორედ ამ სამი ძირითადი ფერის შეზავებით. დღესდღეობით ყველაზე გავრცელებული არის 24 ბიტიანი RGB მოდელი, სადაც თითოეულ კომპონენტს ეთმობა ერთი ბაიტი და შესაბამისად შეუძლია მიიღოს ნებისმიერი მნიშვნელობა [0, 255] დიაპაზონში, რაც საბოლოოდ გვაძლევს 16777216 განსხვავებულ ფერს.