Android Q+ UI को रेंडर करने के लिए Vulkan ग्राफ़िक्स API का उपयोग कर सकता है

click fraud protection

स्किया, Google का ओपन सोर्स ग्राफ़िक्स इंजन, में वल्कन ग्राफ़िक्स एपीआई बैकएंड है। इस बैकएंड का उपयोग Android Q या उसके बाद के संस्करण में UI प्रस्तुत करने के लिए किया जा सकता है।

एंड्रॉइड का अगला प्रमुख संस्करण, एंड्रॉइड 9, अगले महीने कई उपकरणों के लिए जारी किया जाएगा। एंड्रॉइड ओरेओ के विपरीत जहां मुख्य सुधार ज्यादातर कम थे, एंड्रॉइड पी अधिक उपयोगकर्ता-सामना वाली सुविधाएं प्रदान करता है जैसे कि संशोधित यूजर इंटरफेस, नेविगेशन जेस्चर और डिजिटल वेलबीइंग, साथ ही प्रोजेक्ट पर काम जारी है तिगुना. लेकिन पर्दे के पीछे, Google ने एंड्रॉइड पर ग्राफिक्स रेंडरिंग के काम करने के तरीके को नया रूप दिया है। Android Oreo में, Google ने Skia ग्राफ़िक्स इंजन के लिए OpenGL हार्डवेयर-त्वरित बैकएंड का परीक्षण शुरू किया जो Android P में पूरा हुआ। हालाँकि, Google यहीं नहीं रुक रहा है, क्योंकि कंपनी इसे लागू करने की योजना बना रही है वल्कन बैकएंड स्किया ग्राफ़िक्स इंजन जो Android Q या बाद के रिलीज़ में आएगा।

इसका प्रमाण एक से मिलता है टिप्पणी ओपन सोर्स क्रोमियम गेरिट पर एक Google इंजीनियर द्वारा सबमिट किया गया। यह टिप्पणी एंड्रॉइड पर Google क्रोम ब्राउज़र के लिए वल्कन ग्राफिक्स एपीआई के आगामी कार्यान्वयन पर एक बग रिपोर्ट के संदर्भ में है। टिप्पणी में कहा गया है कि, भविष्य में कभी-कभी, वल्कन एपीआई की "आवश्यकता होगी"। एंड्रॉइड वेबव्यू के लिए समर्थन जब "[एंड्रॉइड] फ्रेमवर्क वल्कन का उपयोग शुरू करने जा रहा है ह्वुइ।"


एंड्रॉइड में ग्राफिक्स रेंडरिंग

पृष्ठभूमि ज्ञान के लिए, स्किया एक खुला स्रोत, 2डी ग्राफ़िक्स इंजन है जिसका उपयोग Google Chrome, Chrome OS, Android, फ़्लटर और अन्य प्रमुख परियोजनाओं में किया जाता है। स्किया एक ग्राफ़िक्स रेंडरिंग इंजन है जिसका उपयोग एंड्रॉइड के शुरुआती संस्करणों में रेंडर करने के लिए किया जाता था देखना और कैनवास (अधिकांश ऐप्स में यूआई बनाने और खींचने के लिए कक्षाओं का उपयोग किया जाता है।) एंड्रॉइड 3.0 हनीकॉम्ब ने स्कीया को आंशिक रूप से एचडब्ल्यूयूआई से बदल दिया, एक लाइब्रेरी जो परिवर्तित करती है कैनवस हार्डवेयर-त्वरित ओपनजीएल कमांड में कमांड करता है, हालांकि 2डी स्कीया ग्राफिक्स लाइब्रेरी का उपयोग अभी भी पथ जैसे कुछ क्षेत्रों में किया जाता था रेखांकन. समानांतर में, Google ने Skia के लिए एक OpenGL बैकएंड भी बनाया। नतीजा यह है कि कुछ ग्राफ़िक्स कॉल स्कीया लाइब्रेरी में की जाएंगी जबकि अन्य ओपनजीएल बैकएंड पर जाएंगी। ग्राफ़िक्स आर्किटेक्चर को साफ़ करने के लिए, Google ने निर्णय लिया कि HWUI अब Skia से बात करेगा, जो UI रेंडरिंग करने के लिए स्वयं अपने हार्डवेयर-त्वरित OpenGL बैकएंड से बात करता है। नतीजा यह है कि यूआई फ्रेमवर्क के लिए ग्राफिक्स कॉल एक पथ का अनुसरण करेंगे, दो का नहीं।

आप में से कुछ लोगों को Android 8.0 Oreo के शुरुआती डेवलपर पूर्वावलोकन में "सेट GPU रेंडरर" नामक डेवलपर विकल्प याद हो सकता है। इस डेवलपर विकल्प ने आपको HWUI को यूआई फ्रेमवर्क के लिए जीपीयू रेंडरर के रूप में स्कीया और उसके हार्डवेयर-त्वरित ओपनजीएल बैकएंड का उपयोग करने के लिए बाध्य करने की अनुमति दी। डेवलपर विकल्प हटा दिया गया क्योंकि यह व्यवहार अब डिफ़ॉल्ट है।

Android O डेवलपर पूर्वावलोकन में "GPU रेंडरर सेट करें" डेवलपर विकल्प

ग्राफ़िक्स रेंडरिंग को बेहतर बनाने के लिए Google का अगला कदम ओपनजीएल हार्डवेयर-त्वरित बैकएंड से वल्कन हार्डवेयर-त्वरित बैकएंड पर स्विच करना है। यह बिल्कुल भी अप्रत्याशित कदम नहीं है और एक तार्किक प्रगति है, लेकिन यह देखकर अच्छा लगता है कि एंड्रॉइड पर ग्राफिक्स रेंडरिंग को बेहतर बनाने पर काम किया जा रहा है। हालाँकि यह कदम एंड्रॉइड पर अंतराल के हर स्रोत को ठीक नहीं करेगा, लेकिन इसे सीपीयू द्वारा किए गए प्रसंस्करण में कटौती करके फ्रेम रेंडर समय को कम करना चाहिए। यह देखते हुए कि इस पर बहुत काम चल रहा है (यह Android P में अधूरा है), हम उम्मीद करते हैं कि यह Android Q या किसी अन्य भविष्य के Android रिलीज़ के साथ लॉन्च होगा।


यूआई को प्रस्तुत करने के लिए वल्कन ग्राफिक्स एपीआई का उपयोग करने का पूर्वावलोकन

अब एंड्रॉइड पी पर स्कीया के लिए वल्कन बैकएंड का परीक्षण करना वास्तव में संभव है। एक डिबग पैरामीटर है जिसे आप एंड्रॉइड को स्कीया वल्कन पाइपलाइन का उपयोग करने के लिए मजबूर करने के लिए सेट कर सकते हैं। /system/build.prop में निम्नलिखित पंक्ति जोड़ने के बाद बस रीबूट करें:

debug.hwui.renderer=skiavk

Android Oreo चलाने वाले डिवाइस पर इस लाइन को जोड़ने से क्रैश हो जाएगा, इसलिए हम इसकी अनुशंसा नहीं करते हैं। हालाँकि आपका डिवाइस Android P पर इस फ़्लैग के साथ बूट होगा, लेकिन इस समय यह काफी ख़राब है। Google पिक्सेल लॉन्चर ज्यादातर किसी भी पृष्ठभूमि को प्रस्तुत करने में विफल रहता है, सेटिंग्स में एनिमेटेड वीडियो लोड होने में विफल रहता है, और स्टेटस बार और सूचनाओं के साथ कई ग्राफिकल गड़बड़ियाँ होती हैं। इसके अलावा, अधिकांश ऐप्स, यहां तक ​​कि यूट्यूब वीडियो और डूडल जंप जैसे गेम भी ठीक से लोड होते प्रतीत होते हैं।

XDA मान्यता प्राप्त डेवलपर को बहुत धन्यवाद luca020400 इस लेख को लिखने में उनकी सहायता के लिए, अलग किए गए libhwui.so कोड को दिखाने वाले स्क्रीनशॉट प्रदान करने के लिए, और वल्कन बैकएंड का परीक्षण करने के लिए डिबग ध्वज प्रदान करने के लिए।


स्रोत 1: टॉकिन ट्रेबल: कैसे एंड्रॉइड इंजीनियर विखंडन पर युद्ध जीत रहे हैं [आर्सटेक्निका]

स्रोत 2: एंड्रॉइड ग्राफ़िक्स पाइपलाइन: बटन से फ़्रेमबफ़र तक [इनोवेक्स ब्लॉग]

स्रोत 3: स्कीया वेब पेज [गूगल]

स्रोत 4: रोमेन गाइ, एंड्रॉइड ग्राफ़िक्स और कोटलिन @ Google द्वारा टिप्पणियाँ [reddit]