タグ付けされた質問 「isometric」

3つの軸すべてが正確に120度離れていると技術的に定義された特定の3Dパースペクティブ。初期のビデオゲームでは、より滑らかなピクセルラインを考慮に入れるために、しばしば少しずれています。


2
ほとんどの2.5D等尺性ゲームの視野の遠近法の角度[終了]
いくつかの非常に人気のあるゲームを調べて、それらが使用している視点角度を決定しました。目的のために、等角表示で45度と60度のグリッドを作成し、スクリーンショット(この場合はDiablo IIの)に配置しました。これらのグリッドはいずれもゲームの観点に適合しません。だから私は、パースペクティブに最適な角度を見つけようとしましたが、角度は53.5度に近いです。しかし、この数字はどこからでも来ていないようで、遠近法の角度を定義する数字の背後には強力な論理があると思います。私は9/16 * 90度と3/4 * 90度(画面解像度16:9と4:3の比率から)を試しましたが、私の仮定はどれも正しいようには見えません。ここに私が意味するもののスクリーンショットがあります: 60度 45度 2つの間の何か-53.5度-実数にかなり近い 実際の学位が何であり、どこから得られるのかを本当に知る必要があります。どんな助けも大歓迎です!ありがとうございました!

1
等尺性レンダリングとピッキング?
私は、ダイアモンド型の世界で等尺性タイルをプロット(world-> screen)およびマウス選択(world-> screen)するための式を探していました。私が試したものは常に、うまくいっているように見えます。これを行うための通常/正しい方法は何ですか?

12
JavaScript / HTML5の等尺性ゲームエンジン[終了]
現在のところ、この質問はQ&A形式には適していません。回答は、事実、参考文献、または専門知識によってサポートされると予想されますが、この質問は、議論、議論、世論調査、または広範な議論を求める可能性があります。この質問を改善し、おそらく再開できると思われる場合は、ヘルプセンターをご覧ください。 6年前に閉鎖されました。 JavaScript / HTML5用の安定した(つまり、アルファではない)アイソメトリック描画エンジンを知っている人はいますか?私はいくつかのGoogle検索を行って、いくつかを見つけましたが、それらはほとんどアルファ/招待のみのステータスでした。 実稼働環境で使用できるほど成熟したものはありますか?それとも、今のところ自分の実装を単にロールして、世界の残りが追いつくのを待つべきですか?

1
マウス座標を等尺性インデックスに変換する方法は?
タイル64x32で等尺性マップを描画します。 const Offset = 160; int X, Y; for (int a=0; a < 6; a++) for (int b=0; b < 6; b++) { X = a * 32 - b * 32 + Offset; Y = a * 16 + b * 16; DrawTile(X, Y, tile); } このコードを示す画像: 親愛なる専門家は、セルの等尺性インデックスでのマウス座標の変換式を手伝ってください。例:(105; 100)-> …

9
等尺性スプライトを正しい順序に並べ替えるにはどうすればよいですか?
通常のトップダウン2Dゲームでは、画面のy軸を使用して画像を並べ替えることができます。この例では、ツリーは適切にソートされていますが、等尺性の壁はそうではありません。 壁2は壁1の1ピクセル下にあるため、壁1の後に描画され、最終的に上部に配置されます。 等尺性y軸で並べ替えると、壁は正しい順序で表示されますが、ツリーは表示されません。 これを正しく行うにはどうすればよいですか?

3
2D空間ゲームでの等尺性グラフィックスの偽造
最初に、描画の問題が何であるかを正確に知っており、それを解決する方法についてさまざまなアイデアを持っています。等尺性の「錯視」が維持されるように、どのフレームを描画するかを調整する方法を見つけ出します。 私は宇宙で行われる2D鳥瞰図ゲームを書いています。Up is Northの世界でアイソメグラフィックを使用しようとしています。従来のアイソメゲームのようなゲーム世界の回転はありません(ゲームは空間で行われ、地形はありません)。ここでは例のスプライトは、私が使用しようとしていますされていますhttp://cell.stat-life.com/images/stories/AsteroidOutpost/Spaceship64.pngそれは別名(35度の視野角と自身の垂直軸を中心に回転だ64回、 iso)。画像が生成されたため、これを変更できます。 わかりやすくするために、北(上)が0度、東(右)が90度になるように指示しました。 私の問題は、使用する3Dプレーンの違いが原因で、スプライトが常に、ゲームが考えるところに直面しているように見えないことです。用語を正しく使用しているかどうかはわかりませんが、私の宇宙船は1つの平面上で回転しており、ビュー平面は物がそれ自身の平面上で回転することを期待しています。問題の描写は次のとおりです。 http://cell.stat-life.com/images/stories/AsteroidOutpost/ProjectionIssue.png 左側にはサイドビューがあり、右側にはトップダウンビューがあります。上部には、世界の宇宙船/スプライトシートビューがあります。一番下には、画面に描画されたときのスプライトの外観があります。 右上には、宇宙船がどのように回転したかを簡略化したバージョンがあります(各フレーム間が均等に分離されています)。右下には、特定の角度が画面に描かれたときにスプライトが向いているように見える角度です。問題は約45度で最も顕著です。これは、船が向いているはずの方向に向けられた「スクリーンプレーン」ラインでオーバーレイされた画像です。http : //cell.stat-life.com/images/stories/AsteroidOutpost/Spaceship64RedLine.png赤い線は常に船とまったく同じ方向に向ける必要がありますが、ご覧のとおり、投影の問題が問題を引き起こしています。この問題を十分に説明していることを願っています。 編集: 赤い線はスクリーン平面上で回転しますが、宇宙船は「船平面」上で回転します。したがって、船の角度と描かれたときのスクリーン角度の大きな違いがあります。 編集を終了 この船が一方向に外れたターゲットにレーザービームを発射しているとき、それがまっすぐ前方に発射されるべきであるとき、それはかなり奇妙に見えます。 だから...私が思いついた解決策は次のとおりです: 等角図を偽造するのをやめる、大きくなる、または家に帰る。すでに私の世界を回転させます。(PS:これで問題が解決しますよね?) スプライトシートを(なんとかして)変更して、モデルが表示される「スクリーンアングル」を表すフレームを作成します。したがって、45度の画像を要求すると、実際には画面上で45度の方向を向いているように見えます。 スプライトレンダリングシステムを変更して、スプライトシートとは異なるフレームを(なんとかして)取得します。「通常の」フレームを取得すると面白いように見えることを知っています。そのため、45度のフレームを取得する代わりに... 33度のフレーム(推測のみ)を取得して、ユーザーに正しく見えるようにします。 3Dを使用するだけです!とても簡単です 1つ:どのソリューションをお勧めしますか?私はそれが間違っていることを知っているにもかかわらず、2に傾いています。私はスプライト生成ツールに完全にアクセスできることを忘れないでください。方法3は2番目の選択肢です。どちらの方法でも、目的の結果を得るには、角度に数学を適用するだけです。ところで、私はそこに#4を冗談として追加しました。3Dに移行したくありません。 2つの場合:方法2または3を使用して、入力または出力角度を調整するにはどうすればよいですか?3Dプロジェクション、3Dマトリックス(2Dマトリックスは言うまでもありません)、および他の数学を使用して望みの結果を得るには、それほど得意ではありません。 ここで大声で考えてみましょう:船が見たい方向に向いている単位ベクトルを(スクリーンプレーンで)取得し、それを船のプレーンに投影し、その投影されたラインと飛行機の角度北は、表示したい船のグラフィックの角度が必要です。正しい?(#3の解決策?)男...私はそれを解決できません。 編集: 私は問題を静的な画像で視覚化するのが難しいことを知っているので、Sprite Library Visual Testerをコンパイルして問題を表示しました:http : //cell.stat-life.com/downloads/SpriteLibVisualTest.zip XNA 4.0が必要ですこのアプリケーションは単純にスプライトを回転させ、その中心点から船が向いているとゲームが考える角度で外側に線を引きます。 9月8日編集 「大声で考える」パラグラフの続き:プロジェクションを使用する代わりに(ハードに見えるため)北向きの単位ベクトル(0x、1y、0z)を取り、マトリックスを使用して角度に回転できると考えていますスプライトは実際に向いているので、X軸を中心に「ビューイングプレーン」から「スプライトプレーン」まで外側に回転させてから、...平らにしますか?XおよびYのみを使用して(Zを無視して)ベクトルを(本質的に投影して)表示面に戻します。次に、その新しい平坦化されたベクトルを使用して、その角度を決定し、それを使用して...何かをすることができました。後でもっと考えます。 9月8日編集(2) 私はいくつかの成功を収めて上から私のアイデアをフォローしようとしました!だから...赤い線を宇宙船からまっすぐに出ているように見せるために(テスト目的のみ)、私は次のことをしました: Vector3 vect = new Vector3(0, 1, 0); vect = Vector3.Transform(vect, Matrix.CreateRotationZ(rotation)); vect …

4
2Dアイソメゲームでのリアルタイムシャドウキャスティング
私はC ++で小さな2Dアイソメトリックエンジンを書いており、リアルタイムのシャドウキャスティングを実装しようとしています。このページで説明されている簡単なアプローチに従いました。結果は次のとおりです(光は黄色のキューブと同じ位置にあります)。 結果は非常に良いですが、壁とキューブの上部に影がありません。これがどのように見えるかの例を次に示します(予想される影を緑色で描画しました)。 描画されるすべてのキューブは、XY位置に配置され、Z深度(z = x + y)の3つの2Dクワッドで単純に作成されます。OpenGLを正投影マトリックス(glOrtho)と共に使用します。影はステンシルバッファーを使用して描画されます。 このシャドウキャストの実装を完了するのに役立つリソースまたはソリューションを探しています。 どうもありがとう!

3
楽しい等尺性六角形
レンダリング時にいくつかのサイズのピクセルサイズ全体に追加で解決される、最も見栄えが良く、グラフィカルに規則的な等角(押しつぶされた平らな側面)ヘックスを与える角度と長辺/短辺の比率は?

6
等尺性衝突検出を処理するにはどうすればよいですか?
等尺性のランジャンプスタイルのプラットフォーマーを作成したいと思います。プレイヤーは、床の上のプラットフォームの上にジャンプしたり、オブジェクトの側面にぶつかったりできる必要があります。 2Dゲームエンジンを使用するので、使用していないディメンションの完全な3Dコリジョンをエミュレートしたくありません。 ゲーム内のオブジェクトは、X、Y、幅、高さ、および深さのZを使用して配置する必要があると考えています。 これらの値を使用して、衝突をどのように検出する必要がありますか?

4
アイソメビューフラッシュゲームで描画順序を決定するにはどうすればよいですか?
これは、等角投影ビューのフラッシュゲーム用です。オブジェクトを並べ替える方法を知る必要があるので、描画時にzバッファをチェックする必要はありません。これは簡単に思えるかもしれませんが、別の制限があります。シーンには10,000個以上のオブジェクトを含めることができるため、アルゴリズムはO(n ^ 2)未満で実行する必要があります。すべてのオブジェクトは長方形のボックスであり、シーン内で3〜4個のオブジェクトが移動しています。これを行う最良の方法は何ですか? 更新 各タイルにはオブジェクトのみがあります(つまり、オブジェクトを互いに重ねることはできません)。オブジェクトのマップとオブジェクトの両方にアクセスし、それぞれの位置を持っています。 更新2 これらの図を参照してください。 最初に最初に青いオブジェクトを描画し、次に緑、次に赤を描画します。一方、2番目では逆の順序で描画する必要があります。最初に赤、次に緑、最​​後に青のオブジェクトを描画する必要があります。ご覧のとおり、青と赤のオブジェクトの位置に違いはありません。両方ともカメラからの距離が異なります。しかし、緑色のボックスに対する相対的な位置のため、2つの画像間で描画順序を変更する必要があります。それがこの問題を混乱させるものです。 補足:すべてのオブジェクトは直角プリズムであるため、問題のニーズを満たすために少なくとも1つの描画順序があることを数学的に証明できます。

4
時差等角図:画面上の点の地図座標を計算します
これについてはすでに多くのリソースがあることはわかっていますが、自分の座標系に一致するリソースが見つからないため、これらのソリューションを自分のニーズに合わせるのに非常に苦労しています。私が学んだことは、これを行う最良の方法は変換行列を使用することです。それを実装することは問題ありませんが、座標空間をどのように変換する必要があるのか​​わかりません。 これが私の座標系を示す画像です: 画面上の点をこの座標系に変換するにはどうすればよいですか?

2
傾斜した(高さ)アイソメトリックタイルを作成する方法
これはおそらく絵で最もよく説明されます。2.5Dアイソメトリックゲームを作成しようとしています。私のビジョンは、ゲームが私の目標のようになることです。 私はグラフィックアーティストではないので、さまざまな高さの地形をシミュレートするために「傾斜した」タイルを作成するのに問題があります。基本的なアイソメトリックタイルの作成は、次の手順を使用して簡単でした。 タイルの64x64正方形バージョンを作成する 45度回転 高さを2倍に縮小します 「傾斜した」タイルを作成することは、より困難です。私は自由にPhotoshopを持っていますが、使用する専門家にはほど遠いです。これが私の現在の問題です: 頂点をどのように操作できるかわかりませんが、そうでなければ簡単ですが、基本的には、基本のアイソメトリックタイルから「傾斜」タイルを取得するには、下と右の頂点を16ピクセル下に移動するだけです。 、他の2つの頂点を修正します。これにより、必要なタイルが生成されます。 これを達成する簡単な方法は何ですか。Photoshopはこれに適したツールですか?助言がありますか?
11 tiles  isometric 

4
等角タイルのアニメーションドアを処理する方法
どうやって対処すればよいかわからないトリッキーな問題があります。ドアのアニメーションタイルがあります。閉じている場合は、1つの方法で並べ替える必要がありますが、オープンエンドの場合は、異なる(隣接タイル)に属するため、別の方法で並べ替える必要があります。 ドアが閉まっています。 そしてドアが開いた: そのようなタイルの並べ替えシステムをオーバーライドして、フレームに基づいて並べ替えを調整することは可能だと思いますが、少しハックに感じます。 誰かが同様のシナリオに遭遇しましたか?エレガントなソリューションはありますか?

2
キャラクター/オブジェクトの相互作用アニメーションは、等尺性ゲームでどのように機能しますか?
机やホワイトボードなどの通常の家具が置かれたオフィスをプレイヤーが見るアイソメトリックビジネスシミュレーションゲームを計画しています。 ゲーム内のキャラクター(スタッフ/ NPC)は、デスクのキーボードでの入力やホワイトボードへの書き込みなど、事前定義されたタスクを実行して、これらのオブジェクトと対話する必要があります。 特に私が興味を持っているのは、次のシナリオです。 キャラクターはオフィス(1)を横切って自分のデスク(2)に移動し、座ってタイプし始めます(3)。 私が理解していることから、キャラクターの動き(1)にはスプライトシートがあり、デスク(2)には静的なスプライトがありますが、3番目のステップの処理方法がよくわかりません。 デスクとキャラクターの両方を含む複合スプライトはありますか?私はそうではないと思います。さもなければ、すべての机とキャラクターの組み合わせにスプライトシートが必要になるでしょう。 これは通常どのように処理されますか? 編集: ゲームTheme Hospitalの具体的なアニメーション例を以下に示します。あなたはここでビデオを見ることができます。 私が見る限り、アニメーションはいくつかのステップに分かれています。 ステップ1-キャラクターは机と椅子の間を移動します。 これは、椅子とデスクが実際には別々のスプライトであることを示唆しています。 ステップ2-キャラクターが座るアニメーション 一番最後のフレームで椅子が机に近づいていることに注目してください。 ステップ3-デスクのアニメーション ステップ4-立ち上がるアニメーション 座るのと同じですが、逆に演奏されます。 ステップ5-離れる 通常の移動アニメーションを使用して離れます。 私の質問は、これらのアニメーションをどのように分離するのが最も良いか、グラフィックアーティストが通常これらのアニメーションをどのように提供するのかということです。 キャラクターが机に座って入力しているのは、実際には3つの異なるスプライト(机、キャラクター、椅子)ですか?同様のアニメーションのスプライトの例を知っている人はいますか? 編集2: 私の最大の懸念は、スプライトが実際にどのように見えるかについて正しい期待を持っていることだと思います。私はそれらを自分で描くことができないので、それを行うには誰かにお金を払わなければならないでしょう、そして私はこれらの種類のアニメーションを行う何らかのベストプラクティスの方法があると思いますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.