赞
踩
CC_ENABLE_CHIPMUNK_INTEGRATION 这个宏要在预编译的时候设置为1,默认已经设置好了,cpSpaceNew 创建一个物理空间,通过cpSpaceAddCollisionHandler设定碰撞的回调函数,同事指定哪两个类型的sprite的可以产生碰撞。
void GameLayer::initPhysics()
{
#if CC_ENABLE_CHIPMUNK_INTEGRATION
//创建一个物理空间
m_pSpace = cpSpaceNew();
//设定空间的加速度,xy方向都是0,没有重力影响
m_pSpace->gravity = cpv(0, 0);
CCEGLView* pEGLView = CCEGLView::sharedOpenGLView();
m_pWalls[0] = cpSegmentShapeNew( m_pSpace->staticBody,
cpv(pEGLView->getVisibleOrigin().x,pEGLView->getVisibleOrigin().y - pEGLView->getVisibleSize().height),
cpv(pEGLView->getVisibleOrigin().x + pEGLView->getVisibleSize().width,
<span style="white-space:pre"> </span>pEGLView->getVisibleOrigin().y - pEGLView->getVisibleSize().height),
2.0f);
// top
m_pWalls[1] = cpSegmentShapeNew( m_pSpace->staticBody,
cpv(pEGLView->getVisibleOrigin().x
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。