1980年からプログラマしています

どうしてプログラマすることになったか書いています。過去日記です。

プラス・ワン ラジオシティとレイトレーシング(199X年)

 TurboVRXのグラフィック・ライブラリのStarbaseがバージョンアップして、ラジオシティレイトレーシングが使える様になった。何と先進的なグラフィックライブラリだったんだろう。

 ラジオティは熱力学を応用した大域照明の計算手法である。ラジオシティでは、光源やポリゴン面の色からは、熱力学でいうところのエネルギーが放出されていると考えて、シーン全体の熱エネルギーは、光源やポリゴンから放出したり、ポリゴンに吸収されたりして、最終的には熱力学第二の法則により一定の値に落ち着く。この計算の結果、影が生成されるのである。レイトレーシングなどのシャープな影とは違い、柔らかな影である。計算結果は、ポリゴンを分割したパッチの頂点色として保存される。だからトータルのポリゴン数は最初の10倍から100倍にも増える。

 ラジオシティのクオリティを上げるには、パッチの分割数を上げればいいのであるが、ラジオシティの計算時間とデータ量が指数的に増えていくし。パッチ数が軽く100万ポリゴンを越えてしまう莫大なサイズになることもある。ラジオシティの計算は、光源を動かさない限り、再計算しなくても良いので、これは建築のCGアニメーションに好都合だった。

 レイトレーシングの計算は、やはり時間がかかった。グラフィック・エンジンのジオメトリ機能を使っているのかも知れないが、そもそものデータ量が多いので、テスト画像を何枚か作っただけであった。

 

参考 StarbaseのRadiosityデモ画像(HPのパンフレットに載っていた) Graphics Galleryより