рдЗрд╕ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдореЗрдВ Vulkan рдЧреНрд░рд╛рдлрд╝рд┐рдХ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рд╢реБрд░реВ рдХрд░рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ Kronos┬й рд╕реИрдВрдкрд▓ рдРрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдХреЗ, рдХрдВрдкрд╛рдЗрд▓ рдХрд░рдХреЗ, рдФрд░ рдЪрд▓рд╛рдХрд░ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ.
рдЬрд╝рд░реВрд░реА рд╢рд░реНрддреЗрдВ
рд╢реБрд░реВ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдкрдХреНрдХрд╛ рдХрд░реЗрдВ рдХрд┐ рдЖрдкрдиреЗ рд╕рд╣реА рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдФрд░ рдкреНрд▓реИрдЯрдлрд╝реЙрд░реНрдо рд╡рд░реНрд╢рди рддреИрдпрд╛рд░ рдХрд┐рдпрд╛ рд╣реЛ. рдЖрдкрдХреЛ рдРрд╕реЗ рдбрд┐рд╡рд╛рдЗрд╕ рдпрд╛ рдПрдореНрдпреБрд▓реЗрдЯрд░ рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ Vulkan рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддрд╛ рд╣реЛ, рдЬрд┐рди рдкрд░ Android 7.0 (Nougat), рдПрдкреАрдЖрдИ рд▓реЗрд╡рд▓ 24 рдпрд╛ рдЗрд╕рдХреЗ рдмрд╛рдж рдХрд╛ рд╡рд░реНрд╢рди рд╣реЛ.
рд╕реЗрдЯрд┐рдВрдЧ рдореЗрдиреНрдпреВ рдореЗрдВ рдЬрд╛рдХрд░, рдЕрдкрдиреЗ Android рд╡рд░реНрд╢рди рдХреА рдкреБрд╖реНрдЯрд┐ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ. рдФрд░ рдлрд╝реЛрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рдЪреБрдиреЗрдВ > Android рд╡рд░реНрд╢рди. рдкреБрд╖реНрдЯрд┐ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдЖрдкрдХрд╛ рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдФрд░ рдкреНрд▓реИрдЯрдлрд╝реЙрд░реНрдо рд╡рд░реНрд╢рди рд╕рд╣реА рд╣реИ, рддреЛ рдЬрд╝рд░реВрд░реА рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ.
рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ
рд╢реБрд░реВ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдЖрдкрдХреЛ рдХрдИ рдЯреВрд▓ рдФрд░ рдЕрдиреНрдп рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рд╣реЛрдВрдЧреЗ. рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ Windows рд╣реЛрд╕реНрдЯ рдкрд░, рд╣рдорд╛рд░рд╛ рд╕реБрдЭрд╛рд╡ рд╣реИ рдХрд┐ рдЯреВрд▓ рдФрд░ рд╕реЛрд░реНрд╕ рдХреЛрдб рдХреЗ рд▓рд┐рдП, рдбреАрдк рдлрд╝рд╛рдЗрд▓ рдкрд╛рде рд╣реИрд░рд╛рд░рдХреА рди рд░рдЦреЗрдВ; рдХреБрдЫ Windows OS рд╡рд░реНрд╢рди рдкрд░ рдлрд╝рд╛рдЗрд▓ рдкрде рдХреА рд╕реАрдорд╛рдУрдВ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдРрд╕рд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ.
- рдЕрдЧрд░ рдЖрдкрдХреЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рд╕реЗ Android Studio рдирд╣реАрдВ рд╣реИ, рддреЛ рдЗрд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ. рдЗрд╕рдореЗрдВ Android SDK рдХрд╛ рдирдпрд╛ рд╡рд░реНрд╢рди рднреА рд╢рд╛рдорд┐рд▓ рд╣реИ.
- Android Studio рд╕реЗ NDK рдФрд░ CMake рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░реЗрдВ рдпрд╛ рдЙрдиреНрд╣реЗрдВ рдЕрд▓рдЧ рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдФрд░ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░реЗрдВ.
- рдирдорд╕реНрддреЗ JNI рд╕реИрдВрдкрд▓ рдмрдирд╛рдПрдВ рдФрд░ рдЪрд▓рд╛рдПрдВ рддрд╛рдХрд┐ рдпрд╣ рдкрдХреНрдХрд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗ рдХрд┐ Android Studio рдареАрдХ рд╕реЗ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ.
- Python3 рдФрд░ build.md рдореЗрдВ рд▓рд┐рд╕реНрдЯ рдХрд┐рдП рдЧрдП рдЕрдиреНрдп рдХреЙрдореНрдкреЛрдиреЗрдВрдЯ рдХреЛ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░реЗрдВ рдЖрдкрдХреЗ рд╣реЛрд╕реНрдЯ рдкреНрд▓реИрдЯрдлрд╝реЙрд░реНрдо рдХреЗ рд▓рд┐рдП.
Import
рдЗрд╕ рд╕реЗрдХреНрд╢рди рдореЗрдВ, Kronos┬й Vulkan┬й рд╕реИрдВрдкрд▓ рд░рд┐рдкреЙрдЬрд╝рд┐рдЯрд░реА рдбрд╛рдЙрдирд▓реЛрдб рдХреА рдЧрдИ рд╣реИ. рд╕рд╛рде рд╣реА, Android рдХрд╛ рдЧреНрд░реЗрдбрд▓ рдЬрдирд░реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЦреЛрд▓реЗрдВ, рдлрд┐рд░ рдЙрд╕реЗ Android Studio IDE рдХреЗ рд╕рд╛рде рдЦреЛрд▓реЗрдВ.
- рдЗрди рдПрдирд╡рд╛рдпрд░рдореЗрдВрдЯ рд╡реИрд░рд┐рдПрдмрд▓ рдХреЛ рд╕реЗрдЯ рдХрд░реЗрдВ:
export ANDROID_HOME=/path/to/sdk-directory export ANDROID_NDK_HOME=$ANDROID_HOME/ndk/{your-ndk-version-dir}
- $PATH рдореЗрдВ CMake рдЬреЛрдбрд╝реЗрдВ, рдЬрд┐рд╕рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ Android рдмрд┐рд▓реНрдб рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЬрдирд░реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:
export PATH=$PATH:$ANDROID_HOME/cmake/{your-cmake-version}/bin
- рдХреЛрдИ рдЯрд░реНрдорд┐рдирд▓ рдЦреЛрд▓реЗрдВ рдФрд░ рдЕрдкрдиреА рдбреЗрд╡рд▓рдкрдореЗрдВрдЯ рдбрд╛рдпрд░реЗрдХреНрдЯреНрд░реА рдореЗрдВ рд╕реЛрд░реНрд╕ рдХреЛрдб рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ:
cd dev-directory git clone --recursive https://github.com/KhronosGroup/Vulkan-Samples.git
- Build.md рд╕реЗ рдЬреБрдбрд╝реЗ рдЗрди рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░реЗрдВ
Android рд╕реИрдВрдкрд▓ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЬрдирд░реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП:
cd Vulkan-Samples ./scripts/generate.py android
- Android Studio рдЦреЛрд▓реЗрдВ. рдлрд╝рд╛рдЗрд▓ > рдЪреБрдиреЗрдВ рдЦреЛрд▓реЗрдВ рдФрд░ рдЪреБрдиреЗрдВ
Vulkan-Samples/build/android_gradle/build.gradle
. Android Studio рд▓реЛрдб рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдкрдХреЛ рдиреАрдЪреЗ рджрд┐рдпрд╛ рдЧрдпрд╛ рдХреБрдЫ рдРрд╕рд╛ рджрд┐рдЦреЗрдЧрд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ:рдкрд╣рд▓реА рдЗрдореЗрдЬ. Android Studio рдореЗрдВ рд╕реИрдВрдкрд▓ рдкреНрд░реЛрдЬреЗрдХреНрдЯ.
рдХрдВрдкрд╛рдЗрд▓ рдХрд░реЗрдВ
рдЗрд╕ рдбреЗрдЯрд╛ рд╕реНрдЯреЛрд░ рдХрд░рдиреЗ рдХреА рдЬрдЧрд╣ рдореЗрдВ рдореМрдЬреВрдж рд╕рднреА рд╕реИрдВрдкрд▓, рдПрдХ Android рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рд░рдЦреЗ рдЧрдП рд╣реИрдВ. рдХрдВрдкрд╛рдЗрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрдирдореЗрдВ рд╕реЗ рдХреЛрдИ рдПрдХ рдХрд╛рдо рдХрд░реЗрдВ:
- рд╕рд┐рд░реНрдлрд╝ рд╕реЛрд░реНрд╕ рдХреЛ рдХрдВрдкрд╛рдЗрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореЗрдиреНрдпреВ рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░реЗрдВ, рдмрд┐рд▓реНрдб > рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрдирд╛рдПрдВ, рдпрд╛ Ctrl-F9 рд╢реЙрд░реНрдЯрдХрдЯ рдмрдЯрди рдЯрд╛рдЗрдк рдХрд░реЗрдВ.
- рдирдореВрдирд╛ APK рдЬрдирд░реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореЗрдиреНрдпреВ рдмрд┐рд▓реНрдб > рдЪреБрдиреЗрдВ рдмрдВрдбрд▓/APK(s) рдмрдирд╛рдПрдВ > APK(s) рдмрдирд╛рдПрдВ.
рдЖрдкрдХреЛ Android Studio рдХреА рдмрд┐рд▓реНрдб рд╡рд┐рдВрдбреЛ рдореЗрдВ, рдмрд┐рд▓реНрдб рдкреВрд░рд╛ рд╣реЛрдиреЗ рдХрд╛ рдореИрд╕реЗрдЬ рджрд┐рдЦреЗрдЧрд╛. рдЕрдЧрд░ рдХреЛрдИ рдЧрдбрд╝рдмрдбрд╝реА рджрд┐рдЦрддреА рд╣реИ, рддреЛ рдЙрд╕реЗ рдареАрдХ рдХрд░рдХреЗ рдлрд┐рд░ рд╕реЗ рдХрдВрдкрд╛рдЗрд▓ рдХрд░реЗрдВ.

рдПрдХреНрдЬрд╝реАрдХреНрдпреВрдЯ рдХрд░реЗрдВ
рд╕реИрдВрдкрд▓ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЪрд▓рд╛рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдкрдХреНрдХрд╛ рдХрд░реЗрдВ рдХрд┐ Android Studio рдЖрдкрдХреА рдХрдиреЗрдХреНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ Vulkan рдбрд┐рд╡рд╛рдЗрд╕ рдпрд╛ Android Emulator. рдЖрдкрдХреЛ рдХреБрдЫ рдРрд╕рд╛ рджрд┐рдЦреЗрдЧрд╛ рдлрд╝реЙрд▓реЛ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ:

рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдпреЗ рдХрд╛рдо рдХрд░реЗрдВ:
- рдореЗрдиреВ Run > vulkan_sample рдЪрд▓рд╛рдПрдВ рдпрд╛ 'рдЪрд▓рд╛рдПрдВ' рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ
рдЯреВрд▓рдмрд╛рд░ рдкрд░
рд╣реИ рдФрд░ рдЗрдВрддрдЬрд╝рд╛рд░ рдХрд░реЗрдВ рд╕реИрдВрдкрд▓ рджреЗрдЦреЗрдВ.
- рдХрдиреЗрдХреНрдЯ рдХрд┐рдП рдЧрдП Android рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░, рдРрдХреНрд╕реЗрд╕ рдХреЗ рдЬрд╝рд░реВрд░реА рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рдЕрдиреБрдорддрд┐ рджреЗрдВ.
- рд╕рднреА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдореИрдиреЗрдЬ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдВ рдХреЛ рдЪрд╛рд▓реВ рдХрд░реЗрдВ. рдЗрд╕рдХреЗ рдмрд╛рдж, рдРрд░реЛ рд╡рд╛рдкрд╕ рдЬрд╛рдПрдВ рдмрдЯрди рдкрд░ рдЯреИрдк рдХрд░реЗрдВ рдореБрдЦреНрдп рд╕реНрдЯрд╛рд░реНрдЯ рд╕реНрдХреНрд░реАрди рдкрд░ рд╡рд╛рдкрд╕ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП.
- рдбрд┐рд╕реНрдХ рдХреЛ рдРрдХреНрд╕реЗрд╕ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдВ:
рдЪреМрдереА рдЗрдореЗрдЬ. рдбрд┐рд╕реНрдХ рдХрд╛ рдРрдХреНрд╕реЗрд╕ рдЪрд╛рд▓реВ рдХрд░реЗрдВ.
- рдЖрдкрдХреЛ рдпрд╣рд╛рдВ рджрд┐рдП рдЧрдП рдЙрджрд╛рд╣рд░рдг рдХреА рддрд░рд╣, рдореБрдЦреНрдп рдореЗрдиреНрдпреВ рд╡рд╛рд▓реА рд╕реНрдХреНрд░реАрди рдХрд╛ рд╕реИрдВрдкрд▓ рджрд┐рдЦреЗрдЧрд╛:
рдкрд╛рдВрдЪрд╡реА рдЗрдореЗрдЬ. рдореБрдЦреНрдп рдореЗрдиреНрдпреВ рдХрд╛ рд╕реИрдВрдкрд▓. - рдЖрдк рдирдореВрдирд╛ рд╕реВрдЪреА рдмреНрд░рд╛рдЙрдЬрд╝ рдХрд░реЗрдВ рдФрд░ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдирдореВрдирд╛ рдЪреБрдиреЗрдВ.
рдЕрдЧрд░ рдЖрдкрдиреЗ 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 рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╡реНрдпреВ рдореЗрдВ.

рдЕрдиреНрдп рд╕рдВрд╕рд╛рдзрди
Vulkan API рдХреЗ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХреЗ рд▓рд┐рдП рдЕрдм рддрдХ рдХреБрдЫ рд╣реА рд╡рд░реНрд╢рди рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рдЪреБрдХрд╛ рд╣реИ. рдЗрд╕рд▓рд┐рдП, рдпрд╣ рдПрдкреАрдЖрдИ рд╕рдордп рдХреЗ рд╕рд╛рде рдмрдврд╝рддрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ. рдж рд╡рд▓реНрдХрди рд╕реНрдЯреИрдВрдбрд░реНрдб рдХрдорд┐рдЯреА рдФрд░ Vulkan рд╕рдореБрджрд╛рдп рдиреЗ Vulkan рдХрд╛ рдПрдХ рдмреЗрд╣рддрд░реАрди рд╕реЗрдЯ рддреИрдпрд╛рд░ рдХрд┐рдпрд╛ рдЬреЛ рдПрдкреАрдЖрдИ рдХреЗ рдЗрд╕реНрддреЗрдорд╛рд▓ рдФрд░ рдЙрд╕рдХреЗ рд╕рдмрд╕реЗ рд╕рд╣реА рддрд░реАрдХреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрддрд╛рддреА рд╣реИ. рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдЗрд╕ рд╕реВрдЪреА рдореЗрдВ Vulkan рдРрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рдбреЗрд╡рд▓рдкрдореЗрдВрдЯ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╕рдВрд╕рд╛рдзрди рджрд┐рдП рдЧрдП рд╣реИрдВ:
Vulkan рдХреА рдЦрд╛рд╕ рдмрд╛рддреЗрдВ. рдХреНрд░реЛрдиреЛрд╕ рдЧреНрд░реБрдк, Vulkan рд╕реНрдкреЗрд╕рд┐рдлрд╝рд┐рдХреЗрд╢рди рдХрд╛ рдкрд╛рд▓рди рдХрд░рддрд╛ рд╣реИ. рдпрд╣рд╛рдВ рдЬрд╛рдПрдВ: Vulkan рдХреЗ рд╣реЛрдо рдкреЗрдЬ рдкрд░ рдЬрд╛рдХрд░, рдкреВрд░реА рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП, рдЯреНрд░реЗрдирд┐рдВрдЧ, рдЧрд╛рдЗрдб рдФрд░ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рджреЗрдЦреЗрдВ.
рдкреБрд╖реНрдЯрд┐ рдХрд░рдиреЗ рд╡рд╛рд▓реА рд▓реЗрдпрд░. рдРрдкреНрд▓рд┐рдХреЗрд╢рди рдбреЗрд╡рд▓рдкрдореЗрдВрдЯ рдХреЗ рд▓рд┐рдП рдкреБрд╖реНрдЯрд┐ рдХреА рд▓реЗрдпрд░ рдЬрд╝рд░реВрд░реА рд╣реИрдВ. Android рдкрд░ Vulkan рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░рдиреЗ рд╡рд╛рд▓реА рд▓реЗрдпрд░ рджреЗрдЦреЗрдВ рд╡рд┐рд╡рд░рдг рдХреЗ рд▓рд┐рдП рджрд╕реНрддрд╛рд╡реЗрдЬрд╝.
рд╢реЗрдбрд░реНрдХ. рдПрдирдбреАрдХреЗ рдореЗрдВ Shaderc рдХреЛрдб, Shaderc repo. рдЗрд╕реНрддреЗрдорд╛рд▓ рд╕реЗ рдЬреБрдбрд╝реЗ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЗ рд▓рд┐рдП рдФрд░ рдирд╡реАрдирддрдо рд╡рд░реНрд╢рди рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрджреЗрд╢ рджреЗрдЦреЗрдВ, рддреЛ Shader рдХрдВрдкрд╛рдЗрд▓рд░.