Skip to main content

მხები სივრცე

Tangent Space
სურათზე ნაჩვენებია სფერო, მისი ზედაპირის წერტილში ნორმალი(ლურჯი) და მხები(წითელი).
        მანამ სანამ განვმარტავთ მხებ სივრცეს კარგად უნდა გვესმოდეს თუ რას ნიშვანს სივრცე და საკოორდინატო სისტემები. 3 განზომილებიანი საკოორდინატო სისტემაში განზაზღვრულია ცენტრი და 3 ძირითადი მიმართულება, პირობითად ამ მიმართულებებს X, Y და Z-ით აღნიშნავენ. ასეთ სისტემაში ნებისმიერ წერტილი შეგვიძლია აღვწეროთ (x,y,z) სამეულით. თუ ეს 3 მიმართულება არის ერთმანეთის მიმართ მართობული მაშინ ასეთ საკოორდინატო სისტემას ეწოდება მართკუთხა კოორდინატთა სისტემა. იმისათვის რომ ადვილად დავიმახსოვროთ ვექტორების დასახელებელი არსებობს მარჯვენა და მარცხენა ხელის წესი, რომელიც განსაზღვრავს საკოორდინატო სისტემის ვექტორებს სხვადასხვანაირად. წესის თანახმად თუ ჩვენ გავშლით 3 თითს: ცერას, საჩვენებელს და შუას, ხოლო 2-ს(ნეკას და არათითს) მოვხრით მაშინ X-ს ვუწოდებთ მიმართულებას, რომელსაც უთითებს საჩვენებელი, Y-ს უთითებს  შუა და Z-ს უთითებს ცერა. (იხილეთ ქვედა სურათი)
სურათზე ნაჩვენებია საკოორდინატო სისტემა განმარტებული მარჯვენა ხელის წესით.
        თუ ჩვენ ვიცით რომელი წესით არის სისტემა განსაზღვრული შეგვიძლია ნებისმიერი 2 ვექტორის საშუალებით აღვადგინოთ მესამე. მაგალითად მარჯვენა ხელის წესით განსაზღვრულ სისტემაში X-სა და Y-ის ვექტორული ნამრავლი მოგვცემს Z მიმართულებას.
        რაც შეეხება მხებ სივრცეს, მისი განსაზღვრა ხდება ზედაპირთან მიმართებაში. ვთქვათ მოცემული გვაქვს რაიმე ზედაპირი რომლის ნებისმიერ წერტილში შეგვიძლია ავავგოთ X, Y და Z ვექტორები. ერთი ვექტორი ცალსახად შეგვიძლია განვსაზღვროთ წერტილში ზედაპირის ნორმალით(მართობით), მაგალითად ეს იყოს Z ვექტორი, თუ ჩვენი ზედაპირი არის პარამეტრიზებული, მაშინ ზედაპირის წერტილში, რომელსაც შეესაბამება რაიმე u, v პარამეტრული კოორდინატები შეგვიძლია განვსაზღვროთ (du, dv) ვექტორები და შევუსაბამოთ ისინი X და Y ვექტორებს(იხილეთ პირველი სურათი). თუ ზედაპირი არაა პარამეტრიზებული, მაშინ მეორე ვექტორი შეიძლება შეირჩეს ჩვენი სურვილისამებრ, ხოლო მესამე გადავითვალოთ 2 ვექტორის საფუძველზე. როგორც ჩანს მხები სივრცე არის სივრცე რომელიც გარს ეკვრის ზედაპირს.
        ხშირად როდესაც სხვადასხვა ტიპის ინფორმაცია არის მოცემული ზედაპირის დასახასიათებლად მაგალითად ნორმალების მეპი(Normal Map), ამოზნექილობის მეპი(Displacement Map) მათი ჩაწერა ხდება მხებ სივრცესთან მიმართებაში რაც ბევრად ინტუიტიურია. მოვიყვანოთ მაგალითი: ამოზნექილობის მეპში u,v კოორდინატზე არსებული წერტილის ინტენსივობის საფუძველზე ხდება ზედაპირის შესაბამისი წერტილის აწევა 'ზემოთ'. მხები სივრცის შემთხვევაში 'ზემოთა' მიმართულება არის Z ვექტორი(ზედაპირის ნორმალი), რომელიც არ ემთხვევა გლობალურ Z ვექტორს. ამ შემთხვევაში ამბობენ რომ ამოზნექილობის მეპი მოცემულია მხები სივრცის(Tangent Space) მიმართ.

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 განსხვავებულ ფერს.