タグ付けされた質問 「cocos2d-iphone」

cocos2d for iPhoneは、iOSデバイス用の2Dゲーム、デモ、その他のグラフィカル/インタラクティブアプリケーションを構築するための無料のオープンソースフレームワークです。

4
ベジェ曲線で均一な移動速度を実現する方法は?
ベジェ曲線に沿って画像を移動しようとしています。これは私がそれを行う方法です: - (void)startFly { [self runAction:[CCSequence actions: [CCBezierBy actionWithDuration:timeFlying bezier:[self getPathWithDirection:currentDirection]], [CCCallFuncN actionWithTarget:self selector:@selector(endFly)], nil]]; } 私の問題は、画像が均一に移動しないことです。最初はゆっくりと動き、その後徐々に加速し、最後には本当に速く動きます。この加速を取り除くにはどうすればよいですか?

5
トンネル効果cocos2d
COCOS2D(iOS)で同様のトンネル効果を作成したいと考えています。誰かがポインターを提案できますか? 参照ビデオ1 参照ビデオ2 今まで、縮尺を小さくして中心を同じポイントに配置し、小さいスプライトごとにZを小さくしたまま、いくつかのリング形状のスプライトを試しました。 それにより、CCScaleToでアニメートし、アニメーションの継続時間でサイズを2.0に変更しますが、参考文献に示されているトンネル効果に近づきません。 ありがとう、サム

7
ゲームにおける描画とロジックの分離
私は今、ゲーム開発をいじり始めている開発者です。私は.Netの男なので、XNAをいじり、iPhone用のCocos2dで遊んでいます。私の質問は本当にもっと一般的です。 簡単なPongゲームを作成しているとしましょう。私が持っていると思いますBallクラスとPaddleクラスを。ビジネスの世界の開発から来た私の最初の本能は、これらのクラスのいずれにも描画または入力処理コードがないことです。 //pseudo code class Ball { Vector2D position; Vector2D velocity; Color color; void Move(){} } ballクラスでは、入力を処理したり、描画を処理したりするものはありません。次に、別のクラス、私のGameクラス、またはScene.m(Cocos2dの)私がボールを新しくし、ゲームループ中に必要に応じてボールを操作します。 ただし、XNAとCocos2dの両方の多くのチュートリアルで、次のようなパターンが見られます。 //pseudo code class Ball : SomeUpdatableComponent { Vector2D position; Vector2D velocity; Color color; void Update(){} void Draw(){} void HandleInput(){} } 私の質問は、これは正しいですか?これは、人々がゲーム開発で使用するパターンですか?Ballクラスにすべてをやらせることは、私が慣れ親しんだことすべてに何らかの形で反します。さらに、この2番目の例では、Ball移動方法がわかっているので、Paddle?のBall知識が必要Paddleですか?私の最初の例では、Gameクラスは、両方への参照であろうBallとPaddle、その後、いくつかにそれらのオフの両方を出荷CollisionDetectionマネージャか何かが、各個々のコンポーネントは、それ自体で、すべてをしなければどのように私は、さまざまなコンポーネントの複雑さに対処するのですか?(私は私が理にかなっていると思います...)

3
Cocos2dとCoronaの比較[終了]
閉まっている。この質問はトピックから外れています。現在、回答を受け付けていません。 この質問を改善してみませんか? 質問を更新して、ゲーム開発スタック交換のトピックになるようにします。 8年前休業。 私はこれをどのように進めるかを決めるのに本当に苦労しています。ゲームの開発を開始しようとしていますが、これらのアプローチをうまく比較することができませんでした。私はまだゲームに多くの要件はありませんが、私が知っているのはここです。 iPhoneで動作する必要があります お金があまりありません(Unity for iPhoneの400ドルは多すぎるでしょう。Coronaには99ドルの余裕があります。) グラフィックは2Dになります 物理学サポートは必要ありません 粒子を使用する能力は素晴らしいでしょう Game Centerのサポートはうれしい(Coronaはすぐにサポートする予定です) それほど手間がかからないのであれば、Androidもサポートできると便利です。 私は自分で調査を行ったので、基本的なことを知っています。CoronaがLuaを使用し、Cocos2DがObjective Cを使用していることを知っています。CoronaがiPhoneおよびAndroidへの展開を許可していることを知っていますが、どれほど簡単ですか? Cocos2Dは無料ですが、多くの人がCoronaの使いやすさについて話していますが、Coronaがサポートする機能や値札に制限されるのは好きではありません。ここでとても引き裂かれました。

2
振り子を振る方法を教えてください。
おもりをつけて、振り子のように前後に揺れるロープをシミュレートしたい。実際の物理学は過剰です。同じ動きを延々と繰り返すだけです。 jQueryは、私が探しているものに似た「スイング」の容易さを備えています。それはどのように機能しますか? である角度から別の角度に回転することを考えてMath.easeOutExpoいましたが、実際の振り子は別の方法で緩和されます...

1
gluLookAtはどのように機能しますか?
私の理解から、 gluLookAt( eye_x, eye_y, eye_z, center_x, center_y, center_z, up_x, up_y, up_z ); 以下と同等です。 glRotatef(B, 0.0, 0.0, 1.0); glRotatef(A, wx, wy, wz); glTranslatef(-eye_x, -eye_y, -eye_z); しかし、ModelViewマトリックスを出力すると、への呼び出しがglTranslatef()正しく機能していないようです。コードスニペットは次のとおりです。 #include <stdlib.h> #include <stdio.h> #include <GL/glut.h> #include <iomanip> #include <iostream> #include <string> using namespace std; static const int Rx = 0; static const int Ry …

1
glBlendFuncによるCocos2Dのブレンドモード
私たちは、PhotoshopとQuartz 2Dで利用できる最も一般的な描画モードを再現しようと試みてきましたが、3つしか考え出せませんでした。 興味のある人のために、ここにあります: 乗算 = GL_DST_COLOR、GL_ONE_MINUS_SRC_ALPHA 画面 = GL_MINUS_DST_COLOR、GL_ONE 線形覆い焼き= GL_ONE、GL_ONE これらのモードやその他のモードをオンラインで試すことができます。この非常に便利なWebサイトhttp://www.andersriggelsen.dk/glblendfunc.php 私たちのOpen GLエクスペリエンスは本当に非常に制限されているため、Cocos2D内で再作成できる追加のブレンドモードを提供していただければ幸いです。 前もって感謝します! アルギリス

1
基本的なBox2D衝突検出
Cocos2D / Box2Dで衝突をリッスンする方法がわかりません。2つのダイナミックサークルボディがあるとします。1つは非常に小さく、もう1つは比較的大きいです。小さな円が大きな円と衝突するとき、私は何かをしたいです(たとえば、音を出します)。これを行う最良の方法は何ですか? 現在、TestPointメソッドを使用して実験しています。何かのようなもの: if(largeCircleBody->GetFixtureList()->TestPoint(smallCirclePoint)){ // collision happened... // play sound etc }


2
無限のスクロール背景を作成する方法は?
ゲームにスクロールする背景を追加する必要があります。画像は512x512pxです。それは双方向の交通のある自動車ゲームのためのものであり、私は反対側に渡って交通に対しても運転できるようになりたいと思っています。ゲームはポートレートモードで、cocos2dを使用しています。 これを可能な限り最善の方法で作成するにはどうすればよいですか?

1
AnchorPointが「CCLayer」の配置に影響しないのはなぜですか?
AnchorPointを変更すると、CCLayerとCCNodeの動作に違いがあると思います。 私が言っていることを説明し、誰かに説明してください。 シナリオ: まずCCNode CCNode *node = ...; node.setContentSize(ccp(W,H)); // 1. node.setAnchorPoint(ccp(0,0)); node.setPosition(ccp(X,Y); // This line will move the node in a way that its (0,0)-point will be placed at (X,Y). // 2. node.setAnchorPoint(ccp(1,1)); node.setPosition(ccp(X,Y); // This line will move the node in a way that its (0,0)-point will be …

2
文字列はどこに保存しますか?それらをロードする効率的な方法は何ですか?
iPhone用のトップダウンRPGを作っています。私はタイルマップ(CCTMXTileMap)とcocos2d-iphoneエンジンを使用しています。 画面へのマップとNPCのロードを処理できるクラス、入力を処理するクラス、およびダイアログを表示することになっているクラスを作成しました。ダイアログクラスは単一の文字列または配列を取り、それを画面上にきちんとしたダイアログボックス内に表示し、ユーザーが画面をタップするまで、次のメッセージに循環するとき、または最後の/唯一のメッセージである場合は、コントロールを非表示にします。ダイアログを非表示にします。 私のNPCは現在Core Dataに保存されています。それらの文字列は、クエストの進行状況に基づいて更新する必要があります。また、標識やその他のメッセージなど、ダイアログの他のビットもあります。 では、ゲームのテキストコンテンツはどこに配置すればよいですか?次の3つの理由から、Core Dataは適切な場所ではないと思います。 文字列がCore Dataに保存されている場合、おそらくそれらを翻訳するのは難しいでしょう。 文字列がCore Dataにある場合、NPC(Core DataのNPCに接続される)の文字列のみが残ります。それはどこにすべてを残しますか? 文字列をCore Dataに残しておくと、読み込み操作が少し重くなりますよね? このすべての背景情報を踏まえて、ゲームのどこに文字列とダイアログを配置すればよいですか? tl; dr ゲームのさまざまな部分で簡単にアクセス、翻訳、参照できるように、iOSゲームの文字列を保存する効率的な方法は何ですか?

1
Game Centerで悪化する可能性のあるスコア(Elo評価など)をどのように扱いますか?
現在、Game Centerリーダーボードのスコアは一方向にしか変更できません(例:増加)。このため、Eloの評価などを処理することは不可能です(私は思います)。リーダーボードでこれをどのように回避していますか? 私はすでにFWIWでバグレポート/機能リクエストを提出しました。 サードパーティのリーダーボードサービスを使用していますか?あなた自身を転がしますか?

2
タップとドラッグを区別する方法
アプリを作成していて、画面上でスプライト(2つ目のスプライトを上にして)をドラッグできるようにアプリを作成しようとしていますが、スプライトをタップするだけで他のメソッドが呼び出されます。 スプライトの端に触れるとドラッグがうまく機能しましたが、スプライトの中央(2番目のスプライトが上にあるところ)からドラッグしようとすると、ドラッグがまったく機能しませんが、タップが呼び出されます。 なぜこれを行わないのか、わかっています。両方のスプリットからのタッチが競合しています。なぜなら、一番上のタッチが下の2番目のタッチに当たる前にタッチを飲み込んでいるからです。 指が動いたときにスプライトをドラッグしたいが、タップのみが与えられたときにタップを登録したい(つまり、指が画面上で動かなかった)場合、これをどのように実装できますか? 私が作業しているスプライトのビジュアル(役立つ場合): 黄色のルーンはその下の石とは別のスプライトです(アニメーションが含まれているため)。 --------Touch for the top sprite---------- -(BOOL) ccTouchBegan:(UITouch*)touch withEvent:(UIEvent *)event{ lastTouchLocation = [RuneScene locationFromTouch:touch]; BOOL isTouchHandled = CGRectContainsPoint([charSprite boundingBox], lastTouchLocation); return isTouchHandled; } -(void) ccTouchEnded:(UITouch*)touch withEvent:(UIEvent *)event{ NSLog(@"Tap received!"); } ------Touch for the bottom sprite-------- -(BOOL) ccTouchBegan:(UITouch*)touch withEvent:(UIEvent *)event{ lastTouchLocation = [RuneScene locationFromTouch:touch]; BOOL isTouchHandled …

2
box2dを使用して鳥が飛ぶようにする方法
私はBox2Dを初めて使用し、重力を10に設定しました。重力が10の場合でも、オブジェクトを空間で飛行させる方法を教えてください。オブジェクトを飛行させるために設定する必要があるプロパティは何ですか?別のアプローチはありますか?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.