SandSurfaceの概要
SandSurfaceは、ゲーム向けの砂の表現を行うシミュレーション・レンダリングシステムです。物体による砂の変形をリアルタイムに計算しますので、砂地に残る足跡や、砂を崩す/盛り上げるといった操作が可能です。また、砂の崩落現象や、風による模様(風紋)の生成もリアルタイムに計算します。 今までのゲームでは実現できなかった、「いじって遊べる」砂浜や砂場が作成できます。
SandSurfaceは、ゲーム向けの砂の表現を行うシミュレーション・レンダリングシステムです。物体による砂の変形をリアルタイムに計算しますので、砂地に残る足跡や、砂を崩す/盛り上げるといった操作が可能です。また、砂の崩落現象や、風による模様(風紋)の生成もリアルタイムに計算します。 今までのゲームでは実現できなかった、「いじって遊べる」砂浜や砂場が作成できます。
独自の砂の物理モデルによって、砂の堆積、急な傾斜の砂の崩落、物体の衝突による砂の移動といった現実と同じような砂の動きをリアルタイムに計算することができます。 砂の崩落や風紋といった現象では、テクスチャ座標の移流によるテクスチャアニメーションを行うことで、砂の流れを計算解像度以上の細かさで表現しています。
いくつかのパラメータを設定することで、さらさらとした流れからねっとりとした流れまで、砂の崩落の性質を柔軟に制御できます。
専用の相互作用検出オブジェクトと組み合わせることで、ゲームキャラクターとの接触で砂を変形させる、といったインタラクティブな表現ができます。キャラクターの動きに合わせて相互作用検出オブジェクトを移動させるだけで、砂の衝突と変形が自動的に計算されます。
相互作用検出オブジェクトを組み合わせて熊手やトンボといった形状を作り、砂に模様を描いたり、山を作ったりできます。


棒で砂面に絵を描くことも出来ます。


SandSurfaceの標準の描画機能(Renderer)はジオメトリの動的LOD処理を行っており、凹凸の激しい部分は細かく、そうでない部分は荒くポリゴンを生成してレンダリング負荷の低減を図っています。同時に、計算点の単位で法線を動的生成することにより、少ないジオメトリで十分に詳細な砂表面のディティール表現を実現しています。


| 砂の崩落計算 ・パラメータによる挙動の調整 ・テクスチャによる流れの表現 物体による砂の変形 ・相互作用検出オブジェクトによる衝突と変形の計算 風による風紋の発生の計算 |
| 凹凸に応じたポリゴン生成(LOD) 法線・ハイトマップを用いたシェーディングによる微細な凹凸の表現 |