「ジオメトリシェーダー」の版間の差分

提供: MonoBook
ナビゲーションに移動 検索に移動
imported>Administrator
 
(2人の利用者による、間の5版が非表示)
1行目: 1行目:
'''ジオメトリシェーダー'''([[英語]]:Geometry Shader)とは、[[シェーダー]]のうち、[[バーテックスシェーダー]]で処理された[[頂点データ]]から作られた[[プリミティブ]](「面」および「隣接する面」、なお「面」ではなく「線」の場合もある)を入力し、[[ピクセルシェーダー]]に渡すための[[ピクセル]]群(面の内側のピクセル)を出力するものをいう。ようするに三角形の[[ポリゴン]][[ピクセル]]の[[配列]]に変換するシェーダーである。
+
'''ジオメトリシェーダー'''([[英語]]:Geometry Shader)とは、[[シェーダー]]のうち、[[バーテックスシェーダー]]で処理された[[頂点データ]]から作られた[[プリミティブ]](「面」および「隣接する面」、なお「面」ではなく「線」の場合もある)を入力し、[[ピクセルシェーダー]]に渡すための[[ピクセル]]群(面の内側のピクセル)を出力するものをいう。
 +
 
 +
ようするに三角形の[[ポリゴン]](ベクトル画像)を[[ピクセル]]の[[配列]](ビットマップ画像)に変換する[[シェーダー]]である。
 +
 
 +
SM3.0までは[[バーテックスシェーダー]]から出力された頂点群(ポリゴン)は[[GPU]]上の固定機能としてピクセル配列に分解され[[ピクセルシェーダー]]に渡されていた。固定機能のものは「[[ラスタライザー]]」などと呼ばれることが多い。
 +
 
 +
[[Direct3D]] 10 (シェーダーモデル 4.0)から[[プログラマブルシェーダー]]となった。
  
== 概要 ==
 
[[DirectX]] 10 (シェーダーモデル 4.0)から[[プログラマブルシェーダー]]になった。SM3.0までは[[バーテックスシェーダー]]から出力された頂点群(ポリゴン)は[[GPU]]上の固定機能としてピクセル配列に分解され[[ピクセルシェーダー]]に渡されていた。
 
 
[[ファイル:ピクセルシェーダー.png|none|ポリゴンをジオメトリシェーダーでピクセル群に分解する]]
 
[[ファイル:ピクセルシェーダー.png|none|ポリゴンをジオメトリシェーダーでピクセル群に分解する]]
  
 
== 主な用途 ==
 
== 主な用途 ==
 
知らん。
 
知らん。
 +
 +
Direct3D 10のときは主にジオメトリシェーダーでテッセレーションを自前実装していたとされる。Direct3D 11でテッセレーションが別途実装となったので最近では何に使われているのか本当に謎である。
  
 
== 関連項目 ==
 
== 関連項目 ==
18行目: 24行目:
 
* [[HLSL]]
 
* [[HLSL]]
 
* [[OpenGL ES]]
 
* [[OpenGL ES]]
 +
 +
[[category: コンピューター・グラフィックス]]

2022年10月26日 (水) 06:53時点における最新版

ジオメトリシェーダー英語:Geometry Shader)とは、シェーダーのうち、バーテックスシェーダーで処理された頂点データから作られたプリミティブ(「面」および「隣接する面」、なお「面」ではなく「線」の場合もある)を入力し、ピクセルシェーダーに渡すためのピクセル群(面の内側のピクセル)を出力するものをいう。

ようするに三角形のポリゴン(ベクトル画像)をピクセル配列(ビットマップ画像)に変換するシェーダーである。

SM3.0まではバーテックスシェーダーから出力された頂点群(ポリゴン)はGPU上の固定機能としてピクセル配列に分解されピクセルシェーダーに渡されていた。固定機能のものは「ラスタライザー」などと呼ばれることが多い。

Direct3D 10 (シェーダーモデル 4.0)からプログラマブルシェーダーとなった。

ポリゴンをジオメトリシェーダーでピクセル群に分解する

主な用途[編集 | ソースを編集]

知らん。

Direct3D 10のときは主にジオメトリシェーダーでテッセレーションを自前実装していたとされる。Direct3D 11でテッセレーションが別途実装となったので最近では何に使われているのか本当に謎である。

関連項目[編集 | ソースを編集]