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も調べてみるつもり。

関連記事

グローバルイルミネーションに手を出す前に、やり残したことがあるんじゃない?

Point Cloud Libraryに動画フォーマットが追加されるらしい

読みやすくて高速なディープラーニングのフレームワーク『Caffe』

clearcoat Shader

BlenderのGeometry Nodeで遊ぶ

Shader.jp:リアルタイム3DCG技術をあつかうサイト

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

TensorFlowでCGを微分できる『TensorFlow Graphics』

Rerun:マルチモーダルデータの可視化アプリとSDK

注文してた本が届いた

PeopleSansPeople:機械学習用の人物データをUnityで生成する

CNN Explainer:畳み込みニューラルネットワーク可視化ツール

ZBrushでゴジラ2001を作ってみる 身体のSubToolを分割

布のモデリング

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

Oculus Goを購入!

書籍『ROSプログラミング』

Texturing & Modeling A Procedural ApproachをGoo...

Runway ML:クリエイターのための機械学習ツール

TensorSpace.js:ニューラルネットワークの構造を可視化するフレームワーク

SIGGRAPH論文へのリンクサイト

3D映画のポストプロダクション 2D-3D変換

自前Shaderの件 解決しました

Physics Forests:機械学習で流体シミュレーションを近似する

株式会社ヘキサドライブの研究室ページ

Mitsuba 2:オープンソースの物理ベースレンダラ

Kaolin:3Dディープラーニング用のPyTorchライブラリ

ZBrush 4R8 リリース!

BGSLibrary:OpenCVベースの背景差分ライブラリ

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

書籍『The Art of Mystical Beasts』を購入

C++ 標準テンプレートライブラリ (STL)

デザインのリファイン再び

顔のモデリング

タダでRenderManを体験する方法

3Dスキャンしたテクスチャから照明を除去するUnityツール『De Lighting tool』

物理ベースレンダリングのためのマテリアル設定チートシート

MVStudio:オープンソースのPhotogrammetryツール

BlenderのPython環境にPyTorchをインストールする

KelpNet:C#で使える可読性重視のディープラーニングライブラリ

iPhone 3GSがますます欲しくなる動画

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

コメント