वुल्कन

Android, Vulkan के साथ काम करता है. यह एपीआई, कम ओवरहेड वाला और क्रॉस-प्लैटफ़ॉर्म है. इसका इस्तेमाल, बेहतर परफ़ॉर्मेंस वाले 3D ग्राफ़िक के लिए किया जाता है. OpenGL ES (GLES) की तरह ही, Vulkan भी ऐप्लिकेशन में रीयल-टाइम में अच्छी क्वालिटी के ग्राफ़िक बनाने के लिए टूल उपलब्ध कराता है. Vulkan का इस्तेमाल करने के फ़ायदों में, सीपीयू ओवरहेड में कमी और SPIR-V बिटरी इंटरमीडिएट भाषा के लिए सहायता शामिल है.

चिप पर सिस्टम (SoC) वेंडर, जैसे कि जीपीयू इंडिपेंडेंट हार्डवेयर वेंडर (आईएचवी), Android के लिए Vulkan ड्राइवर लिख सकते हैं. OEM को खास डिवाइसों के लिए, इन ड्राइवर को इंटिग्रेट करना होगा. Vulkan ड्राइवर, सिस्टम के साथ कैसे इंटरैक्ट करता है, जीपीयू के लिए खास टूल कैसे इंस्टॉल किए जाने चाहिए, और Android से जुड़ी ज़रूरी शर्तों के बारे में जानने के लिए, Vulkan को लागू करना लेख पढ़ें.

ऐप्लिकेशन डेवलपर, Vulkan का इस्तेमाल करके ऐसे ऐप्लिकेशन बनाते हैं जो GPU पर कम ओवरहेड के साथ कमांड को लागू करते हैं. Vulkan, EGL और GLES की तुलना में, मौजूदा ग्राफ़िक्स हार्डवेयर में मौजूद सुविधाओं के लिए ज़्यादा सीधी मैपिंग भी उपलब्ध कराता है. इससे, ड्राइवर बग के अवसर कम हो जाते हैं और डेवलपर को टेस्टिंग में कम समय लगता है.

Vulkan के बारे में सामान्य जानकारी के लिए, Vulkan के बारे में खास जानकारी देखें या संसाधनों की सूची देखें.

Vulkan कॉम्पोनेंट

Vulkan के साथ काम करने वाले ये कॉम्पोनेंट शामिल हैं.

Vulkan
कॉम्पोनेंट

पहली इमेज. Vulkan कॉम्पोनेंट

कॉम्पोनेंट का नाम सेवा देने वाली कंपनी ब्यौरा
Vulkan की पुष्टि करने वाली लेयर Android (NDK में) Vulkan ऐप्लिकेशन के डेवलपमेंट के दौरान इस्तेमाल की जाने वाली लाइब्रेरी, ताकि ऐप्लिकेशन में Vulkan API के इस्तेमाल से जुड़ी गड़बड़ियों का पता लगाया जा सके. एपीआई के इस्तेमाल से जुड़ी गड़बड़ियां मिलने के बाद, इन लाइब्रेरी को हटा दिया जाना चाहिए.
Vulkan रनटाइम Android नेटिव लाइब्रेरी, libvulkan.so, जो नेटिव Vulkan API उपलब्ध कराती है.

Vulkan Runtime के ज़्यादातर फ़ंक्शन, जीपीयू वेंडर के दिए गए ड्राइवर से लागू होते हैं. Vulkan Runtime, ड्राइवर को रैप करता है और एपीआई को इंटरसेप्ट करने की सुविधाएं देता है. यह सुविधा, डिबग करने और डेवलपर टूल के लिए उपलब्ध होती है. साथ ही, यह ड्राइवर और प्लैटफ़ॉर्म की डिपेंडेंसी के बीच इंटरैक्शन को मैनेज करता है.
Vulkan ड्राइवर SoC यह Vulkan API को हार्डवेयर के हिसाब से GPU निर्देशों और इंटरैक्शन पर मैप करता है. साथ ही, यह कोर ग्राफ़िक ड्राइवर के साथ इंटरैक्ट करता है.

बदले गए कॉम्पोनेंट

BufferQueue और Gralloc, Vulkan के साथ काम करते हैं:

  • BufferQueue. BufferQueue और ANativeWindow इंटरफ़ेस में, ज़्यादा वैल्यू और तरीके मौजूद हैं. इनकी मदद से, Vulkan रनटाइम, ANativeWindow के ज़रिए BufferQueue से कनेक्ट हो सकता है.
  • Gralloc. वैकल्पिक इंटरफ़ेस की मदद से, Gralloc यह पता लगा सकता है कि किसी खास प्रोड्यूसर/कंज्यूमर कॉम्बिनेशन के लिए, बफ़र को असाइन किए बिना किसी फ़ॉर्मैट का इस्तेमाल किया जा सकता है या नहीं.

इन कॉम्पोनेंट के बारे में ज़्यादा जानने के लिए, BufferQueue और gralloc देखें. ANativeWindow के बारे में जानकारी के लिए, EGLSurfaces और OpenGL ES देखें.

संसाधन

Vulkan के बारे में ज़्यादा जानने के लिए, इन संसाधनों का इस्तेमाल करें:

  • platform/frameworks/native/vulkan पर Vulkan लोडर (libvulkan.so). इसमें Android का Vulkan लोड करने वाला टूल और प्लैटफ़ॉर्म डेवलपर के लिए काम के कुछ Vulkan टूल शामिल हैं.
  • Vulkan लागू करना. यह Android के लिए Vulkan ड्राइवर लिखने वाले जीपीयू IHV और खास डिवाइसों के लिए उन ड्राइवरों को इंटिग्रेट करने वाले OEM के लिए है. इसमें बताया गया है कि Vulkan ड्राइवर, सिस्टम के साथ कैसे इंटरैक्ट करता है, जीपीयू के लिए खास टूल कैसे इंस्टॉल किए जाने चाहिए, और Android पर इसे लागू करने से जुड़ी ज़रूरी शर्तें क्या हैं.
  • Vulkan Graphics API की गाइड. इसमें Android ऐप्लिकेशन में Vulkan का इस्तेमाल शुरू करने, Android के Vulkan डिज़ाइन दिशा-निर्देशों के प्लैटफ़ॉर्म, Vulkan के शेडर कंपाइलर का इस्तेमाल करने, और पुष्टि करने वाली लेयर का इस्तेमाल करने के बारे में जानकारी शामिल है. इससे, Vulkan का इस्तेमाल करने वाले ऐप्लिकेशन के स्थिर रहने की पुष्टि करने में मदद मिलती है.
  • Vulkan News. इसमें, Vulkan से जुड़े इवेंट, पैच, ट्यूटोरियल, और अन्य समाचार लेख शामिल हैं.