ccTouches在cocos2dx中移动
ccTouchesMoved in cocos2dx
大家好,我是COCOS2DX框架的新手,正在尝试开发碎砖游戏。我正在关注这个演示Brick breker游戏,这个教程在cocos2d(iPhone)中。我用cocos2dx对它进行了编码,并正确地完成了工作。但是当我执行CCD_ 1方法时。我的代码编译和运行正常,但当我触摸(点击)屏幕时,它会崩溃,并发出错误警告。我的代码是
void HelloWorld::ccTouchesMoved(CCSet* touches, CCEvent* event)
{
if (_mouseJoint == NULL) return;
CCTouch *myTouch = (CCTouch*)touches->anyObject();
CCPoint location = myTouch->locationInView();
location = CCDirector::sharedDirector()->convertToGL(location);
b2Vec2 locationWorld = b2Vec2(location.x/PTM_RATIO, location.y/PTM_RATIO);
_mouseJoint->SetTarget(locationWorld);
}
我该如何解决这个问题。请引导我。
void ClassName::ccTouchesBegan(NSSet *touches, UIEvent* event )
{
if (_mouseJoint != NULL) return;
...
}
可能是您没有将_mouseJoint初始化为NULL。
在类的构造函数中,initialize_mouseJoint=NULL;
在您提供的演示中,以下代码初始化了mouseJoint
if (_paddleFixture->TestPoint(locationWorld)) {
b2MouseJointDef md;
md.bodyA = _groundBody;
md.bodyB = _paddleBody;
md.target = locationWorld;
md.collideConnected = true;
md.maxForce = 1000.0f * _paddleBody->GetMass();
_mouseJoint = (b2MouseJoint *)_world->CreateJoint(&md);
_paddleBody->SetAwake(true);
}
它在ccTouchesBegan 中
相关文章:
- 将对象移动到std::shared_ptr
- 何时在引用或唯一指针上使用移动语义
- 如何从具有移动语义的类对象中生成共享指针
- 将shared_ptr移动到<StructA>shared_ptr<变体<结构A、结构 B>>
- C / C++ 移位/偏移/向左或向右移动位图?
- MSVC将仅移动结构参数解释为指针
- 自定义先决条件对移动分配运算符有效吗
- 返回值优化:显式移动还是隐式
- 当有分配器意识的容器被复制/移动时,反弹分配器是否被复制/移走
- 为什么复制而不是移动数据元素?
- 可以使用移动语义更改或改进此C++代码吗?
- 使lambda不可复制/不可移动
- c++在使用指针时移动语义
- 将QGraphicsItem的移动区域限制在多边形区域内
- SendInput()鼠标移动计算
- 按值 C++ 返回时进行双倍移动
- 移动二维数组中的字符
- ccTouches在cocos2dx中移动
- 在 Cocos2DX 中移动动画精灵和路径
- Cocos2dx:如何停止CCFollow移动视差节点并使背景变黑