(57)【要約】【課題】立体モデル表面を質感がリアルに再現された布で表示することができるレンダリングプログラム、レンダリング装置、及びレンダリング方法を提供する。【解決手段】反射特性測定装置１０は、現物の糸Ｔ２の反射光を受光し、糸Ｔ２の反射光のエネルギーを示す反射特性を測定する。修正部１０６は現物の糸の反射特性と、反射関数から得られる反射光のエネルギーとの誤差が最小となるように、パラメータフィッティングを用いて、鏡面反射係数Ｋｓ、光沢係数ｐ、並びに第１及び第２の拡散反射係数Ｋｄ１，Ｋｄ２を算出する。レンダリング部１０７は、係数が算出された反射関数と、起毛処理された布をモデルとするテクスチャとを用いて立体モデルをレンダリングする。【選択図】図２
2008129950.tif 000002
【特許請求の範囲】
【請求項１】
仮想３次元空間内で予め作成された立体モデルをレンダリングするレンダリングプログラムであって、
前記立体モデルを取得するモデル取得手段と、
布の表面形状を表す高さ情報と、布を構成する糸の繊維方向を示す繊維方向情報とを含み、前記立体モデルの表面に貼り付けられる布のテクスチャを取得するテクスチャ取得手段と、
仮想３次元空間内における光線方向、視線方向、及び前記繊維方向情報により示される繊維方向に応じた糸の反射光のエネルギーを表す反射関数と前記テクスチャとを用いて前記立体モデルをレンダリングするレンダリング手段と、
光線方向及び視線方向を変化させて現物の糸の反射光のエネルギーを測定することで得られる現物の糸の反射特性を取得する反射特性取得手段と、
前記反射特性取得手段により取得された反射特性と、前記反射関数から得られる反射光のエネルギーとの誤差が最小となるように前記反射関数を修正する修正手段としてコンピュータを機能させ、
前記レンダリング手段は、前記修正手段により修正された反射関数を用いて前記立体モデルをレンダリングすることを特徴とするレンダリングプログラム。
【請求項２】
前記反射関数は、糸の鏡面反射光のエネルギーを示す鏡面反射成分と、糸の拡散反射光のうち糸の繊維方向を考慮した拡散反射光のエネルギーを示す第１の拡散反射成分と、糸の拡散反射光のうち糸の繊維方向を考慮しない拡散反射光のエネルギーを示す第２の拡散反射成分とを含み、
前記鏡面反射成分は、前記光線方向、前記視線方向、及び前記繊維方向により定められる変数部と、前記変数部にかかる鏡面反射係数と、前記鏡面反射光のエネルギーの分布の拡がりを示す光沢係数とを含み、
前記第１の拡散反射成分は、前記光線方向及び前記繊維方向により定められる変数部と、前記変数部にかかる第１の拡散反射係数とを含み、
前記第２の拡散反射成分は、前記光線方向、及び糸の法線方向により定められる変数部と、前記変数部にかかる第２の拡散反射係数とを含み、
前記修正手段は、前記反射特性取得手段により取得された反射特性と、前記反射関数から得られる反射光のエネルギーとの誤差が最小となるように、前記鏡面反射係数と、前記光沢係数と、前記第１の拡散反射係数と、前記第２の拡散反射係数とのうち、少なくともいずれか１つの係数を算出することを特徴とする請求項１記載のレンダリングプログラム。
【請求項３】
前記修正手段は、前記反射関数から得られる反射光のエネルギーの分布の合計が、入射するエネルギーと等しくなるように、前記鏡面反射係数、前記第１の拡散反射係数、及び前記第２の拡散反射係数を規格化することを特徴とする請求項２記載のレンダリングプログラム。
【請求項４】
前記テクスチャは、起毛処理された糸を構成する繊維の密度を示す繊維密度情報を含み、
前記反射関数は、前記繊維密度情報に基づいて、起毛処理された糸を構成する繊維によって散乱する反射光のエネルギーを算出する立毛反射成分を更に含むことを特徴とする請求項２又は３記載のレンダリングプログラム。
【請求項５】
前記レンダリング手段は、前記繊維密度情報が低い箇所ほど、前記鏡面反射光のエネルギーの分布が拡がるように前記光沢係数を補正することを特徴とする請求項４記載のレンダリングプログラム。
【請求項６】
前記鏡面反射成分は、糸を構成する繊維の表面において、光源からの光が到達しない遮蔽領域が存在することに起因する鏡面反射光のエネルギーの低下を再現するための遮蔽補正係数を更に含み、
前記レンダリング手段は、前記遮蔽補正係数を含む鏡面反射成分を用いてレンダリングすることを特徴とする請求項２〜５のいずれかに記載のレンダリングプログラム。
【請求項７】
前記立体モデルの色を指定するための色情報を取得する色情取得手段を更に備え、
前記レンダリング手段は、前記色情報取得手段によって取得された色情報を用いて前記立体モデルをレンダリングすることを特徴とする請求項１〜６のいずれかに記載のレンダリングプログラム。
【請求項８】
前記起毛処理された繊維の向きに偏りを与えて繊維を摂動させるための摂動設定情報を取得する摂動設定情報取得手段を更に備え、
前記レンダリング手段は、前記摂動設定情報が取得された場合、立体モデル表面の所定の領域において起毛処理された繊維の向きに所定の偏りを与えることを特徴とする請求項４記載のレンダリングプログラム。
【請求項９】
仮想３次元空間内で予め作成された立体モデルをレンダリングするレンダリング装置であって、
前記立体モデルを取得するモデル取得手段と、
布の表面形状を表す高さ情報と、布を構成する糸の繊維方向を示す繊維方向情報とを含み、前記立体モデルの表面に貼り付けられる布のテクスチャを取得するテクスチャ取得手段と、
仮想３次元空間内における光線方向、視線方向、及び前記繊維方向情報に応じた糸の反射光のエネルギーを表す反射関数と前記テクスチャとを用いて前記立体モデルをレンダリングするレンダリング手段と、
光線方向及び視線方向を変化させて現物の糸の反射光のエネルギーを測定することで得られる現物の糸の反射特性を取得する反射特性取得手段と、
前記反射特性取得手段により取得された反射特性と前記反射関数から得られる糸の反射光のエネルギーとの誤差が最小となるように前記反射関数を修正する修正手段とを備え、
前記レンダリング手段は、前記修正手段により修正された反射関数を用いて前記立体モデルをレンダリングすることを特徴とするレンダリング装置。
【請求項１０】
仮想３次元空間内で予め作成された立体モデルをレンダリングするレンダリング方法であって、
コンピュータが、前記立体モデルを取得するステップと、
コンピュータが、布の表面形状を表す高さ情報と、布を構成する糸の繊維方向を示す繊維方向情報とを含み、前記立体モデルの表面に貼り付けられる布のテクスチャを取得するステップと、
コンピュータが、仮想３次元空間内における光線方向、視線方向、及び前記繊維方向情報に応じた糸の反射光のエネルギーを表す反射関数と前記テクスチャとを用いて前記立体モデルをレンダリングするステップと、
コンピュータが、光線方向及び視線方向を変化させて現物の糸の反射光のエネルギーを測定することで得られる現物の糸の反射特性を取得するステップと、
コンピュータが、前記反射特性取得手段により取得された反射特性と前記反射関数から得られる反射光のエネルギーとの誤差が最小となるように前記反射関数を修正するステップとを備え、
前記レンダリングするステップは、前記修正手段により修正された反射関数を用いて前記立体モデルをレンダリングすることを特徴とするレンダリング方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想３次元空間内で予め作成された立体モデルに布のテクスチャを貼り付け、前記立体モデルをレンダリングするレンダリングプログラム、レンダリング装置、及びレンダリング方法に関するものである。
【背景技術】
【０００２】
コンピュータグラフィックスの分野では、光線方向及び視線方向と反射光との関係を定める反射関数を用いて立体モデルをレンダリングすることが一般的になされている。ここで、毛皮等の反射関数として、カジヤ−ケイモデルが知られている。
【０００３】
式（Ａ）〜（Ｃ）は、カジヤ−ケイモデルを示している。また、図２０は、カジヤ−ケイモデルを説明するための図である。
【０００４】
Ｉ＝Ｉｓ＋Ｉｄ      （Ａ）
Ｉｓ＝Ｋｓ・Ｓ・ｃｏｓｐ［ａｃｏｓ｛Ｌ＊（−Ｔ）｝−ａｃｏｓ（Ｖ＊Ｔ）］      （Ｂ）
Ｉｄ＝Ｋｄ・ｓｉｎ（ａｃｏｓ（Ｌ＊Ｔ））      （Ｃ）
Ｉ：反射光のエネルギー
Ｉｓ：反射光のうち鏡面反射成分のエネルギー
Ｉｄ：反射光のうち拡散反射成分のエネルギー
ｐ：反射光の拡がりを示す係数
Ｋｓ：鏡面反射成分のエネルギーをコントロールするための係数
Ｋｄ：拡散反射成分のエネルギーをコントロールするための係数
Ｌ：光線方向を示す単位ベクトル
Ｖ：視点の方向を示す単位ベクトル
Ｔ：繊維方向を示す単位ベクトル
このように、カジヤ−ケイモデルにおいては、視線方向、繊維方向、及び光線方向等を設定することで、反射光のエネルギーを得ることができる。
【非特許文献１】J.Kajiya,T.Kay,"Rendering fur with three dimensional textures"（３次元テクスチャを使用した毛皮のレンダリング）、proceedings of SIGGRAPH(1989)
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、カジヤ−ケイモデルにおいては、光源及び視線方向を変化させて現物の糸の反射光を測定することで得られる糸の反射特性に基づいて係数Ｋｓ，Ｋｄを定めることがなされていないため、糸の質感をリアルに再現することが困難であった。また、カジヤ−ケイモデルは、立毛された長い繊維から構成される毛皮のようなファブリックを対象にしており、起毛処理のなされた布の質感をリアルに再現することは困難であった。
【０００６】
本発明の目的は、立体モデル表面を質感がリアルに再現された布で表示することができるレンダリングプログラム、レンダリング装置、及びレンダリング方法を提供することである。
【課題を解決するための手段】
【０００７】
本発明によるレンダリングプログラムは、仮想３次元空間内で予め作成された立体モデルをレンダリングするレンダリングプログラムであって、前記立体モデルを取得するモデル取得手段と、布の表面形状を表す高さ情報と、布を構成する糸の繊維方向を示す繊維方向情報とを含み、前記立体モデルの表面に貼り付けられる布のテクスチャを取得するテクスチャ取得手段と、仮想３次元空間内における光線方向、視線方向、及び前記繊維方向情報により示される繊維方向に応じた糸の反射光のエネルギーを表す反射関数と前記テクスチャとを用いて前記立体モデルをレンダリングするレンダリング手段と、光線方向及び視線方向を変化させて現物の糸の反射光のエネルギーを測定することで得られる現物の糸の反射特性を取得する反射特性取得手段と、前記反射特性取得手段により取得された反射特性と、前記反射関数から得られる反射光のエネルギーとの誤差が最小となるように前記反射関数を修正する修正手段としてコンピュータを機能させ、前記レンダリング手段は、前記修正手段により修正された前記反射関数を用いて前記立体モデルをレンダリングすることを特徴とする（請求項１）。
【０００８】
本発明によるレンダリング装置は、仮想３次元空間内で予め作成された立体モデルをレンダリングするレンダリング装置であって、前記立体モデルを取得するモデル取得手段と、布の表面形状を表す高さ情報と、布を構成する糸の繊維方向を示す繊維方向情報とを含み、前記立体モデルの表面に貼り付けられる布のテクスチャを取得するテクスチャ取得手段と、仮想３次元空間内における光線方向、視線方向、及び前記繊維方向情報に応じた糸の反射光のエネルギーを表す反射関数と前記テクスチャとを用いて前記立体モデルをレンダリングするレンダリング手段と、光線方向及び視線方向を変化させて現物の糸の反射光のエネルギーを測定することで得られる現物の糸の反射特性を取得する反射特性取得手段と、前記反射特性取得手段により取得された反射特性と前記反射関数から得られる糸の反射光のエネルギーとの誤差が最小となるように前記反射関数を修正する修正手段とを備え、前記レンダリング手段は、前記修正手段により修正された反射関数を用いて前記立体モデルをレンダリングすることを特徴とする（請求項９）。
【０００９】
本発明によるレンダリング方法は、仮想３次元空間内で予め作成された立体モデルをレンダリングするレンダリング方法であって、コンピュータが、前記立体モデルを取得するステップと、コンピュータが、布の表面形状を表す高さ情報と、布を構成する糸の繊維方向を示す繊維方向情報とを含み、前記立体モデルの表面に貼り付けられる布のテクスチャを取得するステップと、コンピュータが、仮想３次元空間内における光線方向、視線方向、及び前記繊維方向情報に応じた糸の反射光のエネルギーを表す反射関数と前記テクスチャとを用いて前記立体モデルをレンダリングするステップと、コンピュータが、光線方向及び視線方向を変化させて現物の糸の反射光のエネルギーを測定することで得られる現物の糸の反射特性を取得するステップと、コンピュータが、前記反射特性取得手段により取得された反射特性と前記反射関数から得られる反射光のエネルギーとの誤差が最小となるように前記反射関数を修正するステップとを備え、前記レンダリングするステップは、前記修正手段により修正された反射関数を用いて前記立体モデルをレンダリングすることを特徴とする（請求項１０）。
【００１０】
これらの構成によれば、光線方向及び視線方向を変化させて現物の糸の反射光を測定することで得られる糸の反射特性が取得され、取得された反射特性と糸の反射関数から得られる反射光のエネルギーとの誤差が最小となるように反射関数が修正され、修正された反射関数と布のテクスチャとを用いて立体モデルがレンダリングされる。そのため、反射関数が実際の糸の反射特性をよりリアルに表すことが可能となり、質感がリアルに再現された布で立体モデル表面を表示することができる。
【００１１】
また、前記反射関数は、糸の鏡面反射光のエネルギーを示す鏡面反射成分と、糸の拡散反射光のうち糸の繊維方向を考慮した拡散反射光のエネルギーを示す第１の拡散反射成分と、糸の拡散反射光のうち糸の繊維方向を考慮しない拡散反射光のエネルギーを示す第２の拡散反射成分とを含み、前記鏡面反射成分は、前記光線方向、前記視線方向、及び前記繊維方向により定められる変数部と、前記変数部にかかる鏡面反射係数と、鏡面反射光のエネルギーの分布の拡がりを示す光沢係数とを含み、前記第１の拡散反射成分は、前記光線方向及び前記繊維方向により定められる変数部と、前記変数部にかかる第１の拡散反射係数とを含み、前記第２の拡散反射成分は、前記光線方向、及び糸の法線方向により定められる変数部と、前記変数部にかかる第２の拡散反射係数とを含み、前記修正手段は、前記反射特性取得手段により取得された反射特性と、前記反射関数から得られる反射光のエネルギーとの誤差が最小となるように、前記鏡面反射係数と、前記光沢係数と、前記第１の拡散反射係数と、前記第２の拡散反射係数とのうち、少なくともいずれか１つの係数を算出することが好ましい（請求項２）。
【００１２】
この構成によれば、反射関数は、糸の拡散反射光のうち糸の繊維方向を考慮した拡散反射光を示す第１の拡散反射成分と、糸の繊維方向を考慮しない拡散反射光を示す第２の拡散反射成分とを含んでいるため、反射関数は、現物の糸の反射特性をよりリアルに再現することが可能となり、立体モデルの表面に表示される布をよりリアルに再現することができる。また、現物の糸の反射特性と反射関数から得られる反射光のエネルギーとの誤差が最小となるように、鏡面反射成分に含まれる鏡面反射係数と、光沢係数と、第１及び第２の拡散反射成分に含まれる第１及び第２の拡散反射係数とが算出されるため、反射関数は、現物の糸の反射特性をよりリアルに再現することができる。
【００１３】
また、前記修正手段は、前記反射関数から得られる反射光のエネルギーの分布の合計が、入射するエネルギーと等しくなるように、前記鏡面反射係数、前記第１の拡散反射係数、及び前記第２の拡散反射係数を規格化することが好ましい（請求項３）。
【００１４】
この構成によれば、鏡面反射係数、第１及び第２の拡散反射係数が規格化されるため、反射関数に任意の色を取り込んだ場合であっても、反射関数は布の質感をリアルに表すことができる。
【００１５】
また、前記テクスチャは、起毛処理された糸を構成する繊維の密度を示す繊維密度情報を含み、前記反射関数は、前記繊維密度情報に基づいて、起毛処理された糸を構成する繊維によって散乱する反射光のエネルギーを算出する立毛反射成分を更に含むことが好ましい（請求項４）。
【００１６】
この構成によれば、反射関数は、立毛反射成分を含んでいるため、立体モデルの表面において、起毛処理された布をリアルに再現することができる。
【００１７】
また、前記レンダリング手段は、前記繊維密度情報が低い箇所ほど、鏡面反射光のエネルギーの分布が拡がるように前記光沢係数を補正することが好ましい（請求項５）。
【００１８】
この構成によれば、繊維密度情報の低い箇所ほど、鏡面反射光のエネルギーの分布が広がるように、光沢係数が補正されるため、立体モデルの表面において、起毛処理された布をよりリアルに再現することができる。
【００１９】
また、前記鏡面反射成分は、糸を構成する繊維の表面において、光源からの光が到達しない遮蔽領域が存在することに起因する鏡面反射光のエネルギーの低下を再現するための遮蔽補正係数を更に含み、前記レンダリング手段は、前記遮蔽補正係数を含む鏡面反射成分を用いてレンダリングすること好ましい（請求項６）。
【００２０】
この構成によれば、鏡面反射成分は遮蔽補正係数を含むため、糸を構成する繊維の表面において、光源からの光が届かないことによる鏡面反射光の低下を再現することができる。
【００２１】
また、前記立体モデルの色を指定するための色情報を取得する色情取得手段を更に備え、前記レンダリング手段は、前記色情報取得手段によって取得された色情報を用いて前記立体モデルをレンダリングすることが好ましい（請求項７）。
【００２２】
この構成によれば、立体モデルの表面における布の色をユーザが所望する色に変更することができる。
【００２３】
また、前記起毛処理された繊維の向きに偏りを与えて繊維を摂動させるための摂動設定情報を取得する摂動設定情報取得手段を更に備え、前記レンダリング手段は、前記摂動設定情報が取得された場合、立体モデル表面の所定の領域において起毛処理された繊維の向きに所定の偏りを与えることが好ましい（請求項８）。
【００２４】
この構成によれば、立体モデル表面の所定の領域において、起毛処理された繊維の向きに所定の偏りが付与されて繊維が摂動されるため、よりリアルなレンダリングを実現することができる。
【発明の効果】
【００２５】
本発明によれば、反射関数が実際の糸の反射特性をよりリアルに表すことが可能となり、質感がリアルに再現された布を立体モデルの表面に表示することができる。
【発明を実施するための最良の形態】
【００２６】
図１は、本発明の実施の形態によるレンダリング装置のハードウェア構成を示すブロック図である。本レンダリング装置は、通常のコンピュータ等から構成され、入力装置１、ＲＯＭ（リードオンリメモリ）２、ＣＰＵ（中央演算処理装置）３、ＲＡＭ（ランダムアクセスメモリ）４、外部記憶装置５、表示装置６、記録媒体駆動装置７、インターフェイス部（Ｉ／Ｆ）部９、及びＧＰＵ（画像演算処理装置）１１を備える。入力装置１、ＲＯＭ２、ＣＰＵ３、ＲＡＭ４、外部記憶装置５、ＧＰＵ１１、記録媒体駆動装置７、及びＩ／Ｆ部９は内部のバスに接続され、このバスを介して種々のデータ等が入出され、ＣＰＵ３の制御の下、種々の処理が実行される。
【００２７】
入力装置１は、キーボード、マウス等から構成され、ユーザが種々のデータを入力するために使用される。ＲＯＭ２には、ＢＩＯＳ（Basic Input/Output System）等のシステムプログラムが記憶される。外部記憶装置５は、ハードディスクドライブ等から構成され、所定のＯＳ（Operating System）及びレンダリングプログラム等が記憶される。ＣＰＵ３は、外部記憶装置５からＯＳ等を読み出し、各ブロックの動作を制御する。ＲＡＭ４は、ＣＰＵ３の作業領域等として用いられる。
【００２８】
表示装置６は、液晶表示装置等から構成され、ＧＰＵ１１の制御の下に種々の画像を表示する。記録媒体駆動装置７は、ＣＤ−ＲＯＭドライブ、フレキシブルディスクドライブ等から構成される。
【００２９】
なお、レンダリングプログラムは、ＣＤ−ＲＯＭ等のコンピュータ読み取り可能な記録媒体８に格納されて市場に流通される。ユーザはこの記録媒体８を記録媒体駆動装置７に読み込ませることで、レンダリングプログラムをコンピュータにインストールする。また、レンダリングプログラムをインターネット上のサーバに格納し、このサーバからダウンロードすることで、レンダリングプログラムをコンピュータにインストールしてもよい。
【００３０】
Ｉ／Ｆ部９は、例えばＵＳＢインターフェイスから構成され、反射特性測定装置１０とレンダリング装置との入出力インターフェイスを行う。
【００３１】
反射特性測定装置１０は、例えば特開２００４−１５２０１５号公報に開示されたシェーディング情報取得装置から構成され、試料を載置する試料テーブルと、試料に対して光を照射する光源と、試料の反射光を受光するカメラとを備え、光源及び試料を結ぶ光線方向と、カメラ及び試料を結ぶ視線方向とを変更しながら、試料の反射光のエネルギーを測定し、試料の反射特性を取得する装置である。ＧＰＵ１１は、ＣＰＵ３の制御の下、本レンダリング装置における画像処理を主に実行し、処理結果を表示装置６に表示させる。
【００３２】
図２は、図１に示すレンダリング装置の機能ブロック図を示している。レンダリング装置は、処理部１００、記憶部２００、入力部３００、及び表示部４００を備えている。処理部１００は、ＧＰＵ１１から構成され、モデル取得部１０１、テクスチャ取得部１０２、色情報取得部１０３、摂動設定情報取得部１０４、反射特性取得部１０５、修正部１０６、レンダリング部１０７、及び表示制御部１０８の機能を備える。これらの機能はＧＰＵ１１がレンダリングプログラムを実行することで実現される。
【００３３】
モデル取得部１０１は、入力部３００により受け付けられたユーザからの操作入力に従って、レンダリング対象となる立体モデルを取得し、モデル記憶部２０１に記憶させる。ここで、立体モデルは、モデリングソフトウェアを用いて仮想３次元空間内で予め作成されたある物体の立体モデルである。
【００３４】
テクスチャ取得部１０２は、入力部３００により受け付けられたユーザからの操作入力に従って、レンダリング対象となる立体モデルの表面に貼り付けられる布のテクスチャを取得し、テクスチャ記憶部２０２に記憶させる。図３は、本レンダリング装置が使用するテクスチャのモデルとなる現物の布を示した断面図である。図３に示すように、テクスチャのモデルとなる布は、織り又は編み構造を有する平板上の地組織部の表面において、起毛処理が施された布である。ここで、布の表面に起毛処理が施されると、起毛処理された糸の撚りがほどけ、糸を構成する繊維が地組織部の上方に向けて延び、布表面が毛羽立った状態になる。
【００３５】
図４は、テクスチャのデータ構造を示す模式図である。図４に示すようにテクスチャは、布表面の位置を表す各々直交するｕ，ｖ軸上に、Ｎ行、Ｍ列に配列された複数の矩形領域Ｄ１の各々の内部の所定の位置（例えば重心）に位置するサンプル点Ｃ１の座標と、各サンプル点Ｃ１に関連付けられたテクスチャ情報とから構成されている。テクスチャ情報には、高さ情報、繊維密度情報、繊維方向情報、及び法線方向情報が含まれている。ここで、矩形領域Ｄ１のサイズは、例えば起毛処理された糸Ｔ１が所定本数（例えば１本）含まれる程度のサイズ（例えば数ミクロンオーダーのサイズ）を有している。
【００３６】
高さ情報は、各サンプル点Ｃ１における起毛処理された糸Ｔ１の高さ、すなわち、ｕ−ｖ平面に直交する高さ方向を示すｗ軸における糸Ｔ１の先端の位置を示す。
【００３７】
繊維密度情報は、矩形領域Ｄ１内において地組織部の上方に向けて起毛処理された糸Ｔ１の密度を示す。具体的には、繊維密度情報は、矩形領域Ｄ１の面積に対する糸Ｔ１を構成する繊維ｆ１の断面積の割合を示す。
【００３８】
繊維方向情報は、矩形領域Ｄ１内における糸の方向を示す単位ベクトルである。地組織部の上方に向けて起毛処理された糸Ｔ１の繊維方向情報は、糸Ｔ１を構成する繊維ｆ１の方向を示す単位ベクトルとなる。具体的には、糸Ｔ１の繊維方向情報は、矩形領域Ｄ１内に存在する各繊維ｆ１の方向を示す単位ベクトルの代表値（例えば平均値）が採用される。また、起毛処理が施された糸Ｔ１が存在しない矩形領域Ｄ１１においては、繊維方向情報は地組織部の縦糸ＴＴ１の長手方向を示す単位ベクトルとなる。法線方向情報は、矩形領域Ｄ１内における糸の法線方向を示す単位ベクトルである。
【００３９】
色情報取得部１０３は、入力部３００により受け付けられたユーザからの操作入力に従って、立体モデル表面の色を指定するための色情報を取得する。
【００４０】
摂動設定情報取得部１０４は、入力部３００により受け付けられたユーザからの操作入力に従って、起毛処理された糸を構成する繊維の向きに偏りを与えて繊維を摂動させるための摂動設定情報を取得する。
【００４１】
反射特性取得部１０５は、反射特性測定装置１０において測定された現物の糸の反射特性を取得し、反射特性記憶部２０３に記憶させる。
【００４２】
修正部１０６は、反射特性記憶部２０３から現物の糸の反射特性を読み出し、読み出した現物の糸の反射特性と、反射関数記憶部２０４に記憶された糸の反射関数から得られる反射光のエネルギーとの誤差が最小となるように、パラメータフィッティングを用いて反射関数を修正する。
【００４３】
すなわち、反射関数記憶部２０４に記憶される反射関数は、仮想３次元空間内における光線方向、視線方向、及び繊維方向に応じた糸の反射光のエネルギーを表す関数であり、糸の鏡面反射光のエネルギーを示す鏡面反射成分と、糸の拡散反射光のうち糸の繊維方向を考慮した拡散反射光のエネルギーを示す第１の拡散反射成分と、糸の拡散反射光のうち糸の繊維方向を考慮しない拡散反射光のエネルギーを示す第２の拡散反射成分と、起毛処理された糸Ｔ１を構成する繊維ｆ１よって散乱する反射光のエネルギーを示す立毛反射成分とを含む。
【００４４】
ここで、鏡面反射成分は、光線方向、視線方向、及び繊維方向により定められる変数部と、変数部にかかる鏡面反射係数と、前記鏡面反射光のエネルギーの分布の拡がりを示す光沢係数とを含む。第１の拡散反射成分は、光線方向及び繊維方向により定められる変数部と、変数部にかかる第１の拡散反射係数とを含む。第２の拡散反射成分は、光線方向、及び糸の法線方向により定められる変数部と、前記変数部にかかる第２の拡散反射係数とを含む。
【００４５】
具体的には、反射関数は式（１）によって表される。
【００４６】
Ｉ＝Ｉｓ＋Ｉｄ１＋Ｉｄ２＋Ｗ      （１）
ここで、Ｉｓは鏡面反射成分を示し、Ｉｄ１は第１の拡散反射成分を示し、Ｉｄ２は第２の拡散反射成分を示し、Ｗは立毛反射成分を示す。
【００４７】
式（１）に示す鏡面反射成分Ｉｓは、式（２）によって表される。
【００４８】
Ｉｓ＝Ｋｓ・Ｓ・ｃｏｓｐ［ａｃｏｓ｛Ｌ＊（−Ｔ）｝−ａｃｏｓ（Ｖ＊Ｔ）］      （２）
式（２）に示すＫｓは鏡面反射係数を示し、Ｌは光線方向を示し、Ｖは視線方向を示し、Ｔは繊維方向を示し、”＊”はベクトルの内積を示す。Ｓは光源からの光が到達しない遮蔽領域が存在することに起因する鏡面反射光のエネルギーの低下を再現するための遮蔽補正係数であり、式（３）により表される。
【００４９】
Ｓ＝１−（１／π）・ａｃｏｓ［｛（Ｌ−（Ｌ＊Ｔ）Ｔ）／｜Ｌ−（Ｌ＊Ｔ）Ｔ｜｝＊｛（Ｖ−（Ｖ＊Ｔ）Ｔ）／｜Ｖ−（Ｖ＊Ｔ）Ｔ｜｝］      （３）
図５は遮蔽補正係数の説明図である。繊維ｆ１は円筒形状を有しているため、視点から繊維ｆ１を見ることが可能な繊維ｆ１の表面上の領域Ｒ１内において光源からの光が到達する到達領域Ｒ２と光が到達しない遮蔽領域Ｒ３が発生する結果、鏡面反射光のエネルギーが低下してしまう。そこで、本レンダリング装置では、この鏡面反射成分のエネルギーの低下を再現するために、繊維ｆ１の断面を円形と仮定し、領域Ｒ１の大きさに対する到達領域Ｒ２の大きさの割合を表す遮蔽補正係数Ｓを鏡面反射成分Ｉｓに含ませている。
【００５０】
式（２）に示すｐは、光沢の拡がりを表す光沢係数を示し、修正部１０６によるパラメータフィッティングによって求められる。
【００５１】
式（１）に示す第１の拡散反射成分Ｉｄ１は、式（４）によって表される。
【００５２】
Ｉｄ１＝Ｋｄ１・ｓｉｎ（ａｃｏｓ（Ｌ＊Ｔ））      （４）
式（４）に示すＫｄ１は第１の拡散反射係数を示す。
【００５３】
式（１）に示す第２の拡散反射成分Ｉｄ２は式（５）によって表される。
【００５４】
Ｉｄ２＝Ｋｄ２・（Ｌ＊Ｎ）      （５）
式（５）に示す、Ｋｄ２は第２の拡散反射係数を示す。また、Ｎは糸の法線方向を示す単位ベクトルである。
【００５５】
式（１）に示す立毛反射成分Ｗは、式（６）によって表される。
【００５６】
Ｗ＝（ｄ／Ｎ＊Ｖ）・（Ｌ＊Ｎ）      （６）
式（６）に示すｄは繊維密度を示し、テクスチャに含まれる繊維密度情報が代入される。図１９は、立毛反射成分Ｗの説明図である。起毛処理された糸Ｔ１は、複数本の散らばった繊維ｆ１から構成されているため、多くの箇所で光源からの光が反射され、反射光が散乱する。そこで、この反射光の散乱を再現するために、本レンダリング装置は、反射関数に立毛反射成分Ｗを含ませている。
【００５７】
そして、修正部１０６は、反射関数が、現物の糸の反射特性を得るように、パラメータフィッティングを用いて、鏡面反射係数Ｋｓと、光沢係数ｐと、第１の拡散反射係数Ｋｄ１と、第２の拡散反射係数Ｋｄ２とを算出する。
【００５８】
なお、修正部１０６は、鏡面反射係数Ｋｓと、光沢係数ｐと、第１の拡散反射係数Ｋｄ１と、第２の拡散反射係数Ｋｄ２とのうち、少なくとも１つの係数を算出するようにしてもよい。この場合、設定対象とならない係数に対しては予め定められた値を設定し、設定対象となる係数をパラメータフィッティングにより求めればよい。
【００５９】
また、修正部１０６は、仮想３次元空間内の所定の位置にエネルギーが１の光を出力する光源を配置したときにおける反射関数から得られる反射光のエネルギーの分布の合計が１となるように、鏡面反射係数Ｋｓと、第１の拡散反射係数Ｋｄ１と、第２の拡散反射係数Ｋｄ２とを規格化し、規格化した鏡面反射係数Ｋｓと、第１の拡散反射係数Ｋｄ１と、第２の拡散反射係数Ｋｄ２とを色情報を取り込んだ反射関数の係数として設定する。
【００６０】
ここで、色情報を取り込んだ反射関数は式（７）で表される。
【００６１】
Ｉ＝Ｆ・Ｉｓ＋ＣＲＧＢ・（１−Ｆ）Ｉｓ＋ＣＲＧＢ・Ｉｄ１＋ＣＲＧＢ・Ｉｄ２＋Ｗ      （７）
式（７）に示すＦはフレネルの公式を示し、式（８）によって表される。
【００６２】
Ｆ＝（１／２）・（ｔａｎ２（θ１−θ２）／ｔａｎ２（θ１＋θ２）＋ｓｉｎ２（θ１−θ２）／ｓｉｎ２（θ１＋θ２））      （８）
式（８）に示すθ１は入射角を示し、θ２は屈折角を示し、予め定められた値が採用されている。
【００６３】
式（７）に示すＣＲＧＢは立体モデルに付される色情報を示し、Ｒ，Ｇ，Ｂの３つ色成分からなり、立体モデルに貼り付けられるテクスチャの色情報、又は色情報取得部１０３により取得された色情報が採用される。ＣＲＧＢは、Ｒ，Ｇ，Ｂの３つ色成分からなるため、式（７）のＩは、Ｒ，Ｇ，Ｂの３つの色成分からなる。
【００６４】
レンダリング部１０７は、修正部１０６により係数が算出された式（７）に示す反射関数と、色情報取得部１０３により取得された色情報又はデフォルトの色情報と、テクスチャ記憶部２０２に記憶されたテクスチャとを用いて、モデル記憶部２０１に記憶された立体モデルをレンダリングする。
【００６５】
表示制御部１０８は、レンダリング部１０７でレンダリングされた立体モデルを表示部４００に表示する。
【００６６】
記憶部２００は、図１に示すＧＰＵ１１が備えるＲＡＭ、及び外部記憶装置５等から構成され、モデル記憶部２０１、テクスチャ記憶部２０２、反射特性記憶部２０３、反射関数記憶部２０４、及び摂動情報記憶部２０５を備える。モデル記憶部２０１は、モデル取得部１０１により取得された立体モデルを記憶する。テクスチャ記憶部２０２は、テクスチャ取得部１０２により取得されたテクスチャを記憶する。反射特性記憶部２０３は、反射特性取得部１０５により取得された現物の糸の反射特性を記憶する。反射関数記憶部２０４は、式（１）及び式（７）に示す反射関数を記憶する。
【００６７】
摂動情報記憶部２０５は、摂動させる糸の立体モデル表面の位置（摂動位置）と、各摂動位置において起毛処理された糸の向きの修正すべき方向を示す摂動ベクトルとが関連付けられた摂動情報を記憶する。ここで、摂動位置及び摂動ベクトルは立体モデルの表面に貼り付けられるテクスチャのモデルとなる実際の布の特性に応じて予め定められた位置及び方向が採用されている。
【００６８】
入力部３００は、図１に示す入力装置１から構成され、立体モデル、テクスチャ、色情報、及び摂動設定情報等を設定するためのユーザからの操作入力を受け付ける。
【００６９】
表示部４００は、図１に示す表示装置６から構成され、レンダリング部１０７によりレンダリングされた立体モデルを表示する。
【００７０】
図６は、本レンダリング装置による反射関数に含まれる係数を算出する処理を示すフローチャートである。まず、ステップＳ１において、反射特性測定装置１０は、試料テーブルに載置された現物の糸に光を照射し、光線方向と視線方向とを変更しながら、糸の反射光のエネルギーを測定する。
【００７１】
図７は、試料載置テーブルに載置された現物の糸Ｔ２を示した図である。図７に示すように糸Ｔ２は、円盤状のボビンに複数巻回されている。反射特性測定装置１０は、この巻回された糸Ｔ２に光を照射し、反射光を受光し、糸Ｔ２のエネルギーを取得する。ここで、ボビンに巻回された糸Ｔ２の長手方向を糸縦方向とし、糸縦方向と直交する方向を糸横方向とする。
【００７２】
図８は、反射特性測定装置１０による糸Ｔ２の測定手法の説明図であり、（ａ）はカメラと光源とのなす方位角が１８０度の場合を示し、（ｂ）はカメラと光源との方位角が０度の場合を示している。まず、反射特性測定装置１０は、図８（ａ）に示すように、カメラと光源との方位角を１８０度に保ち、糸Ｔ２に対するカメラの仰角を３０度に設定し、糸Ｔ２に対する光源の仰角０度から９０度まで所定の分解能で変更し、光源の角度が変更される毎に、カメラに糸Ｔ２を撮影させる。ここで、光源とカメラとの方位角は、光源とカメラとを結ぶ直線の向きが、糸縦方向を向くように設定される。
【００７３】
次に、反射特性測定装置１０は、カメラの仰角を４５度に設定し、光源の仰角を０度から９０度まで所定の分解能で変更し、カメラに糸Ｔ２を撮影させる。次に、反射特性測定装置１０は、カメラの仰角を６０度に設定し、光源の仰角を０度から９０度まで所定の分解能で変更し、カメラに糸Ｔ２を撮影させる。
【００７４】
次に、反射特性測定装置１０は、図８（ｂ）に示すように、カメラと光源との方位角を０度に設定し、方位角が１８０度である場合と同様にして、光源とカメラとの仰角を変更し、カメラに糸Ｔ２を撮影させる。ここで、カメラと光源との方位角は、カメラと光源とを結ぶ直線の向きが、糸縦方向を向くように設定される。
【００７５】
このように、反射特性測定装置１０は、光源とカメラとの方位角、並びに光源及びカメラの仰角を変更して糸Ｔ２を撮影し、カメラが受光する糸Ｔ２の反射光を受光し、糸Ｔ２の反射光特性を測定する。
【００７６】
図９は、反射特性測定装置１０において測定された糸Ｔ２の反射特性を示すグラフであり、縦軸はエネルギーを示し、横軸は方位角、並びにカメラ及び光源の仰角を示している。図９に示すように、カメラと光源との方位角が１８０度の場合、カメラの仰角を一定にして、光源の仰角を変更していくと、反射光のエネルギーは上に凸のほぼ曲線状の急峻なカーブを描いて変化することが分かる。一方、カメラと光源との方位角が０度の場合、カメラの仰角を一定にして、光源の仰角を変更していくと、反射光のエネルギーは単調に増加することが分かる。
【００７７】
図６に示すステップＳ２において、反射特性取得部１０５は、反射特性測定装置１０により測定された糸Ｔ２の反射特性を取得し、反射特性記憶部２０３に記憶させる。次に、修正部１０６は、式（１）に示す反射関数から得られる反射光のエネルギーと、糸Ｔ２の反射特性との誤差が最小となるように、パラメータフィッティングを用いて、鏡面反射係数Ｋｓと、光沢係数ｐと、第１の拡散反射係数Ｋｄ１と、第２の拡散反射係数Ｋｄ２とを算出する（ステップＳ３）。
【００７８】
ここで、修正部１０６は、繊維密度を示すｄに予め定められた値を設定し、光線方向Ｌ、視線方向Ｖ、法線方向Ｎを変化させたときの、式（１）に示す反射関数から得られる反射光のエネルギーと、反射特性取得部１０５により取得された反射特性との誤差の二乗和が最小となるような鏡面反射係数Ｋｓと、光沢係数ｐと、第１の拡散反射係数Ｋｄ１と、第２の拡散反射係数Ｋｄ２とを算出する。
【００７９】
次に、修正部１０６は、仮想３次元空間内の所定の位置にエネルギーが１の光を出力する光源を配置したときにおける反射関数の視線方向毎の反射光のエネルギーの合計が１となるように、鏡面反射係数Ｋｓと、第１の拡散反射係数Ｋｄ１と、第２の拡散反射係数Ｋｄ２とを規格化する（ステップＳ４）。図１０は、係数の規格化の説明図である。図１０に示すように、仮想３次元空間内の所定の位置（例えば、注目点ＣＰの真上）に光源を設定し、注目点ＣＰに所定レベル（例えば１）のエネルギーを入射させ、光源とカメラとの方位角を０度から３６０度まで変化させると共に、カメラの仰角を０度から９０度まで変化させたときにおける式（１）に示す反射関数のエネルギーの分布の合計が、注目点ＣＰに入射するエネルギーと等しくなるように鏡面反射係数Ｋｓと、第１の拡散反射係数Ｋｄ１と、第２の拡散反射係数Ｋｄ２とを規格化する。
【００８０】
次に、修正部１０６は、ステップＳ４で求めた係数を式（７）に示すＩｓ、Ｉｄ１、Ｉｄ２に代入し、色情報を取り込んだ反射関数の係数を設定する（ステップＳ５）。
【００８１】
次に、本レンダリング装置によるレンダリング処理について説明する。図１１は、本レンダリング装置によるレンダリング処理を示すフローチャートである。まず、ステップＳ１１において、入力部３００により、ユーザから立体モデル表面の色を指定する色情報の操作入力が受け付けられた場合（ステップＳ１１でＹＥＳ）、色情報取得部１０３は、色情報を取得してレンダリング部１０７に渡し、レンダリング部１０７は、式（７）に示す反射関数のＣＲＧＢに取得された色情報を代入し、色情報を設定する（ステップＳ１３）。
【００８２】
一方、入力部３００により、ユーザから立体モデル表面の色を指定する色情報の操作入力が受け付けられない場合（ステップＳ１１でＮＯ）、処理がステップＳ１２に進められる。この場合、レンダリング部１０７は、式（７）のＣＲＧＢに予め設定されている色情報を設定する。
【００８３】
次に、入力部３００により、摂動設定情報の操作入力が受け付けられた場合（ステップＳ１２でＹＥＳ）、摂動設定情報取得部１０４は、摂動設定情報を取得する（ステップＳ１４）。ここで、表示制御部１０８は、ユーザに摂動設定情報を入力させるための操作ボタン等を表示部４００に表示させ、この操作ボタンをマウスでクリックさせる等して摂動設定情報を入力させる。
【００８４】
次に、レンダリング部１０７は、モデル記憶部２０１から立体モデルを読み出し、読み出した立体モデルに、テクスチャ記憶部２０２に記憶されたテクスチャをバンプマッピングする（ステップＳ１５）。図１２は、レンダリング部１０７によりバンプマッピングされた立体モデルを示している。図１２に示すように、レンダリング部１０７は、立体モデル表面にテクスチャを貼り付けて、立体モデル表面にサンプル点Ｃ１を設定し、サンプル点Ｃ１に、底面の中心が位置するように一定の断面積を有する円筒を糸Ｔ１として設定する。ここで、糸Ｔ１の長手方向の長さは、サンプル点Ｃ１における高さ情報から定められ、糸Ｔ１の繊維方向Ｔは、サンプル点Ｃ１における繊維方向情報から定められる。
【００８５】
また、レンダリング部１０７は、摂動設定情報取得部１０４により摂動設定情報が取得された場合、摂動情報記憶部２０５から摂動情報を読み出し、読み出した摂動情報に従って、糸Ｔ１の繊維方向Ｔを修正する。具体的には、レンダリング部１０７は、起毛処理された糸Ｔ１が摂動情報により摂動位置として指定されている場合は、当該糸Ｔ１の繊維方向に、当該摂動位置に関連付けられた摂動ベクトルを合成し、当該糸Ｔ１の向きを修正する。
【００８６】
図１１に示すステップＳ１６において、レンダリング部１０７は、表面に糸Ｔ１を設定した立体モデルの反射光のエネルギーの算出処理を実行する。図１３は、エネルギーの算出処理を示すフローチャートである。まず、ステップＳ３１において、仮想３次元空間内に仮想スクリーンを設定し、仮想スクリーンを構成する複数の画素の中から１つの画素を注目画素として設定する（ステップＳ３１）。図１４は、仮想３次元空間内に設定された仮想スクリーンを示す図である。図１４に示すように、仮想スクリーンは、所定行×所定列に格子状に配列された画素から構成されている。レンダリング部１０７は、仮想スクリーンに含まれる複数の中から１つの画素を注目画素ＳＣＰとして、例えば仮想スクリーン上の左上の頂点の画素から右下の頂点の画素に向けて順次設定する。
【００８７】
次に、レンダリング部１０７は、注目画素ＳＣＰと仮想３次元空間内に予め設定された視点とを結ぶ直線の延長線Ｌ２１上に立体モデルが存在するか否かを判定し、延長線Ｌ２１上に立体モデルが存在すると判定した場合は、立体モデル表面と延長線Ｌ２１との交点を注目点ＣＰとして設定する（ステップＳ３２）。
【００８８】
次に、レンダリング部１０７は、注目点ＣＰが設定された糸Ｔ１における光沢の拡がりを算出する。図１５は沢の拡がりの算出過程の説明図である。レンダリング部１０７は、注目点ＣＰを設定した糸Ｔ１に対してテクスチャにより定められた繊維密度情報を式（９）のｄに代入し、注目点ＣＰにおける鏡面反射光のエネルギーの分布が、繊維密度情報が低い箇所ほど拡がるように光沢係数を補正する（ステップＳ３３）。すなわち、ｐ´は繊維密度が高くなるにつれて増大するため、ｐ´を式（２）のｐに代入することで、繊維密度情報が低い箇所ほど鏡面反射光のエネルギーの分布が拡がることになる。
【００８９】
ｐ´＝ｐ・ｄ２      （９）
但し、ｐ´は補正された光沢係数を示し、ｐは注目点ＣＰを設定した糸Ｔ１における光沢係数を示す。
【００９０】
次に、レンダリング部１０７は、光沢係数の修正の前後において、鏡面反射成分Ｉｓのエネルギーの分布の総量が一定に保たれるように、式（１０）を用いて鏡面反射係数Ｋｓを補正する（ステップＳ３４）。
【００９１】
Ｋｓ´＝（（ｐ´＋１）／（ｐ＋１））・Ｋｓ      （１０）
但し、Ｋｓ´は、補正後の鏡面反射係数Ｋｓを示し、Ｋｓは補正前の鏡面反射成分を示す。
【００９２】
すなわち、図１５に示すように、式（９）により注目点ＣＰにおける鏡面反射光のエネルギーの分布を広げると、鏡面反射光のエネルギーの総量が増大してしまい、図６のステップＳ４で係数を規格化した効果が小さくなってしまう。そこで、レンダリング部１０７は、式（１０）により鏡面反射光のエネルギーの分布の総量が、式（９）に示す光沢係数の補正の前後において、一定に保たれるように鏡面反射係数Ｋｓを補正する。
【００９３】
次に、レンダリング部１０７は、式（７）を用いて、注目点ＣＰにおける反射光のエネルギーを算出し（ステップＳ３５）、算出した反射光のエネルギーを注目画素ＳＣＰにおける画素データとして算出する。ここで、レンダリング部１０７は、図１４に示すように、仮想３次元空間内における光源及び視点の位置から、注目点ＣＰにおける光線方向Ｌ及び視線方向Ｖを求める。また、レンダリング部１０７は、注目点ＣＰが設定された糸Ｔ１における繊維方向Ｔを、注目点ＣＰの繊維方向Ｔとして求める。更に、レンダリング部１０７は、注目点ＣＰが設定された糸Ｔ１における法線方向Ｎを、注目点ＣＰの法線方向Ｎとして求める。
【００９４】
そして、レンダリング部１０７は、求めた光線方向Ｌ、視線方向Ｖ、繊維方向Ｔを式（２）〜（６）のＬ，Ｖ，Ｔに代入し、ステップＳ３３で補正した光沢係数ｐ´を式（２）のｐに代入し、ステップＳ３４で補正した鏡面反射係数Ｋｓ´を式（２）のＫｓに代入し、注目点ＣＰが設定された糸Ｔ１に対して定められた繊維密度情報を式（６）のｄに代入し、式（７）の演算を行い、注目点ＣＰにおける反射光のエネルギーを算出する。
【００９５】
次に、レンダリング部１０７は、仮想スクリーンの最終画素に対して、ステップＳ３１〜Ｓ３５の処理を実行した場合は（ステップＳ３６でＮＯ）、エネルギーの算出処理を終了し、最終画素に対してステップＳ３１〜Ｓ３５の処理を実行していない場合は（ステップＳ３６でＮＯ）処理をステップＳ３１に戻す。
【００９６】
図１１に戻り、レンダリング部１０７は、仮想スクリーンを表示制御部１０８に出力し、表示制御部１０８は、仮想スクリーンを表示部４００に表示して、立体モデルのレンダリング結果を表示部４００に表示する（ステップＳ１７）。
【００９７】
図１６は、立体モデルとしてカーシートを採用した場合の本レンダリング装置によるレンダリング結果を示す画面図であり、（ａ）はカーシートの腰掛け部の前側部分を上側から見た場合を示し、（ｂ）はカーシートの腰掛け部の前側部分を前方から見た場合を示している。図１６（ａ）、（ｂ）に示すように、カーシートの表面において、起毛処理が施された布がリアルに再現されていることが分かる。
【００９８】
図１７は、起毛処理された繊維を摂動させた場合におけるカーシートのレンダリング結果を示した画面図である。図１７の例えば閉曲線で囲まれた領域内において、繊維が一定の方向に摂動され、カーシートの表面において、起毛処理が施された布がよりリアルに再現されていることが分かる。
【００９９】
図１８は、模様の付された布をテクスチャとして用いた場合のレンダリング結果を示した図であり、（ａ）はカーシートの腰掛け部の前側部分を上側から見た場合を示し、（ｂ）はカーシートの腰掛け部の前側部分を前方から見た場合を示している。この場合、図１８に示すような模様が付された布をテクスチャのモデルとして採用すればよい。具体的には、テクスチャの各サンプル点Ｃ１におけるテクスチャ情報に例えばＲ，Ｇ，Ｂの色成分で示す色情報を含ませ、レンダリング部１０７は、この色情報を式（７）のＣＲＧＢに代入してレンダリングを行えばよい。
【０１００】
このように本レンダリング装置によれば、現物の糸の反射光を測定することで得られる糸の反射特性が取得され、取得された反射特性と反射関数から反射光のエネルギーとの誤差が最小となるように、鏡面反射係数Ｋｓ、光沢係数ｐ、第１の拡散反射係数Ｋｄ１、及び第２の拡散反射係数Ｋｄ２が算出され、これらの係数が算出された反射関数を用いて立体モデルがレンダリングされるため、反射関数が実際の糸の反射特性をよりリアルに表すことが可能となり、質感がリアルに再現された布で立体モデル表面を表示することができる。
【０１０１】
また、反射関数は、布の拡散反射光のうち布の糸の繊維方向を考慮した拡散反射光を示す第１の拡散反射成分Ｉｄ１と、布の糸の繊維方向を考慮しない拡散反射光を示す第２の拡散反射成分Ｉｄ２と、起毛処理された糸Ｔ１によって散乱する反射光のエネルギーを示す立毛反射成分Ｗを含んでいるため、反射関数は、起毛処理された布をよりリアルに再現することが可能となり、立体モデルの表面に表示される布をよりリアルに再現することができる。
【０１０２】
更に、反射関数による反射光のエネルギーの分布の合計が１となるように、鏡面反射係数Ｋｓ、第１及び第２の拡散反射係数Ｋｄ１，Ｋｄ２が規格化されるため、反射関数に任意の色を取り込んだ場合であっても、布の質感をリアルに表すことができる。
【０１０３】
更に、鏡面反射成分Ｉｓは、遮蔽補正係数Ｓを含むため、布を構成する糸の表面において、光源からの光が届かないことによる鏡面反射光の低下を再現することができる。
【０１０４】
更に、色情報取得部１０３を備えているため、立体モデル表面における布の色をユーザが所望する色に変更することができる。
【０１０５】
更に、摂動設定情報取得部１０４を備えているため、立体モデル表面における繊維を摂動させることができ、よりリアルなレンダリングを実現することができる。
【図面の簡単な説明】
【０１０６】
【図１】本発明の実施の形態によるレンダリング装置のハードウェア構成を示すブロック図である。
【図２】図１に示すレンダリング装置の機能ブロック図である。
【図３】本レンダリング装置が使用するテクスチャのモデルとなる現物の布を示した断面図である。
【図４】テクスチャのデータ構造を示す模式図である。
【図５】遮蔽補正係数の説明図である。
【図６】本レンダリング装置による反射関数に含まれる係数を算出する処理を示すフローチャートである。
【図７】試料載置テーブルに載置された現物の糸Ｔ２を示した図である。
【図８】反射特性測定装置による糸の測定手法の説明図であり、（ａ）はカメラと光源とのなす方位角が１８０度の場合を示し、（ｂ）はカメラと光源との方位角が０度の場合を示している。
【図９】反射特性測定装置において測定された糸の反射特性を示すグラフであり、縦軸はエネルギーを示し、横軸は方位角、並びにカメラ及び光源の仰角を示している。
【図１０】係数の規格化の説明図である。
【図１１】本レンダリング装置によるレンダリング処理を示すフローチャートである。
【図１２】レンダリング部によりバンプマッピングされた立体モデルを示した図である。
【図１３】エネルギーの算出処理を示すフローチャートである。
【図１４】仮想３次元空間内に設定された仮想スクリーンを示す図である。
【図１５】沢の拡がりの算出過程の説明図である。
【図１６】立体モデルとしてカーシートを採用した場合の本レンダリング装置によるレンダリング結果を示す画面図であり、（ａ）はカーシートの腰掛け部の前側部分を上側から見た場合を示し、（ｂ）はカーシートの腰掛け部の前側部分を前方から見た場合を示している。
【図１７】起毛処理された繊維を摂動させた場合におけるカーシートのレンダリング結果を示した画面図である。
【図１８】模様の付された布をテクスチャとして用いた場合のレンダリング結果を示した図であり、（ａ）はカーシートの腰掛け部の前側部分を上側から見た場合を示し、（ｂ）はカーシートの腰掛け部の前側部分を前方から見た場合を示している。
【図１９】立毛反射成分の説明図である。
【図２０】カジヤ−ケイモデルを説明するための図である。
【符号の説明】
【０１０７】
１０  反射特性測定装置
１００  処理部
１０１  モデル取得部
１０２  テクスチャ取得部
１０３  色情報取得部
１０４  摂動設定情報取得部
１０５  反射特性取得部
１０６  修正部
１０７  レンダリング部
１０８  表示制御部
２００  記憶部
２０１  モデル記憶部
２０２  テクスチャ記憶部
２０３  反射特性記憶部
２０４  反射関数記憶部
３００  入力部
４００  表示部
ｆ１  繊維
Ｉｓ  鏡面反射成分
Ｉｄ１  第１の拡散反射成分
Ｉｄ２  第２の拡散反射成分
Ｋｄ１  第１の拡散反射係数
Ｋｄ２  第２の拡散反射係数
Ｋｓ  鏡面反射係数
Ｌ  光線方向
Ｎ  法線方向
ｐ  光沢係数
Ｓ  遮蔽補正係数
Ｖ  視線方向
Ｗ  立毛反射成分
【図１】
2008129950.tif 000003
【図２】
2008129950.tif 000004
【図４】
2008129950.tif 000005
【図５】
2008129950.tif 000006
【図６】
2008129950.tif 000007
【図８】
2008129950.tif 000008
【図９】
2008129950.tif 000009
【図１０】
2008129950.tif 000010
【図１１】
2008129950.tif 000011
【図１２】
2008129950.tif 000012
【図１３】
2008129950.tif 000013
【図１４】
2008129950.tif 000014
【図１５】
2008129950.tif 000015
【図１９】
2008129950.tif 000016
【図２０】
2008129950.tif 000017
【図３】
2008129950.tif 000018
【図７】
2008129950.tif 000019
【図１６】
2008129950.tif 000020
【図１７】
2008129950.tif 000021
【図１８】
2008129950.tif 000022