RenderMan(レンダーマン、旧PhotoRealistic RenderMan)はピクサー・アニメーション・スタジオによって開発されたレンダリング用のソフトの一群。

ピクサーは1986年、ルーカスフィルムのコンピュータ・アニメーション部門をスティーブ・ジョブズ(Appleの前CEO、アップルコンピュータ創業者の一人)らが買収して設立した会社であるが、RenderMan自体の開発はピクサー設立前からコンピュータグラフィック (CG) 研究者であるエドウィン・キャットマルらによってなされていた。

元々の構想は、CG業界の標準となるレンダリング・インタフェース言語の構築であり、そのシェーディング言語のフォーマットそのものがRenderManと呼ばれていた。その後、ピクサー・イメージ・コンピュータ (PIC) というピクサーが販売していた画像処理専用の高性能コンピュータ(スティーブ・ジョブズによると「顧客はある政府機関」)に搭載されていたレンダリングシステム「Reyes」を、RIB (RenderMan Interface Bytestream) フォーマットへの対応を中心に改良した物が「PhotoRealistic (PR) RenderMan」として商品化され、『アビス』『ターミネーター2』で使用された事で注目を浴びた。2005年にはMayaのプラグインとして機能するRenderMan for Mayaが発売され、GUIによる設定が可能になった。

現在も技術更新が継続されており、フォトリアリスティックな3DCGを制作する上で役立つことから、ピクサーのCGアニメーション作品は勿論の事、『ジュラシック・パーク』、『スター・ウォーズ』、『ロード・オブ・ザ・リング』などのハリウッドによるVFXでは不可欠なレンダリングツールのデファクトスタンダードとなって、随所で頻繁に使用されている。

この結果、映画産業への多大な技術的貢献が評価され、開発者のキャットマルらにはアカデミー賞が授与された。

ピクサーがディズニーに買収されたことによって、現在RenderManはディズニーの資産である。

## 対応アプリケーション

- 公式
  - Maya (RenderMan for Maya、旧RenderMan Studio←MTOR)
  - KATANA (RenderMan for KATANA)
  - Houdini (RenderMan for Houdini)
  - Blender (RenderMan for Blender) - オープンソース。元々はPixarとコミュニティが共同で開発していた。
- サードパーティー(RenderMan 22以降対応)
  - Metasequoia

### 過去の対応アプリケーション

#### RenderMan 21.x以前

RenderMan 22でライブレンダリングのためのインターフェースが旧来のRIB形式から新しいRILEYインターフェースへと変更され、商用顧客を優先するためとしてBlenderへの対応を後回しとした (24で復活)。

#### RenderMan 20以前

昔はREYESレンダリング/RSL (RenderMan Shading Language) シェーダーのRenderMan仕様がVFX業界におけるレンダリングのデファクトスタンダード(事実上の標準)となっていたが、その後、モダンパストレーシングレンダラー/OSLシェーダーにとって代わられたため、RenderMan 20以前のREYESモードのみにしか対応していないサードパーティー製ソフトウェアも多い。

- サードパーティー
  - NukeX/NukeStudio (PrmanRenderノード)
- サードパーティー (廃止)
  - Gaffer (GafferRenderMan、廃止)
  - Cinema 4D (Cineman、廃止)
- サードパーティー (不明)
  - Silo
  - Ayam
  - AC3D
  - solidThinking
  - K-3D
  - Wings 3D
  - Poser

また、過去には、Power Animator用のATORプラグイン (Pixar)、Maya用のMayaManプラグイン (Animal Logic) やLiquidプラグイン(オープンソース)、Rhinoceros用のRhinoManプラグイン (Brian Perry)、Lightwave用のLightManプラグイン (Timm Dapper)、3ds Max用のMaxManプラグイン (Animal Logic) やPaxRendusプラグイン (Archonus)、Softimage用のSoftManプラグイン (Animal Logic)、Poser用のPoserManなども存在していた。

## 互換レンダラー

### RenderMan 20以前の互換レンダラー

古くよりRenderManの仕様がRenderManインタフェース仕様として公開されていたため、RenderManには多くの互換レンダーが存在した。

過去には、DGS Renderer(Digital Arts製)、SunART(サン・マイクロシステムズ製)、JrMan (GPL)、Pixie (LGPL)、Angel(Ian Stephenson作、無料)、Aqsis(BSDライセンス)、RenderDotC (Dot C Software製)、BMRT/Entropy (後のNVIDIA Gelato)、3Delight 12以前、AIR (SiTex Graphics製) などの互換レンダラーも存在した。なお、過去にPixarは、互換レンダラーの一つであるEntropyの開発元Exluna社を、RenderManの特許侵害等で訴え、販売差し止めにしている (Blue Moon Rendering Tools参照)。

その他、変換ツールを使用することでRenderManとの互換性を確保したレンダラーも存在する。NVIDIAのGelatoは別途提供されたRibelato及びrsl2gslを用いることでRenderManとの互換性を確保していた。また、Side Effects SoftwareのHoudiniに搭載されているMantraレンダラーは、独自のVEX言語がRSLに近いほか、rmands / slo2otl.pyを通すことでRenderManとのシェーダーバイナリの互換性を確保していた (なお、Houdiniはsdl2otl.pyを通すことで3Delightとのシェーダーバイナリ互換性も確保している)。

なお、互換レンダラーであっても、コマンド名やコンパイル済みシェーダーの拡張子は衝突しないように異なったものとなっている。

### RenderMan RISモードの互換レンダラー

2014年にリリースされたRenderMan 19ではOSLシェーディング言語対応のパストレーシングレンダリングであるRISモードが搭載されるようになり、2016年のRenderMan 21以降は旧来のRenderManの仕様であったREYESレンダリング及びRSLシェーディング言語が廃止されてRISモードに一本化された。これにより旧来の互換レンダラーとの互換性が失われた。

なおRenderMan互換レンダラーの一つであった3Delightは2013年の3Delight 11以降パストレーシングモードを備えており、2017年の12.5以降はOSL言語にも対応するなど一部の互換性があった。Blender向けの公式RenderManアドオンは古い3Delightアドオンを基にして作られた。

### Hydraレンダーデリゲート対応レンダラー

RenderManは2019年の22.5以降、USD (Universal Scene Description) のHydraレンダーデリゲート対応レンダラーの一つとなった。

Hydraレンダーデリゲート対応レンダラーについてはUniversal Scene Description#レンダーバックエンドを参照。

### RenderMan互換レンダラーの比較

| レンダラー | 公式対応ソフトウェア | レンダリング コマンド | 対応シーン形式 | シェーダー コンパイラ | 対応シェーダー | シェーダーバイナリの拡張子 | MIPMAP生成プログラム | フレームバッファー/フリップブック |
| --- | --- | --- | --- | --- | --- | --- | --- | --- |
| RenderMan 20以前互換レンダラー | | | | | | | | |
| RenderMan 20以前 (REYESモード) | Maya | 'prman' | RIB | 'shader' | RSL (.sl) | .slo | 'txmake' | 'it' |
| 3Delight 12以前 (RSLモード) | Maya、3ds Max、Katana、DAZ Studio(搭載)、Softimage(廃止) | 'renderdl' | RIB | 'shaderdl' | RSL (.sl) | .sdl | 'tdlmake' | 'i-display' |
| AIR | Maya、Rhinoceros 3D、Houdini、Massive | 'air' | RIB | 'shaded' | RSL (.sl) | .slb | 'mktex' | 'airshow' |
| Angel |  | 'angel' | RIB | 'giles' | RSL (.sl) | .slc |  |  |
| Aqsis | Blender | 'aqsis' | RIB | 'aqsl' | RSL (.sl) | .slx | 'teqser' | 'piqsl' |
| BMRT |  | 'rendrib' | RIB | 'slc' | RSL (.sl) | .slc | 'mkmip' | 'iv' |
| Entropy |  | 'entropy' | RIB | 'sle' | RSL (.sl) | .sle | 'mkmip' | ? |
| Pixie |  | 'rndr' | RIB | 'sdrc' | RSL (.sl) | .sdr | 'texmake' |  |
| RenderDotC |  | 'renderdc' | RIB | 'shaderdc' | RSL (.sl) | .so/.dll | 'texdc' | ? |
| JrMan |  | 'jrman' | RIB |  | RSL (.sl) |  | 'mktxr' |  |
| Houdini Mantra (Micropolygonモード) | Houdini (搭載) | 'mantra' | bgeo、RIB等 | 'vcc' | VEX (.vfl)、RSL (.sl) | .otl | 'icp' | 'mplay' |
| NVIDIA Gelato | Maya、3ds Max | 'gelato' | Pyg、RIB (Ribelato経由) | 'gslc' | GSL (.gsl)、 RSL (.sl、rsl2gsl経由) | .gso | 'maketx' | 'iv' |
| Guerilla Render | Maya | 'render' | RIB |  | RSLサブセット |  |  |  |
| RIB及びOSL対応レンダラー | | | | | | | | |
| RenderMan (旧RISモード) | #対応アプリケーション参照 | 'prman' | RIB | 'oslc' | OSL (.osl) | .oso | 'txmake' | 'it' |
| 3Delight 12以前 (OSLモード) | RSLモードの項を参照 | 'renderdl' | RIB | 'oslc' | OSL (.osl) | .oso | 'tdlmake' | 'i-display' |
| USD及びOSL対応レンダラー | | | | | | | | |
| 3Delight | Maya、Katana、Houdini | 'renderdl' | NSI、USD (HydraNSI経由) | 'oslc' | OSL (.osl) | .oso | 'tdlmake' | 'i-display' |
| Arnold 6.0.2.0以降 | Maya(搭載)、3ds Max(搭載)など | 'kick' | ASS、USD | 'oslc' | OSL (.osl) | .oso | 'maketx' |  |
| RenderMan非互換レンダラー (参考) | | | | | | | | |
| NVIDIA Mental Ray | Maya(過去に搭載)、3ds Max(過去に搭載)、Softimage(搭載)など | 'ray' | MI | 'ray -mslc'(廃止) | MetaSL (.msl/.xmsl) | .so/.dll | 'imf\_copy' | 'imf\_disp' |
|

1. 1 2  原則的にC++などの汎用プログラミング言語を除く
2. ↑  旧PhotoRealistic RenderMan (PRMan)
3. ↑  HoudiniやCinema 4D (Cineman) などで使うこともできた
4. ↑  HoudiniやCinema 4D (Cineman)やBlender (3Delight/Blenderアドオン)などで使うこともできる
5. ↑  AIR Stream Maya-to-AIR plug-in
6. ↑  RhinoAirプラグイン
7. ↑  RIBMosaicアドオン
8. ↑  Mangoプラグイン
9. ↑  Amarettoプラグイン(Frantic Films製)
10. ↑  Pythonベース
11. ↑  3Delight 13以降

### RSLシェーダー構築ツール

RenderManのMaya版にはRSLシェーダー構築ツールのSLIMが付属していた。互換レンダラーでは、AIRレンダラーがVshadeを付属していた。その他、単体のRSL構築ツールとしては、ShaderManやShrimpが存在した。