OpenEXR(オープンイーエックスアール)はハイダイナミックレンジイメージ(High-Dynamic-Range Image, HDRI)のための画像ファイルフォーマットで、インダストリアル・ライト&マジック(ILM)によって作成されたソフトウェアツールの集合とともに、オープン標準としてリリースされた。

OpenEXRは、Artizen HDRオートデスクCombustionLustre、Flame、smokeToxikBlenderCinePaintHoudiniLightWavemodoAfter Effects 7 Professional、Mental RayPRManDigital FusionNukeShakePhotoshop CS2、Pixel Image Editor、Filmlight Baselight、Digital Vision NucodaBlackmagic Design DaVinci Resolveなどでサポートされている。

HDRデータの可逆圧縮もサポートされている。

概要 編集

OpenEXRの技術全容に関しては、ウェブサイト「OpenEXR.org」にて公開されている技術紹介を参照のこと。

OpenEXR、または単にEXRは、ILMによって開発されたラスターフォーマットであり、VFXとアニメーション、両方のCG業界で非常に幅広く使用されている。

マルチ解像度と任意チャンネルのフォーマットのサポートが、OpenEXRを画像合成分野において魅力的なものにしている。OpenEXRは合成プロセスにおけるいくつかの苦痛な要素を軽減してくれる。OpenEXRはスペキュラー・ディフーズ・アルファ・RGB・ノーマル・その他様々なチャンネルをひとつのファイルに格納できるので、これらの情報を別々のファイルに保存する必要がない。またこの複数チャンネルの概念により、最終画像に前述のデータを「焼き込む」(bakeする)必要性が低減される。例えば、もしコンポジターが現在のスペキュラーレベルに不満を感じていた場合、後から特定のチャンネルを調整することで不満を解消できる。

OpenEXRの単純なAPIにより、ツール開発が容易になる。複数のプロダクションのパイプラインが同じであることなどないので、プロダクションのプロセスにおける問題を解決するカスタム・ツールがいつも必要とされてきた。これらのツールは、ある種の画像操作の問題に対処するためのものであることがこれまで何度も求められ続けてきた。OpenEXRのライブラリにより、膨大なヘッダー情報を管理しなければならないという苦痛が軽減され、タイルやチャンネルといった画像の属性に素早く簡単にアクセスすることが可能となる。

歴史 編集

OpenEXRは1999年にILMで生まれ、2003年に公開された。

半精度浮動小数点数のサポート 編集

OpenEXRは16ビットの半精度浮動小数点数(FP16)をサポートしている。32ビットの単精度浮動小数点数(FP32)と比べて表現可能な値の範囲(精度)は劣るが、3次元コンピュータグラフィックスのHDR(High-Dynamic-Range)レンダリングには必要十分な精度を持ち、データ量を削減できるフォーマットとして採用されるケースが多い。OpenEXRのライブラリでは、half型としてC++向けのクラスが提供されている[1]

NVIDIAが開発したCg言語においてサポートされている組み込み型のひとつhalf型は、OpenEXRの半精度浮動小数点数と互換性がある[2]。なお、FP16はOpenGLDirect3Dでもテクスチャフォーマットのひとつとしてサポートされている。

OpenEXRを使用した開発 編集

脚注 編集

関連項目 編集

外部リンク 編集