大佬教程收集整理的这篇文章主要介绍了cocos2dx update跳跃函数,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
在update函数中写跳跃函数使主角没帧跳跃一小段位移 可以让跳跃动作看起来更加的自然 加入重力加速度等变量 运动更合理
首先在主角的初始化代码中进行初始起跳速度和重力加速的初始化(Ps.重力加速度和初始速度不能用现实世界中的标准进行初始化)
//这段代码中设置了主角的起跳速度@H_971_7@m_speedY下落速度m_speedfall 重力加速度@H_971_7@m_speedGrivaty 并且调用了update函数this->scheduleupdate();
bool Hero::init()
@H_942_0@m_speedGrivaty=-500.0f; @H_942_0@m_speedY=250.0f; @H_942_0@m_isJumping=false;return true;
}
//这段代码位于update函数中 功能是主角的相关位移 运用了运动公式 对位移和速度变化的计算 然后不断重置主角的位置
if(myHero->m_isJumping==truE)
auto changeY=myHero->m_speedY*data+(1/2)*myHero->m_speedGrivaty*data*data;
myHero->m_speedY=myHero->m_speedY+myHero->m_speedGrivaty*data;
myHero->m_sprite->setPositionY(myHero->m_sprite->getPositionY()+changeY);
}
//这段代码也位于update函数中 主要用于跳跃结束后 重置主角数据并将跳跃状态设置为false
if(isCollideWithHeroX()==true&&myHero->m_isJumping==true&&myHero->m_speedY<0.0f)
myHero->m_isJumping=false;
myHero->m_sprite->stopAllActions();
myHero->m_sprite->runAction(Hero::createAnimate());
myHero->m_speedY=250.0f;
return;
}
以上是大佬教程为你收集整理的cocos2dx update跳跃函数全部内容,希望文章能够帮你解决cocos2dx update跳跃函数所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。