Displacement Map
მარცხნიდან მარჯვნივ: საბაზისო გეომეტრია, ტესელაციით მიღებული მოდელი ხილული საბაზისო ბადით და მის გარეშე და ტესელირებული ზედაპირის ამოზნექვით მიღებული საბოლოო მოდელი. |
დღევანდელ თამაშებში და განსაკუთრებით კი ფილმებში ხშირად ხდება ძალიან მაღალი დეტალიზაციის მოდელების გამოყენება, რაც მკვეთრად ზრდის გარემოს რეალიზმს. მაღალი დეტალიზაციის დისკრეტული გეომეტრიული მოდელები, დეტალიზაციის გაზრდას ახდენენ პრიმიტივების რაოდენობის ზრდით რაც საბოლოო ჯამში საჭირო მეხსიერებაზე წრფივად აისახება. პრიმიტივების რაოდენობის ზრდა ასევე იწვევს ამაჩქარებელი სტრუქტურის, ხის ზრდას, რაც საბოლოოდ სხივების მიდევნების პროცესზეც აისახება ლოგარითმულად. თუმცა არსებობს შემთხვევები, რომლის დროსაც დეტალიზაციის გაზრდა შესაძლოა მოხდეს სხვა გზით ისე, რომ თავიდან ავიცილოთ პრიმიტივების რაოდენობის ზრდა. ხშირად საჭიროა რაიმე საბაზისო ზედაპირზე მიკრო(ან მაკრო) დეტალიზაციის დატანა, რის დროსაც გეომეტრიული მოდელის საერთი ტოპოლოგია არ იცვლება. სწორედ ამ მიზანს ემსახურება არსებული საბაზო გეომეტრიის დეტალიზაციის გაზრდაზე ორიენტირებული ამოზნექვის მეთოდი (თარგმანზე თავს არ ვდებ :) ).
იმისათვის, რომ მეთოდმა მოახდინოს ზედაპირის სხვადასხვა წერტილების ამოზნიქვა/ჩაზნიქვა უნდა ჰქონდეს ინფორმაცია ამოწევის სიძლიერის შესახებ. თუკი ჩვენ ერთ მნიშვნელობას მივუთითებს ამოზნექვის სიდიდედ, მაშინ ზედაპირე თანაბრად ამოიწევა/ჩაიწევა ყველგან, რაც როგორც წესი ჩვენთვის ნაკლებად საჭიროა. იმისთვის, რომ ზედაპირის სხვადასხვა წერტილისთვის მივუთითოთ ამოზნექვის სხვადასხვა პარამეტრი გამოიყენება ამოზნექილობის მეპი, რომელიც სურათის სახით ინახავს ამოზნექილობის ინფორმაციას. შესაბამისად ამოზნექილობის, ისევე როგორც სხვა ნებისმიერი მეპის გამოყენებისათვის აუცილებელია, რომ ზედაპირი იყოს პარამეტრიზებული.
იმისათვის, რომ მეთოდმა მოახდინოს ზედაპირის სხვადასხვა წერტილების ამოზნიქვა/ჩაზნიქვა უნდა ჰქონდეს ინფორმაცია ამოწევის სიძლიერის შესახებ. თუკი ჩვენ ერთ მნიშვნელობას მივუთითებს ამოზნექვის სიდიდედ, მაშინ ზედაპირე თანაბრად ამოიწევა/ჩაიწევა ყველგან, რაც როგორც წესი ჩვენთვის ნაკლებად საჭიროა. იმისთვის, რომ ზედაპირის სხვადასხვა წერტილისთვის მივუთითოთ ამოზნექვის სხვადასხვა პარამეტრი გამოიყენება ამოზნექილობის მეპი, რომელიც სურათის სახით ინახავს ამოზნექილობის ინფორმაციას. შესაბამისად ამოზნექილობის, ისევე როგორც სხვა ნებისმიერი მეპის გამოყენებისათვის აუცილებელია, რომ ზედაპირი იყოს პარამეტრიზებული.
სურათზე ნაჩვენებია დიფუზიური(მარცხენა) და ამოზნექილობის(მარჯვენა) მეპები. |
ასეთ შემთხვევაში, როდესაც უკვე ამაჩქარებელ სტრუქტურაში არსებული პრიმიტივი წარმოადგენს არა დიდი რაოდენობით დამოუკიდებელ სამკუთხედებს არამედ მეზობელ სამკუთხედებს, რომლებიც აღწერენ კოჰერენტულ ზედაპირს, შესაძლებელია სხივის თანაკვეთის პროცესში სხვადასხვა ტიპის ოპტიმიზაციების გაკეთება.
სურათზე ნაჩვენებია ვექტორული და სკალარული ამოზნექილობის მეპებით მიღებული შედეგები. |
როგორც ზემოთ ავღნიშნეთ ზედაპირის ამოზნექვა ხდება ნორმალის გასწვრივ, რაც თავისმხრივ ზღუდავს მომხმარებელს შესაძლებლობებში. არსებობს მოდიფიცირებული ვარიანტი ალგორითმისა, რომელიც ამოზნექვას ახდენს არა ფიქსირებული გეომეტრიული ნორმალის მიმართ არამედ ამოზნექვის მიმართულებასაც და სიდიდესაც კითხულობს ტექსტურიდან. ასეთი მეთოდს ეძახიან ვექტორულ ამოზნექვას. ამოზნექილობის მეპი ვექტორული ამოზნექვის შემთხვევაში იწერება 3 კანალიან rgb სურათად და რომელიც აღწერს სხვადასხვა სიდიდის ვექტორებს მოცემულს გლობალურ ამ მხებ სივრცეში.
Comments
Post a Comment