研究概要 |
小学校低学年の子供たちを対象とした,コンピュータ内の仮想空間における三次元造形と形状操作の教育を支援するエデュテイメントソフトウェアとして,組み合わせブロックを使ったモデリングシステムを作成している. これまでに作成したシステムでは,単位立方体を並べたブロックしか扱うことができなかった.しかし,実際の組み合わせブロックには,円弧などの曲線を含むブロックや三角などの斜めの線を含むブロックが含まれており,これらが形状表現を豊かにしている.そこで,今年度は曲面ブロックを扱う方法を検討した. 従来のシステムでは,三次元空間を単位立方体で分割することでブロックの配置や衝突判定を簡略化していた.このままでは曲面形状を扱えないので,衝突判定の方法を根本的に改める必要がある.原理的には,ブロックを記述するポリゴンの全ての組み合わせで衝突を判定することで,ブロックどうしの衝突を判定できるが,実時間では処理しきれない.そこで,OBB(Oriented Bounding Box)でブロックを外接し,OBB同士の衝突判定をポリゴンの衝突判定に先立って行うことにした.さらに,OBBを階層化して木構造とすることで,無駄な衝突判定の回数を減らしている.OBB同士の衝突は最大で15の方向の重なりを調べることで判定できる.実際には,OBBの座標軸方向が一致していることが多いため,これよりずっと少ない回数で衝突判定できる.現在は,OBBの衝突判定プログラムをシステムに組み込んでいるところである. ブロック同士の接合を判定する方法も必要になる.詳細は検討中だが,ブロックは凸部分を凹部分にはめ込むことで接合するので,ブロックデータに結合可能な位置を示す点(接合ポイント)を付与しておき,三次元空間で接合ポイント間の距離が一定値以下になったら接合位置に自動的に移動することで,直感的な接続を実現する予定である.
|