āĻ­āϞāĻ•āĻžāύ āĻĻāĻŋāϝāĻŧ⧇ āĻļ⧁āϰ⧁ āĻ•āϰ⧁āύ

āĻāχ āĻĻāĻ¸ā§āϤāĻžāĻŦ⧇āϜāϟāĻŋ āϰ⧂āĻĒāϰ⧇āĻ–āĻž āĻĻ⧇āϝāĻŧ āĻ•āĻŋāĻ­āĻžāĻŦ⧇ āĻ­āϞāĻ•āĻžāύ āĻ—ā§āϰāĻžāĻĢāĻŋāĻ•ā§āϏ āϞāĻžāχāĻŦā§āϰ⧇āϰāĻŋ āĻĄāĻžāωāύāϞ⧋āĻĄ āĻ•āϰ⧇, āĻ•āĻŽā§āĻĒāĻžāχāϞ āĻ•āϰ⧇ āĻāĻŦāĻ‚ KhronosŠ āύāĻŽā§āύāĻž āĻ…ā§āϝāĻžāĻĒ āϚāĻžāϞāĻžāύ⧋āϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡ āĻļ⧁āϰ⧁ āĻ•āϰāĻž āϝāĻžāϝāĻŧāĨ¤

āĻĒā§‚āĻ°ā§āĻŦāĻļāĻ°ā§āϤ

āĻļ⧁āϰ⧁ āĻ•āϰāĻžāϰ āφāϗ⧇, āύāĻŋāĻļā§āϚāĻŋāϤ āĻ•āϰ⧁āύ āϝ⧇ āφāĻĒāύāĻŋ āϏāĻ āĻŋāĻ• āĻšāĻžāĻ°ā§āĻĄāĻ“āϝāĻŧā§āϝāĻžāϰ āĻāĻŦāĻ‚ āĻĒā§āĻ˛ā§āϝāĻžāϟāĻĢāĻ°ā§āĻŽ āϏāĻ‚āĻ¸ā§āĻ•āϰāĻŖ āĻĒā§āϰāĻ¸ā§āϤ⧁āϤ āĻ•āϰ⧇āϛ⧇āύāĨ¤ āφāĻĒāύāĻžāϰ Android 7.0 (Nougat), API āĻ¸ā§āϤāϰ 24 āĻŦāĻž āωāĻšā§āϚāϤāϰ āϚāϞāĻŽāĻžāύ Vulkan āϏāĻŽāĻ°ā§āĻĨāύ āĻ•āϰ⧇ āĻāĻŽāύ āĻāĻ•āϟāĻŋ āĻĄāĻŋāĻ­āĻžāχāϏ āĻŦāĻž āĻāĻŽā§āϞ⧇āϟāϰ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āωāϚāĻŋāϤāĨ¤

āφāĻĒāύāĻŋ āϏ⧇āϟāĻŋāĻ‚āϏ āĻŽā§‡āύ⧁āϤ⧇ āĻ—āĻŋāϝāĻŧ⧇ āĻāĻŦāĻ‚ āĻĢā§‹āύ āϏāĻŽā§āĻĒāĻ°ā§āϕ⧇ > Android āϏāĻ‚āĻ¸ā§āĻ•āϰāĻŖ āύāĻŋāĻ°ā§āĻŦāĻžāϚāύ āĻ•āϰ⧇ āφāĻĒāύāĻžāϰ Android āϏāĻ‚āĻ¸ā§āĻ•āϰāĻŖ āύāĻŋāĻļā§āϚāĻŋāϤ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύāĨ¤ āĻāĻ•āĻŦāĻžāϰ āφāĻĒāύāĻŋ āύāĻŋāĻļā§āϚāĻŋāϤ āĻ•āϰ⧇āϛ⧇āύ āϝ⧇ āφāĻĒāύāĻžāϰ āϏāĻ āĻŋāĻ• āĻšāĻžāĻ°ā§āĻĄāĻ“āϝāĻŧā§āϝāĻžāϰ āĻāĻŦāĻ‚ āĻĒā§āĻ˛ā§āϝāĻžāϟāĻĢāĻ°ā§āĻŽ āϏāĻ‚āĻ¸ā§āĻ•āϰāĻŖ āϏ⧇āϟ āφāĻĒ āφāϛ⧇, āφāĻĒāύāĻŋ āĻĒā§āϰāϝāĻŧā§‹āϜāύ⧀āϝāĻŧ āϏāĻĢā§āϟāĻ“āϝāĻŧā§āϝāĻžāϰ āĻĄāĻžāωāύāϞ⧋āĻĄ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύāĨ¤

āĻĄāĻžāωāύāϞ⧋āĻĄ āĻ•āϰ⧁āύ

āĻļ⧁āϰ⧁ āĻ•āϰāĻžāϰ āφāϗ⧇, āφāĻĒāύāĻžāϕ⧇ āĻ…āĻŦāĻļā§āϝāχ āĻŦ⧇āĻļ āĻ•āϝāĻŧ⧇āĻ•āϟāĻŋ āϏāϰāĻžā§āϜāĻžāĻŽ āĻāĻŦāĻ‚ āĻ…āĻ¨ā§āϝāĻžāĻ¨ā§āϝ āϏāĻĢā§āϟāĻ“āϝāĻŧā§āϝāĻžāϰ āĻĄāĻžāωāύāϞ⧋āĻĄ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇āĨ¤ āĻŽāύ⧇ āϰāĻžāĻ–āĻŦ⧇āύ āϝ⧇ āĻāĻ•āϟāĻŋ Windows āĻšā§‹āĻ¸ā§āĻŸā§‡, āĻāϟāĻŋ āϏ⧁āĻĒāĻžāϰāĻŋāĻļ āĻ•āϰāĻž āĻšāϝāĻŧ āϝ⧇ āφāĻĒāύāĻŋ āϟ⧁āϞ āĻāĻŦāĻ‚ āϏ⧋āĻ°ā§āϏ āϕ⧋āĻĄā§‡āϰ āϜāĻ¨ā§āϝ āĻāĻ•āϟāĻŋ āĻ—āĻ­ā§€āϰ āĻĢāĻžāχāϞ āĻĒāĻžāĻĨ āĻļā§āϰ⧇āĻŖāĻŋāĻŦāĻŋāĻ¨ā§āϝāĻžāϏ āĻāĻĄāĻŧāĻŋāϝāĻŧ⧇ āϚāϞ⧁āύ; āĻāϟāĻŋ āĻ•āĻŋāϛ⧁ āωāχāĻ¨ā§āĻĄā§‹āϜ āĻ“āĻāϏ āϏāĻ‚āĻ¸ā§āĻ•āϰāϪ⧇ āĻĢāĻžāχāϞ āĻĒāĻžāĻĨ āϏ⧀āĻŽāĻžāϰ āĻ•āĻžāĻ›āĻžāĻ•āĻžāĻ›āĻŋ āĻ•āĻžāϜ āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝāĨ¤

  1. āφāĻĒāύāĻžāϰ āϝāĻĻāĻŋ āχāϤāĻŋāĻŽāĻ§ā§āϝ⧇āχ āĻ…ā§āϝāĻžāĻ¨ā§āĻĄā§āϰāϝāĻŧ⧇āĻĄ āĻ¸ā§āϟ⧁āĻĄāĻŋāĻ“ āύāĻž āĻĨāĻžāϕ⧇ āϤāĻŦ⧇ āĻāϟāĻŋ āĻĄāĻžāωāύāϞ⧋āĻĄ āĻ•āϰ⧁āύ āĨ¤ āĻāϰ āĻŽāĻ§ā§āϝ⧇ āϰāϝāĻŧ⧇āϛ⧇ āϏāĻžāĻŽā§āĻĒā§āϰāϤāĻŋāĻ•āϤāĻŽ Android SDKāĨ¤
  2. Android āĻ¸ā§āϟ⧁āĻĄāĻŋāĻ“āϰ āĻŽāĻ§ā§āϝ⧇ āĻĨ⧇āϕ⧇ NDK āĻāĻŦāĻ‚ CMake āχāύāĻ¸ā§āϟāϞ āĻ•āϰ⧁āύ āĻŦāĻž āφāϞāĻžāĻĻāĻžāĻ­āĻžāĻŦ⧇ āĻĄāĻžāωāύāϞ⧋āĻĄ āĻ•āϰ⧁āύ āĻāĻŦāĻ‚ āχāύāĻ¸ā§āϟāϞ āĻ•āϰ⧁āύ āĨ¤
  3. Android āĻ¸ā§āϟ⧁āĻĄāĻŋāĻ“ āϏāĻ āĻŋāĻ•āĻ­āĻžāĻŦ⧇ āĻ•āĻžāϜ āĻ•āϰāϛ⧇ āϤāĻž āύāĻŋāĻļā§āϚāĻŋāϤ āĻ•āϰāϤ⧇ Hello JNI āύāĻŽā§āύāĻž āϤ⧈āϰāĻŋ āĻ•āϰ⧁āύ āĻāĻŦāĻ‚ āϚāĻžāϞāĻžāύāĨ¤
  4. āφāĻĒāύāĻžāϰ āĻšā§‹āĻ¸ā§āϟ āĻĒā§āĻ˛ā§āϝāĻžāϟāĻĢāĻ°ā§āĻŽā§‡āϰ āϜāĻ¨ā§āϝ build.md- āĻ āϤāĻžāϞāĻŋāĻ•āĻžāϭ⧁āĻ•ā§āϤ python3 āĻāĻŦāĻ‚ āĻ…āĻ¨ā§āϝāĻžāĻ¨ā§āϝ āωāĻĒāĻžāĻĻāĻžāύ āχāύāĻ¸ā§āϟāϞ āĻ•āϰ⧁āύāĨ¤

āφāĻŽāĻĻāĻžāύāĻŋ

āĻāχ āĻŦāĻŋāĻ­āĻžāϗ⧇, āφāĻĒāύāĻŋ KhronosŠ VulkanŠ āύāĻŽā§āύāĻž āϏāĻ‚āĻ—ā§āϰāĻšāĻ¸ā§āĻĨāϞ āĻĄāĻžāωāύāϞ⧋āĻĄ āĻ•āϰ⧁āύ, āĻāĻ•āϟāĻŋ Android gradle āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ āϤ⧈āϰāĻŋ āĻ•āϰ⧁āύ, āϤāĻžāϰāĻĒāϰ 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. Android āύāĻŽā§āύāĻž āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ āϤ⧈āϰāĻŋ āĻ•āϰāϤ⧇ āĻāχ āύāĻŋāĻ°ā§āĻĻ⧇āĻļāĻžāĻŦāϞ⧀ āĻ…āύ⧁āϏāϰāĻŖ āĻ•āϰ⧁āύ ( Build.md āĻĨ⧇āϕ⧇):
    cd Vulkan-Samples
    ./scripts/generate.py android
    
  5. āĻ…ā§āϝāĻžāĻ¨ā§āĻĄā§āϰāϝāĻŧ⧇āĻĄ āĻ¸ā§āϟ⧁āĻĄāĻŋāĻ“ āϖ⧁āϞ⧁āύāĨ¤ āĻĢāĻžāχāϞ āύāĻŋāĻ°ā§āĻŦāĻžāϚāύ āĻ•āϰ⧁āύ > āϖ⧁āϞ⧁āύ āĻāĻŦāĻ‚ Vulkan-Samples/build/android_gradle/build.gradle āύāĻŋāĻ°ā§āĻŦāĻžāϚāύ āĻ•āϰ⧁āύāĨ¤ āĻ…ā§āϝāĻžāĻ¨ā§āĻĄā§āϰāϝāĻŧ⧇āĻĄ āĻ¸ā§āϟ⧁āĻĄāĻŋāĻ“ āĻĒā§āϰāĻ•āĻ˛ā§āĻĒāϟāĻŋ āϞ⧋āĻĄ āĻ•āϰāĻžāϰ āĻĒāϰ⧇ āφāĻĒāύāĻžāϰ āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤāϗ⧁āϞāĻŋāϰ āĻŽāϤ⧋ āĻ•āĻŋāϛ⧁ āĻĻ⧇āĻ–āϤ⧇ āĻšāĻŦ⧇:
    āĻ¸ā§āϟ⧁āĻĄāĻŋāĻ“āϤ⧇ āύāĻŽā§āύāĻž āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ āφāĻŽāĻĻāĻžāύāĻŋ āĻ•āϰāĻž āĻšāĻšā§āϛ⧇āĨ¤

    āϚāĻŋāĻ¤ā§āϰ 1. āĻ…ā§āϝāĻžāĻ¨ā§āĻĄā§āϰāϝāĻŧ⧇āĻĄ āĻ¸ā§āϟ⧁āĻĄāĻŋāĻ“āϰ āĻŽāĻ§ā§āϝ⧇ āύāĻŽā§āύāĻž āĻĒā§āϰāĻ•āĻ˛ā§āĻĒāĨ¤

āĻ•āĻŽā§āĻĒāĻžāχāϞ

āĻāχ āϰ⧇āĻĒā§‹āϰ āϏāĻŽāĻ¸ā§āϤ āύāĻŽā§āύāĻž āĻāĻ•āϟāĻŋ Android āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ⧇ āϏāĻ‚āĻ—āĻ āĻŋāϤ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤ āĻĒā§āϰāĻ•āĻ˛ā§āĻĒāϟāĻŋ āĻ•āĻŽā§āĻĒāĻžāχāϞ āĻ•āϰāϤ⧇, āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤāϗ⧁āϞāĻŋāϰ āĻŽāĻ§ā§āϝ⧇ āĻāĻ•āϟāĻŋ āĻ•āϰ⧁āύ:

  • āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ āĻ‰ā§ŽāϏāϗ⧁āϞ⧋ āĻ•āĻŽā§āĻĒāĻžāχāϞ āĻ•āϰāϤ⧇, āĻŽā§‡āύ⧁ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧁āύ, Build > Make Project , āĻ…āĻĨāĻŦāĻž Ctrl-F9 āĻļāĻ°ā§āϟāĻ•āĻžāϟ āϕ⧀ āϟāĻžāχāĻĒ āĻ•āϰ⧁āύāĨ¤
  • āύāĻŽā§āύāĻž APK āϤ⧈āϰāĻŋ āĻ•āϰāϤ⧇, āĻŽā§‡āύ⧁ āĻŦāĻŋāĻ˛ā§āĻĄ > āĻŦāĻŋāĻ˛ā§āĻĄ āĻŦāĻžāĻ¨ā§āĻĄā§‡āϞ/āĻāĻĒāĻŋāϕ⧇(āϗ⧁āϞāĻŋ) > āĻŦāĻŋāĻ˛ā§āĻĄ APK(āϗ⧁āϞāĻŋ) āύāĻŋāĻ°ā§āĻŦāĻžāϚāύ āĻ•āϰ⧁āύāĨ¤

āφāĻĒāύāĻŋ āĻ…ā§āϝāĻžāĻ¨ā§āĻĄā§āϰāϝāĻŧ⧇āĻĄ āĻ¸ā§āϟ⧁āĻĄāĻŋāĻ“āϰ āĻŦāĻŋāĻ˛ā§āĻĄ āωāχāĻ¨ā§āĻĄā§‹āϤ⧇ āĻŦāĻŋāĻ˛ā§āĻĄ āϏāĻĢāϞ āĻŦāĻžāĻ°ā§āϤāĻžāϟāĻŋ āĻĻ⧇āĻ–āϤ⧇ āĻĒāĻžāĻŦ⧇āύāĨ¤ āϝāĻĻāĻŋ āĻ¤ā§āϰ⧁āϟāĻŋāϗ⧁āϞāĻŋ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻšāϝāĻŧ, āϏ⧇āϗ⧁āϞāĻŋ āĻ āĻŋāĻ• āĻ•āϰ⧁āύ āĻāĻŦāĻ‚ āĻĒ⧁āύāϰāĻžāϝāĻŧ āĻ•āĻŽā§āĻĒāĻžāχāϞ āĻ•āϰ⧁āύ⧎

āĻ¸ā§āϟ⧁āĻĄāĻŋāĻ“āϰ āϏāĻžāĻĨ⧇ āύāĻŽā§āύāĻž āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ āĻ•āĻŽā§āĻĒāĻžāχāϞ āĻ•āϰāĻž āĻšāĻšā§āϛ⧇āĨ¤

āϚāĻŋāĻ¤ā§āϰ 2. āĻāĻ•āϟāĻŋ āϏāĻĢāϞ āύāĻŽā§āύāĻž āύāĻŋāĻ°ā§āĻŽāĻžāĻŖāĨ¤

āϚāĻžāϞāĻžāύ

āύāĻŽā§āύāĻž āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ āϚāĻžāϞāĻžāύ⧋āϰ āφāϗ⧇, āύāĻŋāĻļā§āϚāĻŋāϤ āĻ•āϰ⧁āύ āϝ⧇ Android āĻ¸ā§āϟ⧁āĻĄāĻŋāĻ“ āφāĻĒāύāĻžāϰ āϏāĻ‚āϝ⧁āĻ•ā§āϤ āĻ­āϞāĻ•āĻžāύ āĻĄāĻŋāĻ­āĻžāχāϏ āĻŦāĻž āĻ…ā§āϝāĻžāĻ¨ā§āĻĄā§āϰāϝāĻŧ⧇āĻĄ āĻāĻŽā§āϞ⧇āϟāϰāϕ⧇ āϚāĻŋāύāϛ⧇āĨ¤ āφāĻĒāύāĻŋ āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤ āĻŽāϤ āĻ•āĻŋāϛ⧁ āĻĻ⧇āĻ–āϤ⧇ āĻšāĻŦ⧇:

āĻ¸ā§āϟ⧁āĻĄāĻŋāĻ“āϤ⧇ āĻŸā§‡āĻ¸ā§āϟ āĻĄāĻŋāĻ­āĻžāχāϏ āĻ•āĻžāύ⧇āĻ•ā§āϟ āĻ•āϰāĻž āĻšāĻšā§āϛ⧇āĨ¤

āϚāĻŋāĻ¤ā§āϰ 3. āĻĒāϰ⧀āĻ•ā§āώāĻž āĻĄāĻŋāĻ­āĻžāχāϏāϟāĻŋāϕ⧇ āĻ…ā§āϝāĻžāĻ¨ā§āĻĄā§āϰāϝāĻŧ⧇āĻĄ āĻ¸ā§āϟ⧁āĻĄāĻŋāĻ“āϤ⧇ āϏāĻ‚āϝ⧁āĻ•ā§āϤ āĻ•āϰ⧁āύāĨ¤

āĻĒā§āϰāĻ•āĻ˛ā§āĻĒāϟāĻŋ āϚāĻžāϞāĻžāύ⧋āϰ āϜāĻ¨ā§āϝ, āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤāϗ⧁āϞāĻŋ āĻ•āϰ⧁āύ:

  1. āĻŽā§‡āύ⧁ Run > Run vulkan_sample āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧁āύ, āĻ…āĻĨāĻŦāĻž āϰāĻžāύ āĻŦā§‹āϤāĻžāĻŽā§‡ āĻ•ā§āϞāĻŋāĻ• āĻ•āϰ⧁āύ āϟ⧁āϞāĻŦāĻžāϰ⧇, āĻāĻŦāĻ‚ āφāĻĒāύāĻžāϰ āϏāĻ‚āϝ⧁āĻ•ā§āϤ āĻĄāĻŋāĻ­āĻžāχāϏ⧇ āύāĻŽā§āύāĻž āχāύāĻ¸ā§āϟāϞ āĻāĻŦāĻ‚ āĻļ⧁āϰ⧁ āĻšāĻ“āϝāĻŧāĻžāϰ āϜāĻ¨ā§āϝ āĻ…āĻĒ⧇āĻ•ā§āώāĻž āĻ•āϰ⧁āύāĨ¤
  2. āφāĻĒāύāĻžāϰ āϏāĻ‚āϝ⧁āĻ•ā§āϤ Android āĻĄāĻŋāĻ­āĻžāχāϏ⧇, āĻĒā§āϰāϝāĻŧā§‹āϜāύ⧀āϝāĻŧ āĻ…ā§āϝāĻžāĻ•ā§āϏ⧇āϏ⧇āϰ āĻ…āύ⧁āϰ⧋āϧāϗ⧁āϞāĻŋ āĻ…āύ⧁āĻŽā§‹āĻĻāύ āĻ•āϰ⧁āύ⧎
    • āϏāĻŽāĻ¸ā§āϤ āĻĢāĻžāχāϞ āĻĒāϰāĻŋāϚāĻžāϞāύāĻž āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ āĻ…ā§āϝāĻžāĻ•ā§āϏ⧇āϏ⧇āϰ āĻ…āύ⧁āĻŽāϤāĻŋ āϏāĻ•ā§āώāĻŽ āĻ•āϰ⧁āύ, āϤāĻžāϰāĻĒāϰ āύāĻŽā§āύāĻž āĻĒā§āϰāϧāĻžāύ āĻ¸ā§āϟāĻžāĻ°ā§āϟ āĻ¸ā§āĻ•ā§āϰ⧀āύ āĻĢ⧇āϰāĻžāϤ⧇ āϤ⧀āϰ āĻŦā§āϝāĻžāĻ• āĻŦā§‹āϤāĻžāĻŽāϟāĻŋ āφāϞāϤ⧋ āϚāĻžāĻĒ⧁āύ⧎
    • āĻĄāĻŋāĻ¸ā§āĻ• āĻ…ā§āϝāĻžāĻ•ā§āϏ⧇āϏ⧇āϰ āĻ…āύ⧁āĻŽāϤāĻŋ āĻĻāĻŋāύ:
      āĻĄāĻŋāĻ¸ā§āĻ• āĻ…ā§āϝāĻžāĻ•ā§āϏ⧇āϏ⧇āϰ āĻ…āύ⧁āĻŽāϤāĻŋ āĻĻ⧇āϝāĻŧāĨ¤

      āϚāĻŋāĻ¤ā§āϰ 4. āĻĄāĻŋāĻ¸ā§āĻ• āĻ…ā§āϝāĻžāĻ•ā§āϏ⧇āϏ āϏāĻ•ā§āώāĻŽ āĻ•āϰ⧁āύāĨ¤

  3. āφāĻĒāύāĻŋ āύāĻŽā§āύāĻž āĻĒā§āϰāϧāĻžāύ āĻŽā§‡āύ⧁ āĻĒāĻ°ā§āĻĻāĻž āĻĻ⧇āĻ–āϤ⧇ āĻšāĻŦ⧇, āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤ āĻ…āύ⧁āϰ⧂āĻĒ:
    āύāĻŽā§āύāĻž āĻĒā§āϰāϧāĻžāύ āĻŽā§‡āύ⧁āĨ¤

    āϚāĻŋāĻ¤ā§āϰ 5. āύāĻŽā§āύāĻž āĻĒā§āϰāϧāĻžāύ āĻŽā§‡āύ⧁āĨ¤

  4. āύāĻŽā§āύāĻž āϤāĻžāϞāĻŋāĻ•āĻžāϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡ āĻŦā§āϰāĻžāωāϜ āĻ•āϰ⧁āύ, āĻāĻŦāĻ‚ āϚāĻžāϞāĻžāύ⧋āϰ āϜāĻ¨ā§āϝ āĻ•āϝāĻŧ⧇āĻ•āϟāĻŋ āύāĻŋāĻ°ā§āĻŦāĻžāϚāύ āĻ•āϰ⧁āύāĨ¤ āφāĻĒāύāĻŋ āϝāĻĻāĻŋ āĻ­āϞāĻ•āĻžāύ āĻĄā§‡āϭ⧇āϞāĻĒāĻŽā§‡āĻ¨ā§āĻŸā§‡ āύāϤ⧁āύ āĻšāύ, āφāĻĒāύāĻŋ "API" āύāĻŽā§āύāĻž āĻĻāĻŋāϝāĻŧ⧇ āĻļ⧁āϰ⧁ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύāĨ¤ āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, "āĻšā§āϝāĻžāϞ⧋ āĻŸā§āϰāĻžāϝāĻŧāĻžāĻ™ā§āϗ⧇āϞ" āĻŸā§āϝāĻžāĻĒ āĻ•āϰāϞ⧇ āύāĻŋāĻšā§‡āϰ āĻŽāϤ⧋ āĻāĻ•āϟāĻŋ āϰ⧇āĻ¨ā§āĻĄāĻžāϰ āĻ•āϰāĻž āĻ¤ā§āϰāĻŋāϭ⧁āϜ āĻĻ⧇āĻ–āĻžāϤ⧇ āĻšāĻŦ⧇:
    āĻ¤ā§āϰāĻŋāϭ⧁āϜ

    āϚāĻŋāĻ¤ā§āϰ 6. āĻšā§āϝāĻžāϞ⧋ āĻŸā§āϰāĻžāϝāĻŧāĻžāĻžā§āϜ āύāĻŽā§āύāĻžāĨ¤

āφāĻĒāύāĻžāϰ āĻĄā§‡āϭ⧇āϞāĻĒāĻŽā§‡āĻ¨ā§āϟ āϏāĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻāĻ–āύ āφāĻĒāύāĻžāϰ āĻŸā§‡āĻ¸ā§āϟ āĻĄāĻŋāĻ­āĻžāχāϏ⧇ āύāĻŽā§āύāĻž āϚāĻžāϞāĻžāύ⧋āϰ āϜāĻ¨ā§āϝ āϏ⧇āϟ āφāĻĒ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤

Vulkan āύāĻŽā§āύāĻžāϗ⧁āϞāĻŋ āĻĄā§‡āĻ¸ā§āĻ•āϟāĻĒ āĻāĻŦāĻ‚ āĻŽā§‹āĻŦāĻžāχāϞ āϏāĻš āĻāĻ•āĻžāϧāĻŋāĻ• āĻ…āĻĒāĻžāϰ⧇āϟāĻŋāĻ‚ āϏāĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āϰ āϜāĻ¨ā§āϝ āϤ⧈āϰāĻŋ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤ āĻĒāĻžāϰāĻĢāϰāĻŽā§āϝāĻžāĻ¨ā§āϏ , āĻāĻ•ā§āϏāĻŸā§‡āύāĻļāύ āĻāĻŦāĻ‚ āϟ⧁āϞāĻŋāĻ‚āϝāĻŧ⧇āϰ āĻ…āϧ⧀āύ⧇ āĻ•āĻŋāϛ⧁ āύāĻŽā§āύāĻž āφāĻĒāύāĻžāϰ āĻĄāĻŋāĻ­āĻžāχāϏ⧇ āĻ…āĻ¸ā§āĻĨāĻŋāϰ āĻāĻŦāĻ‚ āĻ•ā§āĻ°ā§āϝāĻžāĻļ āĻšāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤ āĻāϟāĻŋ āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āύ āĻ•āĻžāϰāϪ⧇ āĻšāϤ⧇ āĻĒāĻžāϰ⧇, āϝ⧇āĻŽāύ:

  • āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ­āϞāĻ•āĻžāύ āĻŦ⧈āĻļāĻŋāĻˇā§āĻŸā§āϝāϗ⧁āϞāĻŋ āĻ…ā§āϝāĻžāĻ¨ā§āĻĄā§āϰāϝāĻŧ⧇āĻĄā§‡āϰ āϜāĻ¨ā§āϝ āĻĄāĻŋāϜāĻžāχāύ āĻ•āϰāĻž āĻšāϝāĻŧāύāĻŋāĨ¤
  • āφāĻĒāύāĻžāϰ Android OS āϏāĻ‚āĻ¸ā§āĻ•āϰāĻŖ āĻ…āϏāĻŽāĻ°ā§āĻĨāĻŋāϤāĨ¤
  • āφāĻĒāύāĻžāϰ āĻšāĻžāĻ°ā§āĻĄāĻ“āϝāĻŧā§āϝāĻžāϰ āĻĒā§āĻ˛ā§āϝāĻžāϟāĻĢāĻ°ā§āĻŽā§‡āϰ GPU āĻ•ā§āώāĻŽāϤāĻžāĨ¤

āĻ…āĻ¨ā§āĻŦ⧇āώāĻŖ

āĻ­āϞāĻ•āĻžāύ āύāĻŽā§āύāĻžāϰ āϜāĻžāĻ­āĻž āĻŦāĻŋāĻ­āĻžāĻ—āϟāĻŋ āύ⧇āϟāĻŋāĻ­ āĻ…ā§āϝāĻžāĻ•ā§āϟāĻŋāĻ­āĻŋāϟāĻŋ āĻ•ā§āϞāĻžāϏ āĻĨ⧇āϕ⧇ āωāĻĻā§āĻ­ā§‚āϤ āĻšāϝāĻŧ⧇āϛ⧇āĨ¤ āĻāϟāĻŋ āϏāĻžāϧāĻžāϰāĻŖ āĻ…ā§āϝāĻžāĻĒā§āϞāĻŋāϕ⧇āĻļāύ āϞāĻžāχāĻĢāϏāĻžāχāϕ⧇āϞ āχāϭ⧇āĻ¨ā§āϟāϗ⧁āϞāĻŋ āĻĒāĻžāϏ āĻ•āϰ⧇, āϝ⧇āĻŽāύ āĻ…ā§āϝāĻžāĻĒ āϤ⧈āϰāĻŋ āĻ•āϰāĻž, āĻļ⧁āϰ⧁ āĻ•āϰāĻž, āĻĨāĻžāĻŽāĻžāύ⧋ āĻāĻŦāĻ‚ C/C++ āϕ⧋āĻĄā§‡ āĻ§ā§āĻŦāĻ‚āϏ āĻ•āϰāĻžāĨ¤ āύāĻŽā§āύāĻžāϰ C/C++ āĻŦāĻŋāĻ­āĻžāϗ⧇, āĻāĻ•āϟāĻŋ āύāĻŽā§āύāĻž āĻ•āĻžāĻ āĻžāĻŽā§‹ āϰāϝāĻŧ⧇āϛ⧇ āϝāĻž āϰāĻžāύ-āϟāĻžāχāĻŽ āϏāĻžāĻŦ āύāĻŽā§āύāĻž āĻ¸ā§āϝ⧁āχāϚāĻŋāĻ‚ āĻ•āĻžāĻ°ā§āϝāĻ•āĻžāϰāĻŋāϤāĻž āĻĒā§āϰāϝāĻŧā§‹āĻ— āĻ•āϰ⧇āĨ¤ āϖ⧁āĻŦ āωāĻšā§āϚ āĻ¸ā§āϤāϰ⧇, Android āϏāĻŋāĻ¸ā§āĻŸā§‡āĻŽ āχāϭ⧇āĻ¨ā§āϟ/āĻŦāĻžāĻ°ā§āϤāĻžāϗ⧁āϞāĻŋ āύāĻŽā§āύāĻž āĻ…ā§āϝāĻžāĻĒ⧇āϰ āĻ­āϞāĻ•āĻžāύ āϕ⧋āĻĄā§‡ āĻĒ⧌āρāĻ›āĻžāύ⧋āϰ āϜāĻ¨ā§āϝ āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤ āĻĒāĻĨ āĻĻāĻŋāϝāĻŧ⧇ āϝāĻžāϝāĻŧ:

  • NativeSampleActivity Java āĻŦāĻŋāĻ­āĻžāĻ—
  • NativeSampleActivity C/C++ āĻŦāĻŋāĻ­āĻžāĻ—
  • android_native_glue āϕ⧋āĻĄ
  • android_main
  • āύāĻŽā§āύāĻž āĻ•āĻžāĻ āĻžāĻŽā§‹
  • āĻ¸ā§āĻŦāϤāĻ¨ā§āĻ¤ā§āϰ āϏāĻžāĻŦ āύāĻŽā§āύāĻžāϰ āϕ⧋āĻĄ

android_main āĻšāϞ NativeSampleActivity āĻāĻŦāĻ‚ āĻ…ā§āϝāĻžāĻĒ āϕ⧋āĻĄā§‡āϰ āĻŽāĻ§ā§āϝ⧇ āϏ⧇āϤ⧁, āϝ⧇āϟāĻŋ āύāĻŽā§āύāĻž āϕ⧋āĻĄ āĻ…āύ⧁āϏāϰāĻŖ āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ āφāĻĒāύāĻžāϰ āϜāĻ¨ā§āϝ āĻļ⧁āϰ⧁ āĻšāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤ āφāĻĒāύāĻŋ āϝāĻĻāĻŋ āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ āĻ­āϞāĻ•āĻžāύ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āωāĻ¤ā§āϏāϗ⧁āϞāĻŋāϤ⧇ āĻĢā§‹āĻ•āĻžāϏ āĻ•āϰāϤ⧇ āϚāĻžāύ āϤāĻŦ⧇ āφāĻĒāύāĻŋ Vulkan_Samples\samples āĻāϰ āĻ…āϧ⧀āύ⧇ āϕ⧋āĻĄāϟāĻŋ āĻ…āĻ¨ā§āĻŦ⧇āώāĻŖ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύ, āϝāĻžāϤ⧇ āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤāϗ⧁āϞāĻŋ āϰāϝāĻŧ⧇āϛ⧇:

  • "āĻāĻĒāĻŋāφāχ" āĻŦāĻŋāĻ­āĻžāϗ⧇āϰ āύāĻŽā§āύāĻžāĨ¤
  • "āĻĒāĻžāϰāĻĢāϰāĻŽā§āϝāĻžāĻ¨ā§āϏ" āĻŦāĻŋāĻ­āĻžāϗ⧇āϰ āύāĻŽā§āύāĻžāĨ¤
  • "āĻāĻ•ā§āϏāĻŸā§‡āύāĻļāύ" āĻŦāĻŋāĻ­āĻžāϗ⧇āϰ āύāĻŽā§āύāĻžāĨ¤
  • "āϟ⧁āϞāĻŋāĻ‚" āύāĻŽā§āύāĻžāĨ¤

Vulkan_Samples\shaders āĻšāϞ āϏāĻŦ āĻļ⧇āĻĄāĻžāϰ⧇āϰ āϘāϰāĨ¤

āφāĻĒāύāĻŋ āĻŽā§ŒāϞāĻŋāĻ• Vulkan āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāĻŦāĻ‚ āύāĻŽā§āύāĻž āĻ•āĻžāĻ āĻžāĻŽā§‹āϰ āϏāĻžāĻĨ⧇ āĻĒāϰāĻŋāϚāĻŋāϤ āĻšāϤ⧇ "API" āĻŦāĻŋāĻ­āĻžāϗ⧇āϰ āύāĻŽā§āύāĻžāϗ⧁āϞāĻŋ āĻŦā§āϰāĻžāωāϜ āĻ•āϰāĻž āĻļ⧁āϰ⧁ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύ⧎ āϤāĻžāϰāĻĒāϰ⧇ āφāĻĒāύāĻŋ "āĻĒāĻžāϰāĻĢāϰāĻŽā§āϝāĻžāĻ¨ā§āϏ" āĻāĻŦāĻ‚ "āĻāĻ•ā§āϏāĻŸā§‡āύāĻļāύ" āĻŦāĻŋāĻ­āĻžāϗ⧇āϰ āύāĻŽā§āύāĻžāϗ⧁āϞāĻŋāϤ⧇ āĻ…āĻ—ā§āϰāĻ—āϤāĻŋ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύāĨ¤ āĻļ⧇āĻĄāĻžāϰ āϕ⧋āĻĄā§‡āϰ āϜāĻ¨ā§āϝ, āφāĻĒāύāĻŋ āĻ…ā§āϝāĻžāĻ¨ā§āĻĄā§āϰāϝāĻŧ⧇āĻĄ āĻ¸ā§āϟ⧁āĻĄāĻŋāĻ“āϤ⧇ āĻĒā§āϰāĻœā§‡āĻ•ā§āϟ āĻ­āĻŋāω āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύāĨ¤

āĻ¤ā§āϰāĻŋāϭ⧁āϜ āĻļ⧇āĻĄāĻžāϰāĨ¤

āϚāĻŋāĻ¤ā§āϰ 7. āĻ¸ā§āϟ⧁āĻĄāĻŋāĻ“ āĻĻāĻŋāϝāĻŧ⧇ āĻļ⧇āĻĄāĻžāϰ āĻāĻ•ā§āϏāĻĒā§āϞ⧋āϰ āĻ•āϰ⧁āύāĨ¤

āĻ…āϤāĻŋāϰāĻŋāĻ•ā§āϤ āϏāĻŽā§āĻĒāĻĻ

Vulkan API āĻ•āϝāĻŧ⧇āĻ•āϟāĻŋ āϏāĻ‚āĻ¸ā§āĻ•āϰāϪ⧇āϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡ āĻšāϝāĻŧ⧇āϛ⧇, āϤāĻžāχ āĻāϟāĻŋ āĻĒāϰāĻŋāĻĒāĻ•ā§āĻ• āĻšāĻšā§āϛ⧇āĨ¤ āĻ­āϞāĻ•āĻžāύ āĻ¸ā§āĻŸā§āϝāĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ āĻ•āĻŽāĻŋāϟāĻŋ āĻāĻŦāĻ‚ āĻ­āϞāĻ•āĻžāύ āϏāĻŽā§āĻĒā§āϰāĻĻāĻžāϝāĻŧ āĻ­āϞāĻ•āĻžāύ āωāĻĒāĻžāĻĻāĻžāύ⧇āϰ āĻāĻ•āϟāĻŋ āϏāĻŽā§ƒāĻĻā§āϧ āϏ⧇āϟ āϤ⧈āϰāĻŋ āĻ•āϰ⧇āϛ⧇ āϝāĻž API-āĻāϰ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāĻŦāĻ‚ āϏāĻ°ā§āĻŦā§‹āĻ¤ā§āϤāĻŽ āĻ…āύ⧁āĻļā§€āϞāύāϗ⧁āϞāĻŋ āĻĒā§āϰāĻĻāĻ°ā§āĻļāύ āĻ•āϰ⧇āĨ¤ āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤ āϤāĻžāϞāĻŋāĻ•āĻžāϝāĻŧ āĻ­āϞāĻ•āĻžāύ āĻ…ā§āϝāĻžāĻĒā§āϞāĻŋāϕ⧇āĻļāύ āĻŦāĻŋāĻ•āĻžāĻļ⧇āϰ āϜāĻ¨ā§āϝ āĻ•āĻŋāϛ⧁ āϏāĻ‚āĻ¸ā§āĻĨāĻžāύ āϰāϝāĻŧ⧇āϛ⧇: