問題タブ [ccsprite]
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.
iphone - CCSprite(cocos2d)オブジェクトを加速度値に従ってランドスケープモードで移動
加速度の値に応じて 1 つのオブジェクトを動かしたいゲームを 1 つ準備しています。ゲームはランドスケープ モードです。
ゲームでは、cocos2d フレームワークを使用しており、加速度値に従ってスプライトの位置を変更しています。加速度計のコードは次のとおりです。
ここで、player
は CCSprite オブジェクトです。Player はデバイスの向きに従って回転しますが、デバイスの向きによって位置は変わりません。私は何を間違っていますか?ランドスケープ モードでは、x 軸は y として動作し、y 軸は x として動作しますか?
cocos2d-iphone - ある親から別の親に CCSprite を転送する方法は?
それ自体が現在実行中のゲーム ロジックの子である call の子である call があるのでCCSprite
、この場合です。 永遠に繰り返されるアクションで画面を前後に移動し、それに乗っています。独自のアクションを実行できる場所に「降りて」「乗り込み」たいと思います。sprite
CCLayer
movingLayer
CCLayer
self
movingLayer
sprite
sprite
movingLayer
self
これをやろうとするとmovingLayer
、削除sprite
しself
て追加するように指示する必要がありますsprite.
これは私がやったことです...
stopAllActions
冗長だと思いますが、それは問題ではありません。sprite
追加するmovingLayer
前に削除self
すると、ゾンビにアクセスするためにクラッシュし、self
最初に追加しようとすると、既に追加されているものを追加しようとしてクラッシュします。
iphone - Cocos2dの複数のCCSpriteにタッチを実装する正しい方法??
私はcocos2dを使って最初のゲームを開発していますが、正しい解決策を見つけることができないという問題に遭遇しました。画面の上部から下部に向かって毎秒CCSpriteを追加およびアニメーション化しており、プレーヤーがこれらのスプライトのいずれかに触れたときにこれらのスプライトを非表示にする必要があります。そこで、追加するすべてのスプライトにタグを付け、後でその特定のタグを使用してそのスプライトにアクセスすることを考えました。touchメソッドでタグ番号にアクセスする前でも、タグ番号は1秒ごとにインクリメントされるため、配列にタグ番号を入力する必要がありますか?
また、数秒ごとに呼び出される3つのメソッドがあり、これらのCCSpriteFrameCacheオブジェクトとCCSpriteBatchNodeオブジェクトを作成して、アニメート中にキャラクターを実行させます。このように毎秒キャッシュを作成するには重すぎるのでしょうか、それともinitメソッドでキャッシュを作成し、ここでCCSpriteでアクションを実行する必要がありますか?
iphone - スプライトの位置
私は新しいcocos2d開発者ですが、小さな問題があり、あなたの助けが必要です。
実際には、画面の中心を中心にスプライトを回転させる必要があります。たとえば、画面の中心に位置を置き、アンカーポイントを(-1、-2)に設定して、回転させました。
回転後のスプライトの実際の位置を知る必要があるという私の問題は、位置を読み取ろうとするたびに、画面の中心点を取得しました。これは必要ありません。
スプライトの実際の位置を取得する方法または方法はありますか?
iphone - Polygon 形状の CCSprite を作成する方法
私が欲しいのは、ユーザーがポリゴンを描画し、スプライトがポリゴンの形で作成されることです。ユーザーがポリゴンを作成するためのプログラミングはすべて完了しているので、描画された画像の頂点を読み取ることができます。ただし、CGRectMake を使用して、長方形のスプライトしか作成できないようです。多角形のファイルからスプライト画像を作成する方法はありますか? 頂点などを指定する CGPolyMake のように。
ユーザーがどのような形状を描くかわからないため、ポリゴン スプライトを事前に作成することはできません。助けてくれてありがとう!
iphone - CCsprite アンカーポイントの問題
アンカーポイントに問題があります..
スプライトがあり、このスプライトの画面中央付近のアンカー ポイントを計算する必要があります。
アンカーポイントを計算するにはどうすればよいですか?
iphone - 加速度に応じて「落下」する CCSprite を移動する
このコードを使用して、UIDevice の加速に従って「落下」スプライトを移動しています。うまく機能しますが、非常にラグがあり、スプライトの位置間にジャンプがあります。
私はこのように CCMoveTo を使用しようとしました:
しかし、スプライトはまったく動きません。ヒントはありますか?
製造、
サイドスワイプ
ios - convertToNodeSpace が正しく機能しない
このコード (少し調整) を使用すると、一定の Y 値を取得できません。それは変化し続けます。X は完璧に機能しますが、Y は実際に歪んでいます。
画面サイズくらいのタイルを作っています。つかんでドラッグすると、x に対して正常に動作します。画面上のスペースをクリックすると、
終了したタッチ x : 459.000000 y : 705.000000
そして、少しドラッグすると、これが得られます
終了したタッチ x : 459.000000 y : 823.000000
したがって、x値はそのままですが、Y値は変更され、適切な値が表示されません
印刷用の私のコードは次のようになります
そして大部分はこのウェブサイトから来ています...
http://firsttimecocos2d.blogspot.com/2011/07/how-to-scroll-and-zoom-inout-of-map.html
なんでも?ありがとう!
objective-c - cocos2d スプライトはタッチを無効にします
私は cocos2d でゲームをしています 私は多くのスプライトを持っています 私はこれでスプライトにタッチを使用しています
しかし、スプライトに触れたときは削除する必要があります
しかし、私はオブジェクト座標を使用しているため、タッチは機能し、子からそれを削除するとオブジェクトを削除できません。どうすればよいですか?なぜスプライトのタッチイベントを取得できるのですか? 座標法がないものはありますか?
objective-c - スケールが適用されていない場合、スプライトが歪む原因
写真は千の言葉の価値があります。これが私のものです:
上の図は2つのスプライトを示しています。右中央のスプライトはプレーヤーで、左中央のスプライトはAIプレーヤーです。それらの初期化は両方とも同じsuperClassを使用します。同様の品質のスプライトが表示されるはずです。
ただし、ご覧のとおり、右側のスプライトはどういうわけか歪んでいます。また、一部のアニメーションフレームで、同じスプライトシートの他のスプライトの斑点が上下に表示されていることにも気づきました。プレイヤーのスプライトで変換が行われることはありません。aiスプライトでも実行されるアクション以外のアクションは実行されません。
他の誰かがこれに遭遇しましたか?この問題の言い方すらわかりません;)他に質問はありますか?問い合わせてください!
詳細:Lionで実行されているCocos2d 1.0.0 ..Xcode4.1を使用しています。
コードサンプル:このコードは、CCFiniteTimeActionsを含むNSObjectとCCSpriteの初期化後に実行されます
変数「sprites」はCCSpriteBatchNodeへのポインターです。バッチノードは1つしかないため、同じバッチノードを指していると確信しています。
ご覧のとおり、このオブジェクトはバッチノードを介して独自のアニメーションをレイヤーに追加します。
動きが発生する方法を投稿します:
尋ねた時から、私は次の行を追加しようとしました:
プレーヤーのスプライトからぼかしを取り除きましたが、画像を少し広く伸ばしました。これらのスプライトフレームはそれぞれ32x32pixであり、フレーム全体を埋めるわけではないことは、おそらく言及する価値があります。
さらに、上記のコード行はaiのスプライトの外観に影響を与えませんでした。
*-------* 編集::
それを私が直した。
どうしたの:
スプライトが画面上で移動しようとしている場所を保持する2つのフロートがあります。私の世界の他のすべてのスプライトは、プレイヤーの参照から描画されます。
私の参照中に、floatはintにフォーマットされたため、ゲーム内の他のすべてのスプライトは、位置のintバージョンを受け取りました。
これは私を信じさせます、私のコードのどこかにこれらの2つのフロートを細分化する何かがあるに違いありません。
「半分のピクセル値」のヒントを@jtbandesに感謝します。位置がどのようにして整数以外になったのかはまだわかりませんが:(
とにかく、floatをintに変更すると、すべてが修正されました。
ありがとう!