「シェーダー」の版間の差分

imported>Administrator
imported>Administrator
編集の要約なし
1行目: 1行目:
'''シェーダー'''([[英語]]:shader)とは、主に[[GPU]]で行う処理を記述する[[プログラミング言語]]の総称である。
'''シェーダー'''([[英語]]:shader)とは、本来は3DCGで陰影処理を行うことをいう。
現在では主に[[GPU]]で行う処理の総称となっている。
 


== 概要 ==
== 概要 ==
[[GPU]]で動く[[プログラミング]]を書く[[プログラミング言語]]のことである。
シェーダーは大きくわけてGPUが固定機能として持つ「固定シェーダー」と、
ほとんどの[[ゲームフレームワーク]]や[[ゲームエンジン]]などでは無駄に[[プログラミング]]しなくても定番のレンダリング処理はあらかじめ[[固定シェーダー]]として用意されている。
プログラマが独自の処理を記述できる「[[プログラマブルシェーダー]]」に分けられる。
 
現在ではプログラマブルシェーダーが主流であるため「シェーダー=プログラマブルシェーダー」となっていることが多い。2018年時点で固定シェーダーを採用している現役製品はニンテンドー3DSくらいである。


独自のシェーダーを記述できるものを「[[プログラマブルシェーダー]]」という。
また、ほとんどの[[ゲームフレームワーク]]や[[ゲームエンジン]]では無駄に[[プログラミング]]しなくても定番のレンダリング処理はあらかじめ[[固定シェーダー]]として用意されている。これらでは内部的にはプログラマブルシェーダーを叩いているがソフトウェア的に固定シェーダーに見せている。


GPUなので画像データの加工に特化したものが多いが、最近は[[人工知能]]だ[[ブロックチェーン]]だと[[GPGPU]]の絡みで普通の計算もし易い仕様の言語が増えている。
最近は[[人工知能]]だ[[ブロックチェーン]]だと[[GPGPU]]の絡みで普通の計算もし易い仕様のプログラミング言語も増えている。


== DXライブラリのシェーダー ==
== DXライブラリのシェーダー ==
141行目: 145行目:
* [[画像処理]]
* [[画像処理]]
* [[シェーディング言語]]
* [[シェーディング言語]]
* [[MonoGame/シェーダーを使う]]
* [[MonoGameでシェーダーを使う]]
 
== 参考文献 ==
{{reflist}}
 
{{stub}}


[[category: コンピューター・グラフィックス]]
[[category: コンピューター・グラフィックス]]
[[category: 3DCG]]