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

関連記事

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

Pix2Pix:CGANによる画像変換

OpenFace:Deep Neural Networkによる顔の個人識別フレームワーク

トランスフォーマーの変形パターンを覚えるのは楽しいと思うんだ

フリーのUV展開ツール Roadkill UV Tool

ZBrushでアヴァン・ガメラを作ってみる 歯茎を別パーツへ分割

ヒーローに変身なりきりアーケードゲーム『ナレルンダー』

ラクガキの立体化 反省

OpenVDB:3Dボリュームデータ処理ライブラリ

Iridescence:プロトタイピング向け軽量3D可視化ライブラリ

viser:Pythonで使える3D可視化ライブラリ

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

ZScript

ZBrushで仮面ライダー3号を造る 仮面編 PolyGroupを分割する

サンプルコードにも間違いはある?

Math.NET Numerics:Unityで使える数値計算ライブラリ

fSpy:1枚の写真からカメラパラメーターを割り出すツール

この本読むよ

TVML (TV program Making language)

実写と実写の合成時の色の馴染ませテクニック

映画『ミュータント・タートルズ』を観てきた

PGGAN:段階的に解像度を上げて学習を進めるGAN

AndroidもopenGLも初心者さ (でもJavaは知ってるよ)

OpenCVでカメラ画像から自己位置認識 (Visual Odometry)

TorchStudio:PyTorchのための統合開発環境とエコシステム

シン・ゴジラのファンアート

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

JavaによるCGプログラミング入門サイト (日本語)

Mitsuba 3:オープンソースの研究向けレンダラ

仮想関数

ZBrush 2018での作業環境を整える

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

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

ZBrushでリメッシュとディティールの転送

法線マップを用意してCanvas上でShadingするサンプル

Paul Debevec

注文してた本が届いた

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

ZBrushのZScript入門

OpenCVの顔検出過程を可視化した動画

ZBrushで手首のモデリングをリファイン

ラクガキの立体化 モールドの追加

コメント