[解決済み] バーテックスシェーダとフラグメントシェーダの比較 [重複].
2022-05-16 18:38:56
質問
Cg に関するチュートリアルをいくつか読みましたが、1 つだけはっきりしないことがあります。 頂点シェーダーとフラグメントシェーダーの違いは何ですか? また、どのような状況において、一方が他方よりも適しているのでしょうか?
どのように解決するのですか?
フラグメントシェーダは、ピクセルシェーダと同じです。
主な違いは、バーテックスシェーダはポリゴンのコーナーポイントである頂点の属性を操作できることです。
一方、フラグメントシェーダは、頂点と頂点の間のピクセルがどのように見えるかに気を配ります。定義された頂点間のピクセルは、特定の規則に従って補間されます。
たとえば、ポリゴンを完全に赤くしたい場合は、すべての頂点を赤く定義します。頂点間にグラデーションのような特定の効果を与えたい場合は、フラグメントシェーダで行う必要があります。
別の言い方をすれば
バーテックスシェーダーはグラフィックパイプラインの初期段階の一部で、モデル座標変換とポリゴンクリッピングの間のどこかだと思います。その時点では、まだ何も行われていません。
しかし、フラグメント/ピクセル シェーダーはラスタライズ ステップの一部であり、画像が計算され、頂点間のピクセルが塗りつぶされるか、または色付けされます。
グラフィックス パイプラインについては、ここを読めばすべてが明らかになります。 http://en.wikipedia.org/wiki/Graphics_pipeline
関連
-
[解決済み] glEnableVertexAttribArrayは具体的に何をするのですか?
-
[解決済み] ハードウェアカーソルとはどのようなもので、どのように機能するのですか?
-
[解決済み] 頂点シェーダとフラグメントシェーダにおけるgl_Colorとgl_FrontColorの関係を教えてください。
-
[解決済み] glRotate(angle,x,y,z), この場合のx,y,zは何ですか?
-
[解決済み] glutDisplayFuncとglutPostRedisplayの関係性を理解する。
-
opengl glGetIntegerv エラーを使用します。アクセス違反 ロケーション0x0000000000000000を実行中
-
GLMライブラリの概要 glm::transform, glm:scale, glm::rotate
-
[解決済み] FOVXの計算(openGL)
-
[解決済み】GLSLシェーダをデバッグする方法は?
-
[解決済み] OpenGLのフレームバッファとレンダーバッファの概念と違いについて教えてください。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] テスト
-
[解決済み] glReadPixelsはどのように動作するのですか?
-
[解決済み] OpenGL - GLenumはどのように符号なし32ビット整数ですか?
-
[解決済み] gl_FragColorとout vec4カラーを使用する?
-
[解決済み] Ken Silverman氏のVoxlapエンジンで使用されているアルゴリズムについて、どなたか教えてください。
-
[解決済み] gl_PointSizeの動作について
-
[解決済み] glutDisplayFuncとglutPostRedisplayの関係性を理解する。
-
[解決済み] glutSpecialFuncを正しく使うには?
-
[解決済み] GL_COLOR_BUFFER_BITとGL_DEPTH_BUFFER_BITは何のためにあるのでしょうか?
-
[解決済み] glActiveTextureとglBindTextureの違いと関係