[Redshift] OSL(オープン・シェーディング・ランゲージ)

Open Shading Language

記事内で紹介する商品を購入することで、当サイトに売り上げの一部が還元されることがあります。

Cinema 4D版 RedshiftでOSL(Open Shading Language)を使う方法をC3D YouTubeチャンネルで公開しました。本記事ではその概要をお伝えします。詳しい内容は、YouTubeをご覧ください。

OSL(Open Shading Language)とは

OSL(Open Shading Language)は、Sony Pictures Imageworksが長編映画のアニメーションやVFXに使用するインハウスのレンダラー用に開発した、高度なレンダラーやその他のアプリケーションでプログラム可能なシェーディングのための言語。マテリアル、ライト、ディスプレイスメント、パターン生成などの記述に最適です。

他のスタジオやレンダリングソフトの開発元が使用できるようにオープンソースとして公開され、現在ではVFXやアニメーション作品のシェーディング言語の業界標準になっています。詳しくは、GithubのOSLのページをご覧ください。

OSLを知ったきっかけはYokoharaさんのツイート

私はプロの3DアーティストであるYokoharaさんのツイートを見て、OSLのことを知り、ツイートと同じようなものをCinema 4D版のRedshift で再現してみました。

Cinema 4D版 RedshiftでOSLを使う方法

Cinema 4D版のRedshiftでOSLを使う手順は次のとおりです。

  1. Redshiftの標準マテリアルを開き、OSL Shaderのノードを追加
  2. OSL Shaderのノードに任意のOSLを入力し(※)、Compileボタンをクリック
  3. OSL Shaderノードを任意のノードのチャンネルに接続する

※公開されているOSLのコードをコピー&ペーストするのが一般的だと思います。

今回はYokoharaさんがリンクをツイートされていた、画像をランダム配置するOSLを使ってみました。Githubでは、他にも様々なRedshift用のOSLが公開されています。