「4次元ゲームのインターフェイス」の編集履歴(バックアップ)一覧はこちら
「4次元ゲームのインターフェイス」(2012/08/21 (火) 03:51:56) の最新版変更点
追加された行は緑色になります。
削除された行は赤色になります。
<4次元ゲームのインターフェイス>
・3次元空間へ投影して表示
3変数を用いて、空間座標にプロット
4変数目を連続的/断続的/任意に変更させて、空間にアニメーション/オーバーレイして表示
/* 実装例: 4次元ワールド座標 (Xm, Ym, Zm, Wm) にある点を2次元ディスプレイ座標 (Xd, Yd) に線形射影 */
Xd = Xm + 0.5Zm + 0.8Wm
Yd = Ym + 0.5Zm + 0.2Wm
/* 一般的に表現すると */
Xd = Cxx Xm + Cxy Ym + Cxz Zm + Cxw Wm
Yd = Cyx Xm + Cyy Ym + Cyz Zm + Cyw Wm
/* Cxx~Cyw は係数 */
もしくは4変数目を異なる色、異なる輝度などで表現
・3次元立体を用いて1方向へ展開して表示
3変数を用いて、立体の空間座標にプロット
変数が有限であれば、その個数分の立体を展開
/* 実装例: 基本的には上記と同じ。
立体を横に並べるには Cyw=0, Cxw >> Cxx, Cxy, Cxz
立体を横に並べるには Cxw=0, Cyw >> Cyx, Cyy, Cyz
となるように係数設定すればよい */
・2次元平面を用いて2方向へ展開して表示
2変数を用いて、平面座標にプロット
3変数目を用いて、平面を縦に配列して積層
4変数目を用いて、積層した平面を横に配列してさらに重層
/* 実装例: これも上記と同じ。*/
・新次元は描かずに断面で表現
4次元目を描かず、カレントポジションを1次元内部で持っておき、
描画はそのカレントポジション平面上の3次元空間のみにとどめる。
プレイヤーの操作(平行移動や回転(パン))によって描画する断面の平面を変えることにより
アフォーダンス的に4次元空間を表現する。
・2次元平面を用いて2方向の断面をとって表示
2変数を用いて、平面座標にプロット
残り2変数を用いて、別の平面座標にプロット
現在の4次元座標を通過する2方向の断面図
/* 実装例:4次元ワールド座標 (x,y,z,w) 点の物体(マップ)を M(x,y,z,w)、
2つの2次元ディスプレイマップを D(x,y), E(x,y)、
それぞれの上にあるカーソル位置を(Xd,Yd),(Xe,Ye)
としたときに下記のように描画する */
D(x,y) = M(x ,y ,Xe,Ye)
E(x,y) = M(Xd,Yd,x ,y )
・座標パラメータのみで表示
----
<4次元ゲームのインターフェイス>
・3次元空間へ投影して表示
3変数を用いて、空間座標にプロット
4変数目を連続的/断続的/任意に変更させて、空間にアニメーション/オーバーレイして表示
/* 実装例: 4次元ワールド座標 (Xm, Ym, Zm, Wm) にある点を2次元ディスプレイ座標 (Xd, Yd) に線形写像 */
Xd = Xm + 0.5Zm + 0.8Wm
Yd = Ym + 0.5Zm + 0.2Wm
/* 一般的に表現すると */
Xd = Cxx Xm + Cxy Ym + Cxz Zm + Cxw Wm
Yd = Cyx Xm + Cyy Ym + Cyz Zm + Cyw Wm
/* Cxx~Cyw は係数 */
もしくは4変数目を異なる色、異なる輝度などで表現
・3次元立体を用いて1方向へ展開して表示
3変数を用いて、立体の空間座標にプロット
変数が有限であれば、その個数分の立体を展開
/* 実装例: 基本的には上記と同じ。
立体を横に並べるには Cyw=0, Cxw >> Cxx, Cxy, Cxz
立体を横に並べるには Cxw=0, Cyw >> Cyx, Cyy, Cyz
となるように係数設定すればよい */
・2次元平面を用いて2方向へ展開して表示
2変数を用いて、平面座標にプロット
3変数目を用いて、平面を縦に配列して積層
4変数目を用いて、積層した平面を横に配列してさらに重層
/* 実装例: これも上記と同じ。*/
・新次元は描かずに断面で表現
4次元目を描かず、カレントポジションを1次元内部で持っておき、
描画はそのカレントポジション平面上の3次元空間のみにとどめる。
プレイヤーの操作(平行移動や回転(パン))によって描画する断面の平面を変えることにより
アフォーダンス的に4次元空間を表現する。
操作として平行移動を使う場合には、1単位隣の平面のみを線形写像でオーバーレイしておき、
(壁ではなくて)進めることを認知させる方法がよく使われる。
・2次元平面を用いて2方向の断面をとって表示
2変数を用いて、平面座標にプロット
残り2変数を用いて、別の平面座標にプロット
現在の4次元座標を通過する2方向の断面図
/* 実装例:4次元ワールド座標 (x,y,z,w) 点の物体(マップ)を M(x,y,z,w)、
2つの2次元ディスプレイマップを D(x,y), E(x,y)、
それぞれの上にあるカーソル位置を(Xd,Yd),(Xe,Ye)
としたときに下記のように描画する */
D(x,y) = M(x ,y ,Xe,Ye)
E(x,y) = M(Xd,Yd,x ,y )
・座標パラメータのみで表示
----
表示オプション
横に並べて表示:
変化行の前後のみ表示: