問題タブ [tiled]
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.
performance - libgdx TiledMap レンダリングのパフォーマンスの問題
そのため、libgdx プロジェクトでパフォーマンスの問題が発生し、マップのレンダリングまで追跡しました。空のプロジェクトを作成することで問題を分離し、マップのレンダリングだけをできるだけ少なくしました。これは私が思いついたコードです:
デスクトップ起動プロジェクト クラス:
実際のコード:
ここで奇妙なことに、CPU 使用率が途方もなく高いだけでなく、128 を超えるレンダリングが必要になると、CPU 使用率が急上昇します。129 タイル未満では、パフォーマンスは常に同じです。( この処理だけで 2~4% かかります ) しかし、129 個以上のタイルをレンダリングすると 40~60% かかります! 今私の質問は:それはなぜですか?私は何か間違ったことをしていますか?libgdx のレンダラーにこのような致命的な欠陥があるとは想像できません...そして、画面上で 128 個のタイルのみを使用してゲームを作成することは選択肢ではありません :)
答えや考えをありがとう!
環境:
- Eclipse ケプラー サービス リリース 1
- libgdx バージョン 0.9.9
- ウィンドウズ7
- グラフィックチップ: NVIDIA GeForce GTX 560 Ti
- CPU: Pentium デュアルコア 2.70GHz
128 タイルのレンダリング:
129 タイルのレンダリング:
java - AndEngine はアセット エラーから TMXTiledMap を読み込めませんでした
AndEngine TMXTiledMapExample を模倣するクラスを作成しようとしましたが、単純なクラスでアセットから TMXTiledMap をロードできません。誰かが何が起こっているのか理解するのを手伝ってくれますか? アセットのベース パスを設定し、TMXTiledMapExample をほぼ複製しました。
エラー メッセージ: 03-13 23:49:11.057: E/AndEngine(27801): AndEngine 03-13 23:49:11.057: E/AndEngine(27801): atorg.andengine.extension.tmx.TMXLoader.loadFromAsset(TMXLoader.ジャワ:104)
ios - スプライト キットでレース トラックを作成する
ios7 でのリリース以来、スプライト キット 2D ゲームを使用して学習および作成してきました。私は今、完全にロードされたトップダウンのレーシング ゲームを作成するという考えを持っていますが、さまざまなレース トラックを作成するための最良のアプローチは何かという 1 つの質問に固執しています。最初は、Tile Map (人気のあるプログラム Tiled を使用) を使用してレース トラックを作成するだけでよいと考えていましたが、必要なトラックの角を丸くすることはできない可能性が高いことに気付きました。これに対する最善のアプローチが何であるかについて、誰か考えがありますか? おそらく、Tile Maps を使用するのが最善の方法ですが、丸みを帯びたコーナーでの衝突検出の処理に関する重要な機能を見逃しています..
java - Tiled を使用して libgdx ゲームに線が入っているのはなぜですか?
私は LibGdx と Tiled を使用しています。画面を移動すると、ゲームに水平線と垂直線の両方が表示されます。必要に応じて、必要なコードを投稿できます。これらの行を停止するにはどうすればよいですか?
ラインの gfycat gif は次のとおりです。
http://gfycat.com/FastUnnaturalAmericanwirehair
編集:
これは小さなbitbucketリポジトリです。同じグリッチが含まれている、私が入手できる限り小さいものです。
java - TMX Tiled Andengine Android - FATAL EXCEPTION -
tmx タイル マップ ファイルを 2D プラットフォーマーのマップとして使い始めたところです。これは私がこれまでに持っているコードです。
しかし、それは私にこのエラーを与えています - FATAL EXCEPTION: UpdateThread and java.lang.IllegalArgumenetException: No value found for attribute: 'width'
これは私の tmx ファイルに問題がありますか? エンコード方法または設定方法は? それともコーディング側ですか?? みんなありがとう、助けてくれて本当にありがとう。使用する場合に備えて、LogCat の残りの部分を次に示します。
(編集 - LogCat を編集してくれた Matej Spili に感謝します! 目に優しくなりました! :D)
編集 4/29/14
そこで、Tiled のメーカーであるビョルンに話を聞きました。
- 私-常にそのエラーであるため、使用するコードは問題ではないようです
私 - サンプル tmx ファイルの 1 つを見ると、最後は次のようになります。
/li>- 私-しかし、作成したtmxファイルを見ると、高さと幅の指定がありません。オブジェクトレイヤーの高さ/幅をどのように指定しますか?
- bjorn - dpod: これらの属性は書き出されなくなりました。
- bjorn - dpod: AndEngine はそれらを必要としないように修正する必要があります。オブジェクト グループにはサイズの制限がないため、基本的に常に無意味でした。
- bjorn - 「getTMXObjectGroupProperties」や「containsTMXProperty」などの関数名はまったくおかしなことです...
- bjorn - Tiled では、そのコードは次のようになります: "foreach (ObjectGroup *group, map->objectGroups()) { if (group->hasProperty("wall")) { ...
- IRC - [15:02] == ビョルン [~quassel@pdpc/supporter/active/bjorn]
- IRC - [15:02] == 本名: Thorbjørn Lindeijer
- IRC - [15:02] == チャネル: #tiled
- IRC - [15:02] == サーバー: asimov.freenode.net [TX、USA]
- IRC - [15:02] == アカウント : bjorn
- IRC - [15:02] == WHOIS の終わり
- 私 - なんてこった、あなたはタイルを作った人ですか?!
楽しかったです笑。しかし今、私はより多くの質問を持っています!foreach とは一体何なのでしょうか。
json - コロナはタイル レイヤーのオブジェクト プロパティを使用
Lua スクリプトとゲーム開発は初めてです。だから私はLuaの初心者です。
問題の解決策をネットで検索しましたが、運がありませんでした。
Windows7 で Photoshop、Corona、Dusk、json、Tiled を使用しています。
ゲームのような「ボード」、つまり Setlers を作成しています。背景として世界地図を使用しています。ゲームエリアの背景画像はワールドマップ(world.pngファイル)です。ここでは問題ありません。
オブジェクトに保存されているすべてのパラメーターと値 (Tiled で追加したもの) を使用して、ゲームマップの国境に一致する透明なクリック可能なオブジェクトを作成したいと考えています。そのため、プレーヤーが国をクリックすると、透明なオブジェクト (マップの上部) がクリックされたオブジェクトになり、イベント リスナーがクリックに対して動作します。
Tiled では、必要なすべてのオブジェクトを作成し、名前を付けて、パラメーターやその他の値を割り当てることができます。Tiled に object.alpha 値を追加すると、アルファ値がコロナに渡され、そこで機能します。これらのデータをコロナの json/tmx ファイルから読み取り、lua テーブルに追加するにはどうすればよいですか?
タイル マップとそのオブジェクトを使用するために私が考えている方法は、各国の国境の 1 つのポリライン トレースを作成することです (国ごとに 1 つのオブジェクトを作成します)。次に、各「国をトレースしたオブジェクト」を world.png マップの上に配置し、「object.name = TileBritannia」のように国の名前をオブジェクトに付け、ゲームで使用するその他のプロパティも指定します。
私の問題は、object.name などのオブジェクト情報と、オブジェクトのクリックに反応するイベントリスナーを取得することです。
背景画像として png ファイルを使用する場合、ポリラインはマップ上にクリック可能な領域を作成する正しい方法ですか?
1 つのレイヤーで、またはタイル化された個々のオブジェクト レイヤーとしてすべての国を使用して、国境オブジェクトを作成する最良の方法は何ですか。
サブ オブジェクトを含むレイヤーを 1 つ作成し、コード内でそれらにアクセスすることはできますか?
Tiled で設定されたオブジェクト名とその他のプロパティを取得するにはどうすればよいですか。
(local britannia = tiledMap:load("britannia.json")) を使用しようとすると、「ロード」が機能せず、nil 値が取得されます。
object.name、つまり「objBritannia」または「TileBritannia」を抽出/取得/読み取るコードを探しています。json/tmx ファイルから。
json ファイルからさまざまなパラメーターを読み取ろうとすると、期待した結果が得られません。私は結果 = を取得し、function: 046A73B0
何らかのオブジェクト名を望んでいました。
リンクまたはコード例を提供してください。
質問を編集しました。ありがとう
libgdx - Tiled-software でプロパティ名と値を取得する方法
libgdx、box2d、および Tiled というソフトウェアを使用しています。
Tiled というソフトウェアで、オブジェクト レイヤーに 2 つのオブジェクトを作成しました。各オブジェクトに異なるプロパティ名と値を与えました。
私の質問は、コードを使用してプロパティ名と値を取得するにはどうすればよいですか?
私が試してみました:
エラーの取得: スレッド「LWJGL アプリケーション」の例外 java.lang.ClassCastException: java.lang.String を java.lang.Integer にキャストできません