Skip to main content

იზოტროპული და ანიზოტროპული მიპმეპები

MIPMaps
სურათზე ნაჩვენებია მიპმეპი, რომელზეც გამოსახულია ორიგინალი გამოსახულება და მისი დაპატარავებით მიღებული გამოსახულებები. სურათის ზომა გაზრდილია 50%ით, თუმცა ბოლომდე არ ვიყენებთ მას.

        თანამედროვე კომპიუტერული თამაშები ზომაში რამოდენიმე ათეულ გიგაბაიტსაც კი აღწევენ, რაც ძირითადად განპირობებულია თამასში არსებული დიდი რაოდენობის მაღალი ხარისხის ტექსტურების არსებობით, რაც მეტ რეალიზმს მატებს გარემოს. ამავდროულად ყველას გვინახავს თამაშში ისეთი სცენები სადაც კონკრეტულ რაკურსში ძალიან ფართო ხედი იშლება(მაგალითად ქალაქის ხედი ზემოდან), რომლის დახატვის დროსაც საჭიროა დიდი რაოდენობის ტექსტურის დარენდერება ეკრანზე. დარენდერების პროცესის სირთულე დამოკიდებულია ტექსტურების ზომებზე და რაოდენობაზე. აქედან მარტივი მისახვედრია რომ ერთი კადრის დარენდერებისთვის დიდი ზომის გიგაბაიტობით ტესქტურის ანალიზი შეუძლებელია. ასევე როდესაც ტექსტურის დიდი ფრაგმენტის გამოტანა ხდება ეკრანზე პატარა მონაკვეთში(კამერიდან შორს არსებულ ობიექტებში ხშირად სულ რამოდენიმე პიქსელში იხატება) თავს იჩენს ალიასინგის ხარვეზები.
        კომპიუტერულ გრაფიკაში ტექსტურაზე ალიასინგის ხარვეზების თავიდან ასაცილებლად და სხვადასხვა ფილტრაციების გასამარტივებლად შეიქმნა ეგრედწოდებული MIPMap-ები(MIP აბრევიატურა მოდის ლათინური ფრაზიდან "multum in parvo", რაც ითარგმნება როგორც ბევრი პატარაში). თვითონ მიპმეპი წარმოადგენს ტექსტურას რომელიც ინახავს ორიგინას ტექსტურას პირველადი სახით და ასევე მის დაპატარავებულ ვარიანტებს იერარქიულად. მაგალითად თუ მოცემული გვაქვს ტექსტურა 256x256 ზომის, მაშინ მისი მიპმეპი შეიცავს შემდეგი ზომის ტექსტურებს: 256x256, 128x128, 64x64, 32x32, 16x16, 8x8, 4x4, 2x2, 1x1(იხილეთ პირველი სურათი).
სურათზე ნაჩვენებია განსხვავება მიპმეპით და მის გარეშე დარენდერებულ ტექსტურებს შორის.
        სცენის ხატვის პროცესში თითოეული პოლიგონისათვის ხდება განსაზღვრა თუ რომელი ზომის ტექსტურა უნდა დავხატოთ შესაბამისი ტექსტურიდან. ამის განსაზღვრა ხება იმის მიხედვით თუ რამდენ პიქსელში დარენდერდება მოცემული პოლიგონი. ეს მეთოდი კარგად მუშაობს როდესაც პოლიგონს რომელზეც გადაკრულია ტექსტურა ვუტურებ წინიდან, თუმცა კუთხე რაც უფრო ცერი ხდება თავს იჩენს ახალი არტიფაქტები, რაც გამოწვეულია იმით რომ მიპმეპი შეიცავს 2 განზომილების მიმართ თანაბრად დაპატარავებულ გამოსახულებებს. არსებობს სტანდარტული მიპმეპის მოდიფიცირებული ვარიანტი რომელიც საწყისი გამოსახულების დაპატარავებას ახდენს არა მხოლოდ თანაბრად x, y-ის გასწვრივ არამედ ცალკე ინახავენ ჰორიზონტალურად და ვერტიკალურად დაპატარავებულ სურათებსაც. ამ მეთოდს ეძახიან ანიზოტროპულ ფილტრაციას(anisotropic filtering)
ანიზოტროპული მიპმეპი. სურათის ზომა გაზრდილია 300%ით.
        ანიზოტროპული მიპმეპის შემთხვევაში მიპმეპის დონის გარდა ხდება ასევე იმის განსაძღვრა თუ რომელ მხარეს დაპატარავებული გამოსახულება გვჭირდება რაც საბოლოოდ ბევრად უკეთეს შედეგს გვაძლევს.



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