本文整理汇总了C++中BallSprite::setB2Body方法的典型用法代码示例。如果您正苦于以下问题:C++ BallSprite::setB2Body方法的具体用法?C++ BallSprite::setB2Body怎么用?C++ BallSprite::setB2Body使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类BallSprite
的用法示例。
在下文中一共展示了BallSprite::setB2Body方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: getBallRadius
BallSprite *BallSprite::createBallSprite(Node *parent ,b2World *world, const std::string& filename)
{
BallSprite* pInstance = BallSprite::create();
//Texture2D *texture = Director::getInstance()->getTextureCache()->addImage(filename);
pInstance->setTexture(filename);
// shape.m_radius = sptite->getContentSize().width / PTM_RATIO; // 形状の大きさ
/**
*
剛体は次の手順で作成する。剛体とは物理エンジンの影響をうけることが出来る物質のこと
1. 位置・減衰率などで剛体を定義する。
2. 剛体を作成するためにワールドを使用する。
3. 図形・摩擦・密度などから装備を定義する。
4. 剛体から装備を作成する。
*/
b2Body* body; // 剛体。rigid body。
b2BodyDef bodyDef; // 剛体の定義
b2CircleShape shape; // 装備の形状
float radius = getBallRadius();
shape.m_radius = radius/ PTM_RATIO;;
b2FixtureDef fixtureDef; // 装備の形状定義
// 1. 位置・減衰率などで剛体を定義する。
bodyDef.type = b2_dynamicBody;
//bodyDef.position.Set((winSize.width / 2) / PTM_RATIO, (winSize.height) / PTM_RATIO);
bodyDef.userData = pInstance; // 画像をこの剛体に紐付ける
// 2. 剛体を作成するためにワールドを使用する。
body = world->CreateBody(&bodyDef);
fixtureDef.shape = &shape; // 形状を紐付ける
fixtureDef.density = 1; // 密度
fixtureDef.friction = 0.9; // 摩擦
// 4. 剛体から装備を作成する。
body->CreateFixture(&fixtureDef);
/** PhysicsSpriteに各種情報をセットする */
//parent->addChild(pInstance);
pInstance->setB2Body(body);
pInstance->setPTMRatio(PTM_RATIO);
parent->addChild(pInstance);
return pInstance;
}