Open Shading Language (OSL)

syoyoさんに教えてもらったオープンソースプロジェクトの1つ→Open Shading Languageにある説明の適当翻訳↓

Open Shading Language (OSL)は小規模ながら、先進的なレンダラーや他のアプリケーションでのShaderプログラミングに適した言語であり、マテリアル、ライト、ディスプレイスメント、パターン生成等の記述にも理想的です。

OSLの特徴やより詳しい概要、現在のプロジェクト状況、今後のロードマップはこちらの説明をお読みください。また、OSLの仕様書はこちらからダウンロードできます。

OSLプロジェクトは、OSLからバイトコードのような中間アセンブリへ翻訳するコンパイラ、OSLのShaderを点の集合上でSIMD演算によって実行するインタプリタ、広範にわたる標準的なShaderの関数ライブラリ等を含む統合環境です。これらはすべて、簡単なC++ APIのライブラリとして用意されており、既存のレンダラー、コンポジットソフト、可視化ツールやその他のアプリケーションへ簡単に統合することができます。さらに、ソースコードはレンダラ固有の拡張・修正機能、GPUに変換するためのカスタムback-ends、その他の特殊なハードウェアにあわせて簡単にカスタマイズすることが可能です。

OSLはソニーピクチャーズイメージワークスが社内のレンダラで長編映画、アニメーションや視覚効果に使用するために開発しました。OSLの言語仕様は、使用を希望する他の視覚効果・アニメーションスタジオの意見も取り入れて開発されました。

知識不足により一部うまく訳せてないけど…

調べてみると、これは2009年の夏に公開された5つのプロジェクトの1つらしい。以下Webニュース記事の要約

Open Source Imageworks
Sony Pictures Digital Productionsの子会社であるSony Pictures Imageworksはコンピュータグラフィックス分野向けの開発ツールやライブラリを公開した。
公開したのは、3DのCGソフト「Maya」向けのカメラマスキング用プラグイン「Maya Reticule」、レンダリング用のプログラマブルシェーディング言語「Open Shading Language(OSL)」、ボクセル(voxel)データストレージライブラリ「Field3d」、データベースマイグレーションツール「Scala Migration」、PythonライクなC++ストリング処理ライブラリ「Pystring」の5つ。
同社ではこれまで運用環境などでLinuxなどオープンソース技術を利用しており、今回のオープンソースプロジェクトにより技術をコミュニティに還元するとしている。オープンソースにすることでコミュニティを構築し、コードの採用と改良を促進する狙い。
5つのプロジェクトの詳細情報は専用サイトから入手できる。ライセンスはNew BSD Licenseを採用した。

とりあえずグループに参加してしばらくROMるつもり。(仕様書にあるExampleから学ぼうと思ったらまだ項目だけで白紙だった)
syoyoさんに教えてもらったもう1つのオープンソースプロジェクトLuxrenderも調べてみるつもり。

関連記事

オープンソースの顔の動作解析ツールキット『OpenFace』

Alice Vision:オープンソースのPhotogram...

OpenCV 3.3.0 contribのsfmモジュールの...

マジョーラ

『スター・ウォーズ/スカイウォーカーの夜明け』のVFXブレイ...

VCG Library:C++のポリゴン操作ライブラリ

ManimML:機械学習の概念を視覚的に説明するためのライブ...

ZBrushでアヴァン・ガメラを作ってみる 脚のポーズ調整

Point Cloud Utils:Pythonで3D点群・...

フルCGのウルトラマン!?

Unity ARKitプラグインサンプルのチュートリアルを読...

ZBrushでアヴァン・ガメラを作ってみる 壊れたデータの救...

3Dモデルを立体視で確認できるVRアプリを作っている

Math Inspector:科学計算向けビジュアルプログラ...

OpenMayaのPhongShaderクラス

CGのためのディープラーニング

openMVG:複数視点画像から3次元形状を復元するライブラ...

Autodesk Mementoでゴジラを3次元復元する

openMVGをWindows10 Visual Studi...

ZBrushでアヴァン・ガメラを作ってみる 甲羅の修正・脚の...

世界一下品なクマと世界一紳士なクマ

TVML (TV program Making langua...

OpenMVSのサンプルを動かしてみる

Photogrammetry (写真測量法)

映画『ジュラシック・ワールド/炎の王国』のVFXブレイクダウ...

日本でMakersは普及するだろうか?

Multi-View Environment:複数画像から3...

Mayaのシェーディングノードの区分

ポリ男をリファイン

CEDEC 3日目

ラクガキの立体化 胴体の追加

DUSt3R:3Dコンピュータービジョンの基盤モデル

ZBrushで仮面ライダー3号を造る ベース編

ZBrushでゴジラ2001を作ってみる 目元だけ作り込んで...

ZBrushでアヴァン・ガメラを作ってみる 首回りの修正・脚...

cvui:OpenCVのための軽量GUIライブラリ

ニューラルネットワークで画像分類

クラスの基本

ZBrushでアヴァン・ガメラを作ってみる 口内の微調整・身...

スクラッチで既存のキャラクターを立体化したい

UnityでPoint Cloudを表示する方法

AnacondaとTensorFlowをインストールしてVi...

コメント