メインメニューを開く

差分

MonoGameでプログラマブルシェーダーを使う

2,140 バイト除去, 2020年6月10日 (水) 01:35
内容を「== プログラマブルシェーダーのコンパイル == 2020年5月に発表されたMonoGame 3.8.0 (preview版)からプログラマブルシェーダー周りが…」で置換
== MonoGame標準 プログラマブルシェーダーのコンパイル ==2016年10月時点の[[MonoGame]] 2020年5月に発表されたMonoGame 3.5(および38.6ベータ版)では[[Windows]]上でのみ[[プログラマブルシェーダー]]([[fxファイル]])の[[コンパイル]]ができる。逆を言えば0 (preview版)からプログラマブルシェーダー周りが大幅に変更された。[[Mac]]や[[Linux]]上で[[Xamarin Studio]]を使って開発している場合には[[プログラマブルシェーダー]]の[[コンパイル]]できない。これはMonoGame付属のプログラマブルシェーダーのコンパイラが複数の環境に対応したコードを生成する過程の問題で、まず[[Direct3D]]向けにコンパイルし、その成果物を[[MojoShader]]に食わせて[[OpenGL]]形式に変換しているためである。このため現状の実装ではOpenGLしか存在しないMacやLinuxではどうにもならない。 なお、xnbファイルにコンパイルさえしてしまえば各環境で動かすことができる。 == InfinitespaceStudios.Pipeline ==でもビルドできるようになったぞ。* [[Mac]]や[[Linux]]上の[[Xamarin Studio]]で[[シェーダー]]([[fxファイル]])を使えるようにする素晴らしい[[クラウドサービス]]が登場した。その名も「[[InfinitespaceStudios.Pipeline]]<ref>https://pipelineMonoGame 3.infinitespace-studios8.co.uk</ref><ref>https://github.com/infinitespace-studios/InfinitespaceStudios.Pipeline</ref><ref>https://www.nuget.org/packages/InfinitespaceStudios.Pipeline/</ref>」の「RemoteEffectProcessor」。 リモート・エフェクト・プロセッサー! これはなんと[[fxファイル]]を[[コンパイル]]してくれるオンラインサービスである。[[ネット]]が繋がっていれば利用できる。開発者はInfinitespace Studiosという英国紳士のようだ。こいつは凄い。 しかもコンテンツパイプライン用の拡張プラグインはもとより、[[サーバー]]実装も[[GitHub]]上に[[オープンソース]]として公開されており<ref>https://github.com/infinitespace-studios/InfinitespaceStudios.Pipeline</ref><ref>https://www.nuget.org/packages/InfinitespaceStudios.Pipeline/</ref>、自前で[[サーバー]]を立てることもできる。こいつは凄い。[[ソース]]を読むと単にWindowsマシンにfxファイルを投げているだけのようである。さっそく[[VirtualBox]]にぶち込んでみた。 == 関連項目 ==* [[シェーダー]]* [[HLSL]] ([[fxファイル0以降でfxファイルをコンパイルする]])* [[:Category:MonoGame|MonoGameカテゴリ]] == 参考文献 =={{reflist}} {{stub}} [[category: MonoGame]][[category: Xamarin3.7.Studio1以前でfxファイルをコンパイルする]]