Vulkan, एक मॉडर्न क्रॉस-प्लैटफ़ॉर्म 3D ग्राफ़िक्स एपीआई है. इसे डिवाइस के ग्राफ़िक्स हार्डवेयर और आपके गेम के बीच ऐब्स्ट्रैक्शन को कम करने के लिए डिज़ाइन किया गया है. Vulkan, Android पर मुख्य तौर पर इस्तेमाल होने वाला लो-लेवल ग्राफ़िक्स एपीआई है. यह OpenGL ES की जगह इस्तेमाल होता है. OpenGL ES अब भी Android पर काम करता है, लेकिन अब इस पर कोई नया फ़ीचर नहीं बनाया जा रहा है. OpenGL ES की तुलना में Vulkan के ये फ़ायदे हैं:
- ग्राफ़िक्स ड्राइवर में सीपीयू के कम ओवरहेड के साथ ज़्यादा बेहतर आर्किटेक्चर
- सीपीयू की परफ़ॉर्मेंस को बेहतर बनाने के लिए, ऑप्टिमाइज़ेशन की नई रणनीतियां
- OpenGL ES में ग्राफ़िक्स की नई सुविधाएं उपलब्ध नहीं हैं. जैसे, बिना बाइंड किए एपीआई और रे ट्रेसिंग
Vulkan, Android पर Android 7 (एपीआई लेवल 24) से उपलब्ध है. Android 10 (एपीआई लेवल 29) और इसके बाद के वर्शन वाले सभी 64-बिट Android डिवाइसों पर, Vulkan 1.1 काम करता है. 85% ऐक्टिव Android डिवाइसों पर Vulkan काम करता है. Android की बेसलाइन प्रोफ़ाइल, Vulkan की सुविधा वाले डिवाइसों के लिए सुविधाओं का कम से कम सेट तय करती है.
Vulkan की मदद से, बेहतर दिखने वाले और ज़्यादा परफ़ॉर्म करने वाले गेम बनाए जा सकते हैं. Vulkan, मॉडर्न ग्राफ़िक्स हार्डवेयर की पूरी क्षमता का इस्तेमाल करता है. Vulkan का इस्तेमाल, Android यूज़र इंटरफ़ेस (यूआई) रेंडरिंग फ़्रेमवर्क करता है. यह फ़्रेमवर्क, उन डिवाइसों पर काम करता है जिन पर Vulkan काम करता है. Unity और Unreal गेम इंजन के मौजूदा वर्शन, Android के साथ काम करने वाले डिवाइसों पर Vulkan को डिफ़ॉल्ट रेंडरर के तौर पर चुनते हैं. ANGLE प्रोजेक्ट, Vulkan के ऊपर OpenGL ES API का पालन करने वाला वर्शन लागू करता है.
शुरू करें
C/C++
Android पर C/C++ गेम इंजन में Vulkan का इस्तेमाल करने का तरीका जानने के लिए, Android पर Vulkan का इस्तेमाल शुरू करना लेख पढ़ें.
इसके अलावा, गेम डेवलपर के अलावा अन्य डेवलपर के लिए, नेटिव डेवलपमेंट किट (NDK) के दस्तावेज़ में एक सामान्य Vulkan सेक्शन है. इसमें इन विषयों के बारे में बताया गया है:
- बेहतर परफ़ॉर्मेंस के लिए, शेडर कंपाइलर
- Vulkan कोड डीबग करने के लिए पुष्टि करने वाली लेयर
- कस्टम फ़ंक्शन के लिए Vulkan एक्सटेंशन
- डिवाइस से जुड़ी ज़रूरी शर्तों के लिए, Android की बेसलाइन प्रोफ़ाइल
गेम इंजन
ANGLE के बारे में जानकारी
Vulkan, GPU के लिए पसंदीदा Android इंटरफ़ेस है. Android 15 और इसके बाद के वर्शन में, ANGLE को एक वैकल्पिक लेयर के तौर पर शामिल किया गया है. इससे Vulkan के ऊपर OpenGL ES को चलाया जा सकता है. ANGLE पर स्विच करने से, Android OpenGL को बेहतर तरीके से लागू किया जा सकता है. इससे बेहतर कंपैटिबिलिटी मिलती है. साथ ही, कुछ मामलों में परफ़ॉर्मेंस भी बेहतर होती है.
ANGLE का इस्तेमाल करके, अपने OpenGL ES ऐप्लिकेशन की परफ़ॉर्मेंस और स्थिरता की जांच करें. इसके लिए, Android 15 या उसके बाद के वर्शन वाले अलग-अलग डिवाइसों का इस्तेमाल करें. साथ ही, यहां दी गई दो adb कमांड का इस्तेमाल करके, अपने पैकेज के लिए ANGLE को चालू करें. "package-name" को उस पैकेज से बदलें जिसकी जांच करनी है.
adb shell settings put global angle_gl_driver_selection_pkgs package-name
adb shell settings put global angle_gl_driver_selection_values angle
डिवाइस रीबूट होने पर भी ये सेटिंग बनी रहती हैं. ANGLE को बंद करने के लिए, इन कमांड का इस्तेमाल करें:
adb shell settings delete global angle_gl_driver_selection_pkgs
adb shell settings delete global angle_gl_driver_selection_values
ऐप्लिकेशन मेनिफ़ेस्ट के ज़रिए ANGLE का इस्तेमाल करने के लिए ऑप्ट-इन करना
Android 17 और इसके बाद के वर्शन में, डेवलपर ऐप्लिकेशन के मेनिफ़ेस्ट में मेटाडेटा फ़्लैग जोड़ सकते हैं. इससे GLES ड्राइवर के तौर पर ANGLE का अनुरोध किया जा सकता है. इससे इस बात की गारंटी नहीं मिलती कि ANGLE का इस्तेमाल किया जाएगा. हालांकि, यह GLES ड्राइवर के तौर पर ANGLE का इस्तेमाल "पसंद" करने का एक सिग्नल है. अगर ANGLE का इस्तेमाल नहीं किया जा सकता, तो इसके बजाय जीपीयू वेंडर के जीएलईएस ड्राइवर का इस्तेमाल किया जाएगा.
<application android:appCategory="game">
<meta-data android:name="com.android.graphics.driver.prefer_angle" android:value="true" />
</application>
Android ANGLE on Vulkan का रोडमैप

ANGLE से जुड़ी समस्या की शिकायत करें
अगर आपको ANGLE से जुड़ी कोई समस्या आती है, तो हमें इसकी सूचना दें. इसके लिए, इसे हमारे समस्या ट्रैकर में सबमिट करें.