進行中のゲームプロジェクトに大きな変更を加える前に、誰かがDisplayObjectのgetObjectsUnderPoint()関数に関する問題を見つけたら、他の人から聞きたいことがありますか?誰かがgetObjectsUnderPointを使用した場合のパフォーマンスの問題を含む、
更新:は だけでなく、パフォーマンスの問題が、それを使用して、任意の他の制限(これは単なる一例としてのUIElementの特定のタイプを()検出しないように)
私は自分のアプリケーションに三層を持っています(これはアイソメゲーム)
- 背景 - これはちょうど底にとどまる背景である、ゲーム
- ミドルレイヤーとは何の関係もありません - これはここで、すべての私のゲーム要素プレイ可能エリアです場所になるdこのレイヤーで
- トップレイヤー - これは1つのダミーの透明なレイヤーで、すべてのマウスイベントを中断する再生可能な領域全体をカバーします。ここで私はgetObjectsUnderPoint()を使用したいです。
プレイヤーは要素をクリックしたい、トップレイヤーはマウスイベントを中断し、何かが配置されているか、または普通のバックグラウンドがあるかどうかをチェックし、アクションのように、下のオブジェクトに通知します。
これは本当にマップに配置されたすべてのアイテムのmouesイベントを単純に追加することができますが、getObjectsUnderPoint()を使用してアイテムの下に何かが存在するかどうかを確認するためです。
誰でもこの機能がどのように機能するのか説明できれば、決断を下すのは簡単ではありません。
あなたがパフォーマンスを心配している場合は、機能をテストしてストレスを軽減し、ゲームの数の2倍のような多くのオブジェクトで遅くなっているかどうかを確認しましょう。 – vulkanino
私が最後に追加したかった欠点があります。今更新されました –
最後の日にtouchlibを書きました。この関数をディスパッチイベントに使用しましたが、いくつかのオブジェクトの問題は見つかりませんでした。それはあなたがそこに持っているオブジェクトの数に依存しますが、あなたはあまりにも多くを持っているなら、いつでもCPUを殺すことができます:]。たぶんあなたはいくつかのストレステストを買った? – turbosqel