dice_model.jpg


サイコロのモデリング

 アナログなゲームなどで乱数を得るために使われるのが、サイコロです。本ページでは、サイコロをモデリングしていこうと思います。

種類

  「サイコロ」と言えば、一般的には直方体(正六面体)の物を思い浮かべます。応用(派生)として、他の正多面体を使った物も存在します。TV等で使っているのを時々見かけますよね?
 各面が、同一の正多角形で構成される正多面体は、正四面体、正六面体、正八面体、正十二面体、正二十面体、の5種類しか存在しない事が知られています(下図)。正多面体については、こちら(「正多面体」)でご確認ください。

polyhedron.jpg

 今回は、オーソドックスに立方体(正六面体)のサイコロをモデリングします。

サイコロ

 立方体は、互いに平行に向かい合う3組、6枚の正四角形で構成されます。サイコロとして使う時、目の数は1〜6の6通りと、なります。一般的なサイコロは、平行に向かい合う3組の正四角形の目の合計が7になる様に配置されています。

 後は1,2,3の目の位置関係に着目して、1→2→3の順で見た時に時計回りに見えるのが一般的な雄サイコロ、反時計回りに見えるのが、雌サイコロと言う様です。

※なお、1,2,3の目は、1つの頂点を共有する様に配置されます。

 と、いう下調べをする前に、いい加減にモデリングしてしまったところ、一般的ではない、雌サイコロが出来上がっていました……(1^^;)。
 データの座標値をチマチマいじって調整するのは面倒だったので、相似変換sim命令を使ってx軸方向の正負を逆転させ、雄サイコロにしました(以下コード)。

  sim -r,r,r;

 x軸方向だけ負の値としたので、x=0のy-z平面を境に正負が反転し、結果として雌サイコロが雄サイコロに変身します。雌サイコロのまま、使いたい場合には、「−r」の部分を「r」にして見てください。

目の向き

 昔から見慣れていた「つもり」のサイコロにも、色々な規則が存在していたことを知りました。こうなると、もしかして、目の向きにも何かしら決まりがあるのでは?残念ながら調べ切れなかったので、何も気にせずモデリングしたまま、としてあるのでご注意ください。

 正四角形の各面に対して、点対称となる目は1,4,5の3面です。この3面は、どの方向に回転しても、90°単位の回転であれば同じ模様に見えるので、問題ありません。
 残る2,3,6の3面は、90°単位の回転によって見た目の模様が異なって見えるため、何らかの配置規則が存在しているなら、正しい回転位置でモデリングしなければなりません。が、今回は調査不足、規則の存在を確認できませんでした。

 ご存知の方で、こだわりのある方は、モデリングデータ(本ページの最後にリンク)を修正して使って見てくださいm(1__)m。

面取り

 そう言えば今回、目の部分は立方体から削り取って凹ませてあります。
 もし、これが実物のサイコロだとすると、削り取った質量次第で、厳密には重心の位置がずれるので、出目の確率が変動してしまう恐れがありますね。

 そう言う意味では、「転がり易いように」と、面取りをしたサイコロなんかも見かけますが、これも、製作者が意図的に面取りの角度や量を調整して出目の確率を操作している、等と疑われかねないので、カジノとかで使うサイコロには、面取りされていない物が多いそうです。

 今回のモデリングでは、見た目の美しさを優先して、面取りが施してあります。以下にリンクするデータと、動画でご確認ください。


完成データ

 完成したデータをリンクしておきます。

1) Xi-TRACEデータ dice_model.xitr

 1)でレイトレーシングを実行します。

 完成した動画を以下にリンクしておきます。



 各面の目の模様、単なるマッピング(二次元)ではなく、ちゃんと削り取って凹ませた(三次元)ので、それっぽく見えますでしょう?


home

download

gallery