
サンプルのドキュメントは、新しいVulkanドキュメントサイトで最もよく表示されます。ドキュメントでは、GitHubで完全にサポートされていないAsciidocを使用しています。
Vulkanサンプルは、最適化されたVulkanアプリケーションの開発を支援するリソースのコレクションです。
Vulkanを初めて使用する場合は、APIサンプルが開始するのに最適な場所です。さらに、次のリンクが役立つ場合があります。
Vulkanガイド
Vulkanで始めましょう
パフォーマンスサンプルは、リアルタイムプロファイリング情報とともに推奨されるベストプラクティスを示しています。それらはより高度ですが、詳細な説明を含む詳細なチュートリアルも含まれています。
Vulkanでベストプラクティスの推奨事項を示すリソースのコレクションを作成する
ベストプラクティスの実装を説明し、パフォーマンス分析ガイドを含むチュートリアルを作成する
参照資料として、またVulkanでの高度な実験のためのサンドボックスとして使用できるフレームワークを作成します
このリポジトリで利用可能なすべてのサンプルのリスト
プロジェクトの基本
コントロール
デバッグウィンドウ
サンプルを作成します
Vulkan Essentials
VulkanはOpenGL ESと比較してどうですか? Vulkanをターゲットにするとき、あなたは何を期待すべきですか?
その他
ドライバーバージョン
メモリ制限
前提条件:GITのGIT大きなファイルストレージ(Git-LFS)。
次のコマンドを使用して、サブモジュールでレポをクローンします。
git clone -recurse-submodules https://github.com/khronosgroup/vulkan-samples.git CDバルカンサンプル
以下のプラットフォームのビルド指示に従ってください。
注記 | 完全なリポジトリは非常に大きく、一部のISPは、クローンが作成されている間にGitHubに堅牢な接続を提供するのに苦労しているようです。 サブモジュールなどの問題がKB/sの長さで報告されているレートでダウンロードしたり、致命的なタイムアウトエラーが発生しているなどの問題に気付いた場合、これらは自分のネットワークセットアップで何でも間違っているのではなく、ISPの内部ネットワーク内のGitHubへのネットワークルーティングの問題が原因である可能性があります。 ISPにそのような問題が存在することを認めさせることは非常に困難であり、それらを修正するのははるかに少なくなります。 1つの回避策は、サブモジュールのダウンロード前にSSHプロトコルを使用するようにリポジトリを切り替えることです。 git clone [email protected]:KhronosGroup/Vulkan-Samples.git
cd Vulkan-Samples
perl -i -p -e ' s|https://(.*?)/|git@1:|g ' .gitmodules
git submodule sync
git submodule updateこの接続問題に遭遇している場合、これは良い代替手段になりますが、SSHプロトコルを使用するにはGitHub SSHキー認証セットアップが必要です。詳細については、GitHubに接続してSSHを参照してください。そのため、リポジトリのデフォルトとして実装できるソリューションではありません。 役立つ別のオプションは、VPNサービスを介してGitHubを実行することです。 |
Windows-ビルドガイド
Linux-ビルドガイド
Android-ビルドガイド
MacOS-ビルドガイド
iOS-ビルドガイド
以下は、Vulkanサンプルの構成と実行方法に関するコマンドラインの使用例を示しています。
リポジトリのルートディレクトリからサンプルを実行していることを確認してください。それ以外の場合、サンプルは資産を見つけることができません。 ./build/app/bin/<buildtype>/<arch>/vulkan_samples
#全体の使用について Vulkan_samples-ヘルプ #サブコマンドの使用の使用 vulkan_samples <sub_command> - help #SwapChain画像サンプルを実行します Vulkan_samplesサンプルSwapChain_images #5000フレームのベンチマークモードでAFBCサンプルを実行する Vulkan_samplesサンプルAFBC - ベンチマーク - ストップ後のフレーム5000 #headless_surfaceを使用してCompute nbodyを実行し、フレーム5のスクリーンショットを取ります #注:headless_surfaceはvk_ext_headless_surfaceを使用します。 #これにより、表面とスワップチャインが作成されますが、存在します。 #拡張機能はSwiftshader(https://github.com/google/swiftshader)によってサポートされています。 #GPUなしで環境でコンテンツをすばやくテストすることができます。 vulkan_samplesサンプルcompute_nbody -headless_surface -screenshot 5 #すべてのパフォーマンスサンプルを各構成で10秒間実行します Vulkan_samplesバッチ - カテゴリのパフォーマンス - 期間10 #AndroidデバイスでSwapChain画像のサンプルを実行します ADB Shell Am Start -Activity -N com.khronos.vulkan_samples/com.khronos.vulkan_samples.samplelauncherActivity -eサンプルswapchain_images
ライセンスを参照してください。
このプロジェクトには、いくつかのサードパーティの依存関係があります
このプロジェクトは、Vulkan-Samples-Assetsからの資産を使用しています。それぞれに独自のライセンスがあります。
Vulkanは、Khronos Group Inc.の登録商標です。
Sascha WillemsとAdam Sawickiによるさらなる貢献により、ARMによってKhronosに寄付されました。完全な貢献者リストについては、貢献者を参照してください。
貢献ガイドラインの貢献も参照してください。
Mali GPUのベストプラクティス:効率的なAPI使用に関する推奨事項を備えたドキュメント