2011-03-20 84 views
1

我剛開始使用iOS SDK的cocos2d和box2d,並且遇到了一些問題。我得到了模板的工作,並得到了測試應用程序(你點擊屏幕和出現隨機字母的框)來編譯。cocos2d/box2d麻煩

我的第一個問題是,我無法弄清楚如何獲得一個空白模板。當我開始一個新的應用程序時,是否有快速的方法來做到這一點?

我的第二個問題是,我不知道如何只是簡單地改變一個對象的顏色。我可以這樣定義:

b2BodyDef bodyDef; 
bodyDef.type = b2_dynamicBody; 

bodyDef.position.Set(p.x/PTM_RATIO, p.y/PTM_RATIO); 
b2Body *body = world->CreateBody(&bodyDef); 

b2CircleShape circle; 
circle.m_radius = .5f;//These are mid points for our 1m box 

b2FixtureDef fixtureDef; 
fixtureDef.shape = &circle; 
fixtureDef.density = 1.0f; 
fixtureDef.friction = 0.1f; 
fixtureDef.restitution = 0.3f; 
body->CreateFixture(&fixtureDef); 

但是有沒有一種簡單的方法可以使某種顏色成爲某種顏色?

最後的問題:這個示例應用程序是否啓用了加速度計重力?

謝謝!

回答

3

爲了使特定的物體具有特定的顏色,請將「userData」分配給物體。 userData是你想要的特定顏色的精靈

並回復你的最終答案是YES。

2

爲了使空模板做以下

  1. 從刪除這些行 - (ID)初始
 
CCSpriteBatchNode *batch = [CCSpriteBatchNode batchNodeWithFile:@"blocks.png" capacity:150]; 
[self addChild:batch z:0 tag:kTagBatchNode]; 
[self addNewSpriteWithCoords:ccp(screenSize.width/2, screenSize.height/2)]; 

CCLabelTTF *label = [CCLabelTTF labelWithString:@"Tap screen" fontName:@"Marker Felt" fontSize:32]; 
[self addChild:label z:0]; 
[label setColor:ccc3(0,0,255)]; 
label.position = ccp(screenSize.width/2, screenSize.height-50); 
  1. 刪除功能
-(void) addNewSpriteWithCoords:(CGPoint)p
  1. 取下以下行 - (空)ccTouchesEnded:(NSSet中*)觸及withEvent:方法(*的UIEvent)事件
[self addNewSpriteWithCoords: location];

試試吧。 :)