Vulkan Programming Vol.2
- 物販商品(倉庫から発送)ネコポス可能紙冊子¥ 1,000
- ダウンロード商品電子版¥ 1,000
マルチプラットフォームで使える Vulkan のプログラミング入門本の第2巻です。 前回の “Vulkan Programming Vol.1” では、ポリゴンの描画までを主対象とし、簡単なモデル形状を描画するまでを説明しました。 今回は、 HDR10 の出力や、ウィンドウサイズの動的変更、テクスチャレンダリング、 MikuMikuDance (MMD) での形式 PMD/VMD を読み込んでキャラクターを描画&踊らせるまでを説明しています。 また、 Vulkan のパイプラインバリアに関しても説明の章を設けました。 前回の続きとして、 Vulkan の勉強を始めている方に見てもらえたら嬉しく思います。
ポイント
・第1巻では説明できなかったテクスチャレンダリングを説明しています。 ・他にも各種描画で使われる基本的な機能紹介を行っています。 ・パイプラインバリアの日本語による説明があります。 ・MMDの PMD/VMD ファイルを用いてのキャラクター描画&アニメーションの実装を行います。 この本で作成するサンプルの動きは、こちらのブログページ https://blog.techlab-xe.net/techbookfest/techbookfest7-info の方で少し確認することができます。
Vulkan Programming シリーズ
⚙️ Vulkan Programming Vol.1 Vulkan 概要から初期化、基本的な描画編です。 👉 詳しくはこちら。 https://slash-labo.booth.pm/items/1286100 ⚙️ Vulkan Programming Vol.2 テクスチャレンダリング解説と、MMD(PMD/VMD)描画&アニメーション編です。 Vol.1 でポリゴン描画を終えた方を対象としています。 👉 詳しくはこちら。 https://slash-labo.booth.pm/items/1572740 ⚙️ Vulkan Programming Vol.3 未解説だったシェーダーステージの解説編です。 テッセレーション・ジオメトリシェーダーとコンピュートシェーダーを取り扱っています。 👉 詳しくはこちら。 https://slash-labo.booth.pm/items/1851411 ⚙️ Vulkan Programming Vol.4 これまでに未解説だった機能の紹介や、描画のサンプルを紹介しています。 法線マップ関連・ディファードレンダリング・GPU パーティクルなど、説明しております。 👉 詳しくはこちら。 https://slash-labo.booth.pm/items/4138122
目次
全 117ページ 第1章 はじめに 1.1 対象読者 1.2 動作環境 1.3 サンプルコード 第2章 セットアップ 2.1 Vulkan SDK の準備 2.2 依存ライブラリについて 2.3 サンプルフレームワーク 2.4 まとめ 第3章 HDR10 ディスプレイへの表⽰ 3.1 HDR 出⼒要件 3.2 HDR の出⼒が対応しているかを確認 3.3 float バッファで出⼒する 3.4 メタデータの設定 3.5 描画結果 3.6 まとめ 第4章 可変ウィンドウとフルスクリーン 4.1 ウィンドウのリサイズ対応 4.2 ディスプレイサイズでフルスクリーン化 4.3 起動時にフルスクリーンにする 4.4 描画コマンドの可変サイズ対応 4.5 まとめ 第5章 ImGui を組み込む 5.1 ImGui の準備 5.2 ImGui を組み込む 5.3 ウィジェットの追加 5.4 まとめ 第6章 インスタンシング描画 6.1 頂点ストリームを使う 6.2 ユニフォームバッファを使う 6.3 まとめ 第7章 テクスチャレンダリング 7.1 描画可能なテクスチャリソースの⽣成 7.2 ディスクリプタの準備 7.3 テクスチャに描画する 7.4 パイプラインバリアの設定 7.5 テクスチャを使う 7.6 描画サンプル 7.7 まとめ 第8章 ポストエフェクト 8.1 全画⾯ポリゴン 8.2 モザイクシェーダー 8.3 ⽔⾯⾵エフェクト 8.4 まとめ 第9章 Resource State とPipeline Barrier 9.1 リソースのステート追跡 9.2 パイプラインステージのバリア 9.3 メモリアクセスのバリア設定 9.4 まとめ 第10章 セカンダリコマンドバッファ 10.1 セカンダリコマンドバッファとは 10.2 セカンダリコマンドバッファの準備 10.3 セカンダリコマンドバッファを⽤いた描画 10.4 まとめ 第11章 キャラクターモデルを描画する 11.1 スキニングについての説明 11.2 PMD ファイルの説明 11.3 PMD 形式の読み込みと描画データの構築 11.4 ディスクリプタセットレイアウトの設計 11.5 描画パスの実装 11.6 スキニングの計算 11.7 輪郭線の描画 11.8 シャドウマップ 11.9 表情モーフの実装 11.10 描画本体の実装 11.11 まとめ 第12章 VMD アニメーション再⽣ 12.1 VMD ファイルの説明 12.2 CCD-IK 12.3 キーフレームアニメーションの実装 12.4 CCD-IK の実装と描画 12.5 膝の曲げをより良く 12.6 まとめ 第13章 マルチサンプルアンチエイリアス 13.1 MSAA テクスチャを作成 13.2 描画処理の実装 13.3 VkRenderPass での設定⽅法 13.4 まとめ