問題タブ [2d]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
xna - 連続する 2D 空間での障害物回避による基本的な経路探索
私は、インテリジェントなパスファインディングを行うのではなく、障害物をスライドして、クリーチャーオブジェクトが環境内の他の任意のオブジェクトに向かって移動できるようにするシミュレーションを書いています。経路を計画させようとしているわけではありません。一般的な 1 つの方向に移動し、障害物を回避するだけです。
これは 2D 環境 (俯瞰) であり、すべてのオブジェクトには衝突検出用の境界四角形があります。グリッドはありません。私は A* ソリューションを探していません。
この種の「ばかげた」衝突ベースのパスファインディングに関するチュートリアルを見つけることができなかったので、最も一般的な用語を使用してこれを説明していない可能性があります。
これを実装する方法に関する推奨事項 (またはチュートリアルへのリンク) はありますか?
c# - XNA:SpriteBatch.Draw(...)カラーを不透明なピクセルにのみ適用する
アルファチャネルを持つPNGからロードされたスプライトがあります。画像には不透明なディスクが含まれており、残りの部分は透明です。
color
の引数を使用してSpriteBatch.Draw(...)
、ディスクの色合いを変更したいと思います。ただし、デフォルトのブレンド動作では、スプライト全体に色が適用されるため、色付きのディスクの周りに不透明な正方形の輪郭が表示されます。
color
透明なピクセルが引数の影響を受けないようにブレンドモードを変更する方法はありますか?
2d - 等尺性のゲーム世界を描く
2D ゲームで等尺性タイルを描画する正しい方法は何ですか?
マップの 2D 配列表現の各列をジグザグにする方法でタイルをレンダリングすることを示唆する参考文献 (このようなもの)を読みました。画面に描画されるものが、2D 配列がどのように見えるかにより密接に関連し、少し回転するだけで、ダイヤモンドのように描画する必要があると思います。
どちらの方法にも利点または欠点はありますか?
layout - オブジェクトのラベルを重複せずに2D空間に配置します
画面全体にランダムに広がり、動き続けるオブジェクトにテキストラベルを付ける必要があります。
ラベルのデフォルトの理想的な位置は、それが参照するオブジェクトの右側です。ラベルが互いにまたは他のオブジェクトと重ならないように、ラベルを動的に再配置(または場合によってはマージ)する方法が必要です。
オブジェクト自体がスムーズに動く場合は、オブジェクトにできるだけ近づけて、突然のぎくしゃくした動きを見せてはなりません。
どうすればいいのかわかりませんが、このようなアルゴリズムはありますか?
java - タイルベースのゲーム用 Java 2D ゲームエンジン
シンプルなタイルベースのゲームを開発するための優れた Java ゲーム エンジンを推奨できる人はいますか? Tiled www.mapeditor.org のようなものを使用してマップを作成できるエンジンを探しています
Slick はまさに私が探しているもの、slick.cokeandcode.com ですが、Vista-64 では動作しません。私が管理できる最善の方法は次のとおりです。AMD 64ビットプラットフォームでIA 32ビット.dllをロードできません(これは最新のLWJGLバージョンをダウンロードした後です)。
64 ビット Vista で動作する同様のものを提案できる人はいますか?
2d - アイソメトリック ワールド内のタイル間でスプライトを移動する
2D スプライトをアイソメトリック ゲームの世界で移動 (およびアニメーション化) する方法についての情報を探していますが、1 つのタイルの境界からジャンプさせるのではなく、タイルからタイルへの移動としてスムーズにアニメーション化します。次の境界。
この例は、トランスポート タイクーン ゲームで、列車と車両が 1 つのタイルに半分ずつ、もう 1 つのタイルに半分ずつ配置されていることがよくあります。
java - 2D ゲームでのジャンプの計算
私はJ2MEで作業しています。ゲームループで次のことを行っています:
つまり、これは単なる基本的なゲームループです。doLogic()
関数はシーン内のキャラクターのすべてのロジック関数をrender(g, diff)
呼び出し、シーンanimateChar
上のすべてのキャラクターの関数を呼び出します。これに続いてanimChar
、Character クラスの関数が画面内のすべてを次のように設定します。
これにより、マシンがサイクルからサイクルへと移動するのにかかる時間に従って、すべてが移動する必要があることが保証されます (これは電話であって、ゲーム機ではないことを思い出してください)。この動作を実現する最も効率的な方法ではないことは確かなので、コメントで私のプログラミング スキルに対する批判を完全に受け入れますが、ここで私の問題: キャラクターをジャンプさせるとき、私がすることは、彼のdyを負の値、たとえば -200 に設定し、ブール値のジャンプを true に設定すると、キャラクターが上昇します。次に、この関数を呼び出しcheckGravity()
て、上昇するすべてのものを下降させる必要があることをcheckGravity
確認し、キャラクターが存在するかどうかもチェックしますプラットフォームを超えているので、時間を節約するために少し省略します。
したがって、問題は、この関数がdiffに関係なくdyを更新し、キャラクターが遅いマシンでスーパーマンのように飛ぶようにすることです。キャラクターがジャンプしているときに速度が低下するようにdiff係数を実装する方法がわかりませんゲーム速度に比例する方法。誰でもこの問題を解決するのを手伝ってもらえますか? または、J2ME で正しい方法で 2D ジャンプを作成する方法を教えてください。
java - Java での単純な 2D アニメーションのフレームワーク/ライブラリ?
Java で非常に単純なゲームを作成して、作成したワイヤレス コントローラーのデモを行いたいと考えています。BreakoutやPongのようなものを考えました。現在、私は AWT 機能を直接使用してすべてのアニメーションを行うプロトタイプの Pong 実装を持っています。ただし、これはプログラミングがやや厄介であり、CPU を大量に消費します。
私の質問:
シンプルな 2D アニメーションを表示する Java のライブラリを誰かが推奨できますか? 同様のプロジェクトで何を使用しましたか? このライブラリは、簡単に使用できるものでなければなりません。Java3D のようなものを探しているわけではありません。統合された衝突検出はプロです。
java - らせん状の 2 次元配列
らせん状に配列を埋めようとしています。これまでのところ、配列をらせん状に印刷できますが、配列を変更してらせん状に並べてから配列を印刷する方法はありますか? カウントダウンのように降順にしていきたいです。助けてください!
c# - WPFを使用して数千のデータポイントをグラフ化するための最もパフォーマンスの高い方法は?
財務データを表示するチャートを作成しました。とsをPathGeometry
併用して接続線として表示される10000点未満を描画している間は、パフォーマンスは良好でした。しかし、今は(スクロールせずに)同時に最大100.000ポイントを表示する必要があり、すでに50.000ポイントと非常に遅いです。と思っていたのですが、基本的にはバイトストリームとして情報を格納するのと同じなのでわかりません。誰かがこれをはるかにパフォーマンスの高いものにするアイデアを持っていますか、あるいは誰かがすでに同様のことをしたことがありますか?PathFigure
LineSegment
StreamGeometry
PathGeometry
編集:これらのデータポイントは一度描画されると変更されないため、最適化する可能性がある場合はお知らせください(線分は現在フリーズしています)。
編集:私はStreamGeometryを試しました。グラフィックの作成には何らかの理由でさらに時間がかかりましたが、これは問題ではありません。すべてのポイントを描画した後のチャートへの描画は、以前の方法と同じくらい遅いです。WPFで処理するにはデータポイントが多すぎると思います。
編集:少し実験しましたが、WPFアンチエイリアシングサブピクセルラインを防ぐために、以前はdoubleであった座標をintに変換することで、パフォーマンスが少し向上することに気付きました。
編集:線分の数を減らすことを提案するすべての回答に感謝します。階段状の線の水平方向の解像度を最大で2倍に、単純な線の水平方向の解像度を最大で2倍に減らしましたが、パフォーマンスはかなり良好になりました。