「SL Sharp」を編集中
ナビゲーションに移動
検索に移動
この編集を取り消せます。 下記の差分を確認して、本当に取り消していいか検証してください。よろしければ変更を保存して取り消しを完了してください。
最新版 | 編集中の文章 | ||
1行目: | 1行目: | ||
− | '''SL#''' | + | '''SL#'''(えすえるしゃーぷ)とは、[[GPU]]で実行される[[プログラマブルシェーダー]]を、超高級言語である[[C Sharp|C#]]で書けてしまうという夢のような[[オープンソース]]の[[フレームワーク]]である。[[ライセンス]]は[[MITライセンス]]となっている。 |
== 概要 == | == 概要 == | ||
SL#の一番の核となる機能は、[[.NET Framework]]の世界で使われている[[中間コード]]形式である[[共通中間言語]]([[CIL]])を、[[DirectX]]で使われる[[HLSL]]や[[OpenGL]]で使われる[[GLSL]]などの各種高級[[シェーディング言語]]に変換するエンジンにある。 | SL#の一番の核となる機能は、[[.NET Framework]]の世界で使われている[[中間コード]]形式である[[共通中間言語]]([[CIL]])を、[[DirectX]]で使われる[[HLSL]]や[[OpenGL]]で使われる[[GLSL]]などの各種高級[[シェーディング言語]]に変換するエンジンにある。 | ||
− | + | この変換エンジンはSL#に同梱されるクラスライブラリを使用(継承)して作られた[[シェーダー]]を[[CIL]]の中から自動抽出し、対象となる[[シェーディング言語]]に変換する。これにより[[HLSL]]([[DirectX]])と[[GLSL]]([[OpenGL]])の非互換の垣根を超えることができ、[[Windows]]上で開発した[[プログラム]]を[[Linux]]や[[Mac OS X]]上の[[Mono]]で動かす際に桁違いに捗ることを意味する。 | |
− | + | さらに[[HLSL]]や[[GLSL]]といった[[シェーディング言語]]に変換された[[ソースコード]]は、内部的に各種シェーディング言語の[[コンパイラ]]により暗黙的に[[コンパイル]]されたのち、自動的に[[GPU]]に送り込まれる。このため[[プログラマー]]は[[GPU]]を深く意識する必要がない。 | |
− | + | また、[[プログラマー]]は[[Visual Studio]]や[[MonoDevelop]]、[[SharpDevelop]]といった使い慣れた[[統合開発環境]]を使用でき、[[コード補完]]や[[構文チェック]]などの恩恵を受けることができる。さらに[[シェーダー]]は[[C Sharp|C#]]の[[コンパイラ]]で事前に検証されるため[[実行時エラー]]を最小限に抑えることができ[[デバッグ]]が捗るという利点もある。 | |
== 備考 == | == 備考 == | ||
33行目: | 33行目: | ||
* https://github.com/IgniteInteractiveStudio/SLSharp | * https://github.com/IgniteInteractiveStudio/SLSharp | ||
− | + | {{stub}} | |
− |