問題タブ [box2d-iphone]

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.

0 投票する
1 に答える
109 参照

objective-c - Box2D で Cocos2D プロジェクトに GameLayer.h を含めるとコンパイル エラーが発生する

したがって、mainMenu というファイルに次のコードがあります。

そして私は持ってい#import "GameLayer.h"ます。GameLayer にはヘッダー ファイルに cocos2d、box2d、GLES-Render が含まれてい.hます。

そのため、mainMenu ファイル ( ) に GameLayer を含め.mてアプリをビルドしようとすると、b2d (b2settings、b2math など) に関する約 360 のエラーが返されません。誰かが私が間違っていることを知っていますか??

mainMenu コードは、GameLayer を含めなくても完全に機能することに注意してください。

0 投票する
2 に答える
1126 参照

cocos2d-iphone - Box2d キネマティック ボディに定義済みの曲線パスを与える方法

私は Box2d を使用するのが初めてで、私の質問に対する一貫した答えが本当に見つからないので、すみません。

私は iPhone 用のゲームを書いていますが (最近はそうではありません)、Cocos2d と Box2D を使用しています。ゲーム内で動き回るオブジェクトがあり、それらにもっと曲線的なパスを与えたいと考えています。私の研究から、b2_kinematicBody 型のボディを使用する必要があることがわかっています。これにより、ティックごとに線形速度を変更し、他の飛行体と衝突しないようにすることができます。現在の位置 (x,y) とステップ内の次の位置 (x1,y1) がわかれば、速度のベクトルを計算できることは理解しています。オブジェクトに定義された曲線パスを与える良い方法はありますか? 私はそれがある種のパラメトリック方程式でなければならないと考えています。

0 投票する
1 に答える
1120 参照

cocos2d-iphone - cocos2d での Water Waves の実装

私はゲーム ( cocos2d +box2d) を開発しています。ここでは、以下のリンクに似た波を実装したいと考えています 。

同様のものをcocos2dに移植した人はいますか、またはcocos2dを使用して同様のことを達成する方法を知っている人はいますか?助けてください。

0 投票する
1 に答える
798 参照

box2d - ボディが磁化されたときのbox2dジッター

だから私はいくつかのボディを持っています(私は実行時にますます作成することができます)、そして私はそれらをスクリーンの中心に磁化する必要があります。ワールドスペースでは(480/2 / WORLD_SCALE、320/2 / WORLD_SCALE)とします。私はbox2dを初めて使用するので、これを実現する簡単な方法があるかもしれませんが、次のようにしようとしています。

  1. 私は各体の位置と画面の中心位置を差し引きます-体を動かす必要がある場所への方向を取得します。
  2. 方向ベクトルを正規化します(p.1で見つけました)
  3. この正規化されたベクトルを私の重力パワー値に乗算します
  4. ベクトル(p。3で取得したもの)を現在のボディの速度に追加します

だからその後、私は欲しいものを手に入れました-ボディは画面の中央に磁化されます、そしてボディが止まることができるようにいくつかの摩擦とダンピングも追加します。しかし、私が推測しているように、重力ベクトルが一定の長さであるため、体の動きを完全に停止させることはできません。それは常に画面の中心に移動しようとし、それらの可能な最小速度はこの重力ベクトルの長さです。

ボディが1つしかない場合、ボディが画面の中心に近い場合は手順2、3を実行せず、重力のサイズはです。しかし、2つのボディが互いに衝突するため、2つのボディが画面の真ん中の位置に正確に配置されることはないため、ボディの位置を磁場の中心にバインドすることはできません。ですから、重力ベクトルを可変にすることはできません。摩擦をいじってもうまくいきません。ステップハックが役立つかもしれませんが、必要なのは、ある種の跳ね返る反力などを実装することだと思います。

私はbox2dを初めて使用しますが、物理学はあまり得意ではありません。

また重要なのは、SetLinearVelocityメソッドを使用してボディの速度を設定することです。

多分私は何かが足りないだけかもしれません、多分これを達成するためのbox2dのネイティブの方法があります。助けていただければ幸いです。

0 投票する
1 に答える
771 参照

objective-c - Objective-CおよびBox2Dのマルチスプライトタッチ検出

敵の配列を作成し、敵を追加するときに適切なbox2dコードを追加しましたが、どの敵にも触れることができないことがわかりました。これを引き起こしている原因はわかりませんが、私が知る限り、それは二度と戻らないと言えます。フィクスチャ。

ユーザーデータを設定してみましたが、複数の項目が表示されません。

これが私のスプライトなどを追加する方法です

次に、タッチハンドラーを使用して、タッチされたアイテムを返します。

0 投票する
1 に答える
797 参照

cocos2d-iphone - box2d マウス ジョイントを box2d setposition と同様に動作させる方法

b2setposition()と同じようにb2mouse関節を動作させたいのですが、マウス関節に力がかかることはわかっているので、setPosition()のように遅れることなく目的のポイントに到達することはできませんが、b2setPosition()に近い動作をさせたいです。 )。したがって、b2setposition と同じように動作するように、どの mousejoint/body プロパティに取り組む必要がありますか。

ご回答有難うございます。

0 投票する
1 に答える
3257 参照

cocos2d-iphone - Cocos2d Box2d 複数の b2circle シェイプ フィクスチャ (ポジショニング付き)

希望する位置で 1 つの b2body に 2 つの円フィクスチャを追加する方法を知っている人はいますか? を使用して 2 つのポリゴン フィクスチャを 1 つのボディに追加する方法を知っていますm_centroid。しかし、サークルフィクスチャに対してはどうすればよいですか。

どんな答えでも大歓迎です。物をくっつけたい。ジョイントを試してみましたが、すべて伸縮性があります。距離スタティックが欲しい。

みんな、ありがとう!

0 投票する
1 に答える
4055 参照

objective-c - Box2Dワールドサイズ

box2dワールドを作成しましたが、ワールドの高さを制限したいと思いました。私はグーグルを検索しました、そして明らかにあなたがあなたの世界のサイズを定義しなければならない以前のバージョンのbox2dにオプションがありました、しかしあなたが世界の高さを設定できたかどうかはわかりませんが、現在のバージョンでは彼らは持っていますそのオプションを完全にオフにしました。

私のプレーヤーは上下にジャンプするボールであり、ジャンプできる高さを制限したいので、高さを制限する方法を探しています(ジャンプは物理学と重力とボールの速度によって行われます)いくつかの良いジャンプの後、ボールはその速度が上がるにつれて本当に高くジャンプします、そして私は速度を制限したくありません)そして例えば境界線を置きますy=900

0 投票する
2 に答える
7720 参照

cocos2d-iphone - Cocos2D と Box2D による照明と影

私は現在、Box2d で Cocos2d を使用して iPad & iPhone 用のゲームを開発しています。このビデオのような照明効果を実現できれば、非常にクールだったでしょう。

http://www.youtube.com/watch?v=Elnpm-gNI04

そしてこのリンクで:

http://www.catalinzima.com/2010/07/my-technique-for-the-shader-based-dynamic-2d-shadows/

リンクの説明から Cocos2d と Box2d で効果を再現しようとすることはできますが、非常に遠くまで到達できるかどうかはわかりません. かなり先進的で重そうです。

これを「簡単な」方法で達成するにはどうすればよいですか?このようなもののCocos2dバージョンを知っている人はいますか、それとも私を正しい方向に向けるための指針を持っている人はいますか?

0 投票する
1 に答える
299 参照

objective-c - Box2D ポリゴンが正しく衝突しない

シーンを保存し、iOS で Box2D を使用して再読み込みしようとしていますが、ファイルからシーンを読み取った後、ポリゴンが適切に衝突しないという問題があります。あたかもポリゴンが凹面であるかのように、それは一種または半分の衝突です。ただし、GLESDebugDraw では正しくレンダリングされます。ポリゴンの頂点を、書き込まれた順序、つまり保存されている順序で読み取ります。この時点で何が起こっているかについてのアイデアは役に立ちます。ありがとう。