2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

初めてのVulkanプログラミング step5 グラフィクスパイプラインとは、

Posted at

目次に戻る

ソースコードは以下の場所に置いておきます。各自のバージョンに合わせたプロパティ設定をしてから自由にご利用ください。

GitHub

##はじめに
5章では、三角形を描くグラフィックスパイプラインを作成します。
グラフィックスパイプラインとは、一言でいうと、3Dオブジェクトをディスプレイに映し出す処理のことです。
20160508210300.png

詳細に中身を見ていくと以下のような、ものがあります。

スケッチ (4).png
#### アセンブラ入力
3D,2Dオブジェクトから頂点データを収集し、インデックスバッファーに格納します

バーテックスシェーダー

インデックスバッファーから、受け取った三角形の頂点の座標をスクリーン上のどこに配置するか計算して決める。

テッセレーション

メッシュ品質を向上させるために、一定のルールに基づいてジオメトリを細分化します。
左のキャラクターから、右のキャラクターのように、テッセレーションを行うことによってより複雑な凹凸を作り上げることができます。
スケッチ (5).png

ジオメトリシェーダー

オブジェクト内の頂点の集合を加工する。ジオメトリシェーダーにより、実行時に頂点数を増減させたりすることができる

ラスタライズ

線や頂点の集合から、ドットの集合に変換します。

フラグメントシェーダ

ドットの集合にどのような色を付けるのか決定します。

カラーブレンディング

同じ画素に異なるマッピングが重なったときにどのように処理するか計算します。

緑色の段階は、固定パイプラインと呼び、事前に動作は定義された仕様に沿ってパラメータを変更することで微調整することができます。
オレンジ色の段階は、自分のプログラムをGPUにアップロードして、必要な操作を適用することができます。これによりフラグメントシェーダーを用いて、ライティングから、レイトレーシングまで広く追加することができます。

##終わりに
次回は、バーテックスシェーダーとフラグメントシェーダを作成します。

##連絡先
tweeter: tositada_nakada
mail: nakadasanda@outlook.com

寄付

paypal: tositada_nakada
Amazon:欲しいものリスト

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?