Vulkan का इस्तेमाल शुरू करना

इस दस्तावेज़ में Vulkan ग्राफ़िक लाइब्रेरी का इस्तेमाल शुरू करने का तरीका बताया गया है Kronos© सैंपल ऐप्लिकेशन को डाउनलोड करके, कंपाइल करके, और चलाकर देखा जा सकता है.

ज़रूरी शर्तें

शुरू करने से पहले, पक्का करें कि आपने सही हार्डवेयर और प्लैटफ़ॉर्म वर्शन तैयार किया हो. आपको ऐसे डिवाइस या एम्युलेटर का इस्तेमाल करना चाहिए जो Vulkan के साथ काम करता हो, जिन पर Android 7.0 (Nougat), एपीआई लेवल 24 या इसके बाद का वर्शन हो.

सेटिंग मेन्यू में जाकर, अपने Android वर्शन की पुष्टि की जा सकती है. और फ़ोन के बारे में जानकारी को चुनें > Android वर्शन. पुष्टि करने के बाद आपका हार्डवेयर और प्लैटफ़ॉर्म वर्शन सही है, तो ज़रूरी सॉफ़्टवेयर डाउनलोड किया जा सकता है.

डाउनलोड करें

शुरू करने से पहले, आपको कई टूल और अन्य सॉफ़्टवेयर डाउनलोड करने होंगे. ध्यान दें कि Windows होस्ट पर, हमारा सुझाव है कि टूल और सोर्स कोड के लिए, डीप फ़ाइल पाथ हैरारकी न रखें; कुछ Windows OS वर्शन पर फ़ाइल पथ की सीमाओं पर काम करने के लिए ऐसा किया जाता है.

  1. अगर आपके पास पहले से Android Studio नहीं है, तो इसे डाउनलोड करें. इसमें Android SDK का नया वर्शन भी शामिल है.
  2. Android Studio से NDK और CMake इंस्टॉल करें या उन्हें अलग से डाउनलोड और इंस्टॉल करें.
  3. नमस्ते JNI सैंपल बनाएं और चलाएं ताकि यह पक्का किया जा सके कि Android Studio ठीक से काम कर रहा है.
  4. Python3 और build.md में लिस्ट किए गए अन्य कॉम्पोनेंट को इंस्टॉल करें आपके होस्ट प्लैटफ़ॉर्म के लिए.

Import

इस सेक्शन में, Kronos© Vulkan© सैंपल रिपॉज़िटरी डाउनलोड की गई है. साथ ही, Android का ग्रेडल जनरेट किया जा सकता है प्रोजेक्ट खोलें, फिर उसे Android Studio IDE के साथ खोलें.

  1. इन एनवायरमेंट वैरिएबल को सेट करें:
    export ANDROID_HOME=/path/to/sdk-directory
    export ANDROID_NDK_HOME=$ANDROID_HOME/ndk/{your-ndk-version-dir}
    
  2. $PATH में CMake जोड़ें, जिसका इस्तेमाल Android बिल्ड स्क्रिप्ट जनरेट करने के लिए किया जाता है:
    export PATH=$PATH:$ANDROID_HOME/cmake/{your-cmake-version}/bin
    
  3. कोई टर्मिनल खोलें और अपनी डेवलपमेंट डायरेक्ट्री में सोर्स कोड डाउनलोड करें:
    cd dev-directory
    git clone --recursive https://github.com/KhronosGroup/Vulkan-Samples.git
    
  4. Build.md से जुड़े इन निर्देशों का पालन करें Android सैंपल प्रोजेक्ट जनरेट करने के लिए:
    cd Vulkan-Samples
    ./scripts/generate.py android
    
  5. Android Studio खोलें. फ़ाइल > चुनें खोलें और चुनें Vulkan-Samples/build/android_gradle/build.gradle. Android Studio लोड होने के बाद, आपको नीचे दिया गया कुछ ऐसा दिखेगा प्रोजेक्ट:
    Studio में प्रोजेक्ट का सैंपल इंपोर्ट किया जा रहा है.

    पहली इमेज. Android Studio में सैंपल प्रोजेक्ट.

कंपाइल करें

इस डेटा स्टोर करने की जगह में मौजूद सभी सैंपल, एक Android प्रोजेक्ट में रखे गए हैं. कंपाइल करने के लिए इनमें से कोई एक काम करें:

  • सिर्फ़ सोर्स को कंपाइल करने के लिए मेन्यू का इस्तेमाल करें, बिल्ड > प्रोजेक्ट बनाएं, या Ctrl-F9 शॉर्टकट बटन टाइप करें.
  • नमूना APK जनरेट करने के लिए, मेन्यू बिल्ड > चुनें बंडल/APK(s) बनाएं > APK(s) बनाएं.

आपको Android Studio की बिल्ड विंडो में, बिल्ड पूरा होने का मैसेज दिखेगा. अगर कोई गड़बड़ी दिखती है, तो उसे ठीक करके फिर से कंपाइल करें.

Studio की मदद से सैंपल प्रोजेक्ट कंपाइल किया जा रहा है.

दूसरी इमेज. बिल्ड का सफल सैंपल.

एक्ज़ीक्यूट करें

सैंपल प्रोजेक्ट चलाने से पहले, पक्का करें कि Android Studio आपकी कनेक्ट किया गया Vulkan डिवाइस या Android Emulator. आपको कुछ ऐसा दिखेगा फ़ॉलो किया जा रहा है:

टेस्ट डिवाइस को Studio से कनेक्ट किया जा रहा है.

तीसरी इमेज. टेस्ट डिवाइस को Android Studio से कनेक्ट करें.

प्रोजेक्ट चलाने के लिए, ये काम करें:

  1. मेनू Run > vulkan_sample चलाएं या 'चलाएं' बटन पर क्लिक करें टूलबार पर है और इंतज़ार करें सैंपल देखें.
  2. कनेक्ट किए गए Android डिवाइस पर, ऐक्सेस के ज़रूरी अनुरोधों को अनुमति दें.
    • सभी फ़ाइलों को मैनेज करने की अनुमति दें को चालू करें. इसके बाद, ऐरो वापस जाएं बटन पर टैप करें मुख्य स्टार्ट स्क्रीन पर वापस जाने के लिए.
    • डिस्क को ऐक्सेस करने की अनुमति दें:
      डिस्क ऐक्सेस करने की अनुमति देता है.

      चौथी इमेज. डिस्क का ऐक्सेस चालू करें.

  3. आपको यहां दिए गए उदाहरण की तरह, मुख्य मेन्यू वाली स्क्रीन का सैंपल दिखेगा:
    सैंपल मुख्य मेन्यू का इस्तेमाल करें.

    पांचवी इमेज. मुख्य मेन्यू का सैंपल.

  4. आप नमूना सूची ब्राउज़ करें और चलाने के लिए कुछ नमूना चुनें. अगर आपने Vulkan डेवलपमेंट का इस्तेमाल पहले कभी नहीं किया है, तो “एपीआई” सैंपल का इस्तेमाल शुरू किया जा सकता है. उदाहरण के लिए, “हैलो ट्रायएंगल” पर टैप करने पर, रेंडर किया गया ट्राईऐंगल दिखना चाहिए इनसे मिलता-जुलता:
    त्रिभुज

    छठी इमेज. नमस्ते Triange सैंपल.

अब आपका डेवलपमेंट सिस्टम, आपके टेस्ट डिवाइस पर सैंपल चलाने के लिए सेट अप हो गया है.

Vulkan के सैंपल को कई ऑपरेटिंग सिस्टम के लिए बनाया गया है. इनमें, ये सिस्टम भी शामिल हैं डेस्कटॉप और मोबाइल. परफ़ॉर्मेंस, एक्सटेंशन, और हो सकता है कि टूलिंग ठीक से काम न करे और आपके डिवाइस पर क्रैश हो जाए. ऐसा कई वजहों से हो सकता है, जैसे जैसे:

  • Vulkan की खास सुविधाओं को Android के लिए नहीं बनाया गया था.
  • आपके Android OS वर्शन पर यह सुविधा काम नहीं करती.
  • आपके हार्डवेयर प्लैटफ़ॉर्म की जीपीयू क्षमता.

एक्सप्लोर करें

Vulkan सैंपल का Java सेक्शन, NativeActivity क्लास से लिया गया. यह सामान्य ऐप्लिकेशन के पास जाती है C/C++ में ऐप्लिकेशन बनाना, शुरू करना, बंद करना, और खत्म करना जैसे लाइफ़साइकल इवेंट कोड. सैंपल के C/C++ सेक्शन में, सैंपल फ़्रेमवर्क दिया गया है जो रन-टाइम सब सैंपल स्विचिंग फ़ंक्शन को लागू करता है. काफ़ी हद तक हाई लेवल पर, Android सिस्टम इवेंट/मैसेज नीचे दिए गए पाथ से होकर जाते हैं सैंपल ऐप्लिकेशन के Vulkan कोड तक पहुंचें:

  • NativeSampleActivity Java सेक्शन
  • NativeSampleActivity C/C++ सेक्शन
  • android_native_glue कोड
  • android_main
  • सैंपल फ़्रेमवर्क
  • अलग-अलग सब सैंपल का कोड

android_main, NativeSampleActivity और ऐप्लिकेशन कोड के बीच का ब्रिज है. यहां से सैंपल कोड को फ़ॉलो किया जा सकता है. अगर आपको खास सोर्स पर फ़ोकस करना है, तो Vulkan_Samples\samples, जिसमें ये शामिल हैं:

  • “api” कैटगरी के सैंपल.
  • “परफ़ॉर्मेंस” कैटगरी के सैंपल.
  • “एक्सटेंशन” कैटगरी के सैंपल.
  • “टूलिंग” के सैंपल.

Vulkan_Samples\shaders सभी शेड के लिए घर है.

सामान्य जानकारी हासिल करने के लिए, “एपीआई” कैटगरी के सैंपल को ब्राउज़ करना शुरू करें Vulkan का इस्तेमाल और सैंपल फ़्रेमवर्क. तब आप आगे बढ़ सकते हैं “परफ़ॉर्मेंस” और “एक्सटेंशन” कैटगरी के सैंपल. शेडर कोड के लिए, इसका इस्तेमाल किया जा सकता है Android Studio में प्रोजेक्ट व्यू में.

ट्रायंगल शेडर.

सातवीं इमेज. Studio की मदद से शेडर को एक्सप्लोर करें.

अन्य संसाधन

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

  • Vulkan की खास बातें. क्रोनोस ग्रुप, Vulkan स्पेसिफ़िकेशन का पालन करता है. यहां जाएं: Vulkan के होम पेज पर जाकर, पूरी जानकारी के लिए, ट्रेनिंग, गाइड और ट्यूटोरियल देखें.

  • पुष्टि करने वाली लेयर. ऐप्लिकेशन डेवलपमेंट के लिए पुष्टि की लेयर ज़रूरी हैं. Android पर Vulkan की पुष्टि करने वाली लेयर देखें विवरण के लिए दस्तावेज़.

  • शेडर्क. एनडीके में Shaderc कोड, Shaderc repo. इस्तेमाल से जुड़े दस्तावेज़ के लिए और नवीनतम वर्शन प्राप्त करने के लिए निर्देश देखें, तो Shader कंपाइलर.