3

私はおそらくゲームデザインで非常に一般的な問題に直面しています。

  1. 2Dの世界があるとしましょう
  2. 世界のサイズはMxNrectです
  3. 世界にはいくつかのアイテムが含まれている可能性があります
  4. アイテムには(x、y)座標があります
  5. 物理的に(mxn)大きいウィンドウを介して世界を閲覧できます。
  6. ブラウザウィンドウをズームイン/ズームアウトできます
  7. ブラウザウィンドウは、世界の範囲内で上下左右にパンできます。

これをどのように実装すればよいですか?特にブラウザウィンドウが気になります。誰かが良い読み物をお勧めできますか?

これは宿題ではありません-それは私が自分で完了するように設定したタスクです。

4

4 に答える 4

1

基本的に、ある領域の長方形のサブセットを別の長方形にマッピングします。ブラウザウィンドウ。これは、基本的に2つの操作です。1つは、表示された領域をワールド内に配置するための変換と、もう1つは、任意の表示可能な領域を取得してウィンドウに合わせて拡大縮小するためのスケーリングです。それとは別に、ズームインとズームアウトの問題があります。これは、基本的に表示領域のサイズを変更することです。

ゲーム開発では、これにアプローチするいくつかの方法があります。通常、ビュープロジェクションをカスタマイズして、必要なだけ世界を表示し(つまり、世界座標から表示座標に変換します。通常は正投影)、世界またはビューを変換して、ビューポートを次のように配置します。あなたが見たいものを指しています。オブジェクトの位置を正しく設定していれば、3Dハードウェアは期待どおりの結果を引き出します。

于 2009-10-20T13:37:52.407 に答える
1

http://web.archive.org/web/20100111062144/http://www.parallelrealities.co.uk/tutorials/

于 2009-10-19T19:17:02.377 に答える
1

特別なマーカーを使用してGoogleマップを実装するのと同じように実装します。

于 2009-10-19T19:18:52.620 に答える
0

あなたはdhtmlで逃げることができるかもしれません、しかしフラッシュまたはシルバーライトはこのような何かを実装するのがはるかに簡単でしょう。

いくつかのインスピレーションを得るためにグーグルマップの背後にあるコードを見てください。彼らはあなたが純粋なhtmlで望むのと同じようなことをしています。

于 2009-10-19T19:16:31.643 に答える