レトロゲームを作ろう@cdog

FCゲーム再現という企画にあやかり
ゲームプログラミングに最適なHSP言語で、レトロ風なゲームを作っていきたいと思います。
JAVAではないのですが、いつかはJAVAで作り直せたらなぁ・・と思います。

このページでは、ゲームプログラミングの基礎的なアルゴリズムを勉強していきたいと思います。
更新は不定期になりそうですが、よろしくお願いします^^;

制作は配信の方でも進めていきたいと思います

nicovideo_com: エラー ( 正しいコミュニティ埋め込みタグURLを入力してください. )

By 白井@ChargemanDog

Season1 ウィズ、メガテン風3Dダンジョン制作

その1 絶対座標と相対座標

絶対座標とは、ダンジョンマップ全体を定義した変数で
これは、二次元配列によってあらわす。

相対座標とは、自分の視点を表示するための変数で
こちらも、二次元配列であらわす。

◆絶対座標
dim map,10,10 ←※10×10のマップ
map(0,0) = 1,1,1,1,1,1,1,1,1,1
map(0,1) = 1,1,1,1,1,1,1,1,1,1
map(0,2) = 1,1,0,0,0,0,0,0,1,1
map(0,3) = 1,1,0,0,0,0,0,0,1,1
map(0,4) = 1,1,0,0,0,0,0,0,1,1
map(0,5) = 1,1,0,0,0,0,0,0,1,1
map(0,6) = 1,1,0,0,0,0,0,0,1,1
map(0,7) = 1,1,0,0,0,0,0,0,1,1
map(0,8) = 1,1,1,1,1,1,1,1,1,1
map(0,9) = 1,1,1,1,1,1,1,1,1,1

※1は壁0は床という定義の場合

◆相対座標
dim view,3,3
view(0,0) = map(px-1,py-2), map(px,py-2), map(px+1,py-2)
view(0,1) = map(px-1,py-1), map(px,py-1), map(px+1,py-1)
view(0,2) = map(px-1,py), map(px,py), map(px+1,py)

※この相対座標は、北(上方向)を向いてる時の例です
※pxとpyは、自分の現在位置を記録した変数です

◇総体座標の例
矢印→プレイヤーの位置と向き

※この例では、自分のいる位置から前2マス
 横1マスづつ見えるという設定です。

相対座標は、常に絶対座標を参照するため
絶対座標の四方は常に二重の壁に囲まれている必要がある。
そうしないと絶対座標の配列の外を参照されてしまい
バグにつながってしまいます。


その2 3Dダンジョンの描画について



このように表示させるとすると、自分の視点から最も奥の壁のさらに隅の壁を
描画する必要が出てくる・・・
つまり、相対座標の外の座標まで参照する必要がある

   
   
矢印→プレイヤーの位置と向き
※→新たに描画が必要な座標

新たに二つの変数を用意して、その変数に相対座標の奥の両端を代入するか・・・
背景として処理して、適当にお茶を濁すか・・・
ちょっと悩みどころですね^^;








天からの声

名前:
コメント:

自由帳

訪問者数: -
+ タグ編集
  • タグ:
  • HSP.レトロゲーム

このサイトはreCAPTCHAによって保護されており、Googleの プライバシーポリシー利用規約 が適用されます。

最終更新:2012年03月03日 17:54