თქვენ შეიძლება იცნობთ XDA ფორუმის წევრს MichaelEGRმაიკლ ლეჰი. მაიკლი ცნობილია თავისი მუშაობით OpenGL-თან Android-ზე. ფაქტობრივად, Big Android BBQ 2014-ზე მან წარმოთქვა გამოსვლა სახელწოდებით "OpenGL ES 3.1 / Android გაფართოებების პაკეტი". დღეს მან უფრო მეტი ინფორმაცია მისცა დეველოპერებს, რათა გამოიყენონ ან apache ლიცენზირებული ჩარჩოს დემო ვერსია.
ერთ-ერთი რამ, რასაც დეველოპერი სწრაფად აღმოაჩენთ, არის ის, რომ გრაფიკასთან მუშაობა შეიძლება იყოს იმედგაცრუებული. ეს განსაკუთრებით ეხება, როდესაც თქვენი გრაფიკა არის ვიდეოს მსგავსი. მიუხედავად იმისა, რომ არსებობს საკმაოდ ბევრი აპი, რომელიც იყენებს OpenGL-ს, არც თუ ისე ბევრი მათგანი ღიაა და არც დეველოპერები იზიარებენ საკუთარ აჩქარების ჩარჩოებს. ამ შემთხვევაში, მაიკლმა მოგცა ყველაფერი, რაც გჭირდებათ აპის შესაქმნელად OpenGL-ის ძალის გამოყენებით. მან ასევე უზრუნველყო სახელმძღვანელოები და ვიკი ჩანაწერები მასთან ერთად.
თქვენ შეიძლება ჰკითხოთ საკუთარ თავს: "რას უზრუნველყოფს ეს, რასაც Android, თავისთავად, არა?" კარგად, შეგიძლიათ პირდაპირ შეხვიდეთ კოდში და გაიგოთ, ან შეგიძლიათ ეს პირდაპირ თავად კაცისგან გაიგოთ:
აქტივებიდან შადერის კოდის მარტივად ჩატვირთვის შესაძლებლობა საკმაოდ კარგია. ნებისმიერი AndroidGLESXXUtil-ში ნამდვილად ართულებს სიმძიმის აწევას. OpenGL API მუშაობს ის, რომ თქვენ უნდა გადასცეთ მასივი ან IntBuffer მეთოდის ზარებში, რათა შეკითხვისთვის და მიიღოთ დაბრუნებული მნიშვნელობები. ეს ყველაფერი შიგადაშიგ იმართება ThreadLocal-ის შექმნით, ასე რომ, ის ასევე უსაფრთხოა თემაში.
მე გადავწერე GLSurfaceView -> GLSurfaceView2 EGL 1.4-ის გამოყენებით, წაშალეთ ყველა მემკვიდრეობითი ფრაგმენტი, რაც იყო Android SDK-ში v1.0-დან.
AndroidGLES20Util არის კარგი მაგალითი. ასევე არის AndroidGLES30Util-ის გადაფარვა ტექსტურების უფრო ეფექტურად ჩატვირთვისა და გამოთვლითი შადერებით მუშაობისთვის. Adreno 420 ძალიან დახვეწილი იყო, მაგრამ მე ვიპოვე ტექსტურების ჩატვირთვის კარგი გზა, რომელიც მუშაობდა K1-ზე გამოთვლითი შადერისთვის, მაგრამ არ დაარღვია, მაგრამ არ დაარღვია ნორმალური ტექსტურის მხარდაჭერა Adreno GPU-ზე.
მიუხედავად იმისა, რომ მაიკლი ამჟამად მართავს kickstarter-ს, რომელიც დღეს ღამით იხურება და სავარაუდოდ არ დაფინანსდება, ამის გაზიარების მისი მთავარი მიზანია იპოვონ ამ პროექტზე მუშაობის მსგავსი ინტერესის მქონე ადამიანები და უზრუნველყონ ღია კოდის Apache-ს ლიცენზირებული სტანდარტები დეველოპერებისთვის სამუშაოდ თან. ასე რომ, თუ თქვენ ხართ დეველოპერი და გაინტერესებთ OpenGL Android-ზე, როდესაც გამოიყენება კინოსურათებზე, მოგერიდებათ დაუკავშირდეთ მას. წინააღმდეგ შემთხვევაში, შეამოწმეთ ეს OpenGL დემო პროექტი ასევე ჩარჩო. ასევე, არ დაგავიწყდეთ ვიკი!
თუ გსურთ ნახოთ, რისი გაკეთება შეუძლია ამ ჩარჩოს ფეხების დასველების გარეშე, განაგრძეთ და შეამოწმეთ დემო. ამაზე მეტი მაგალითებია kickstarter, რომელიც ეყრდნობა ამ ჩარჩოს. ასევე, არ დაგავიწყდეთ შემოწმება MichaelEGRს XDA-ფორუმის პოსტი.