Cocos2d-x3.3 Physics物理引擎模块解决了刚体穿透问题
来源:互联网 发布:考古学禁区 知乎 编辑:程序博客网 时间:2024/04/29 16:53
之前在写一个个人小项目的时候有问到过大海老师这个physics物理引擎的刚体穿透问题,然后大海老师就给我推荐了他自己写的这篇文博,很好很强大。
下面是大海老师的博客:
看代码:
void PhysicsFixedUpdate::onEnter()
{
PhysicsDemo::onEnter();
_scene->getPhysicsWorld()->setDebugDrawMask(PhysicsWorld::DEBUGDRAW_ALL);
_scene->getPhysicsWorld()->setGravity(Point::ZERO);
// wall
auto wall = Node::create();
wall->setPhysicsBody(PhysicsBody::createEdgeBox(VisibleRect::getVisibleRect().size, PhysicsMaterial(0.1f, 1,0.0f)));
wall->setPosition(VisibleRect::center());
this->addChild(wall);
addBall();
scheduleOnce(schedule_selector(PhysicsFixedUpdate::updateStart), 2);
}
void PhysicsFixedUpdate::addBall()
{
auto ball = Sprite::create("Images/ball.png");
ball->setPosition(100, 100);
ball->setPhysicsBody(PhysicsBody::createCircle(ball->getContentSize().width/2, PhysicsMaterial(0.1f, 1,0.0f)));
ball->getPhysicsBody()->setTag(DRAG_BODYS_TAG);
ball->getPhysicsBody()->setVelocity(Point(1000, 20));
this->addChild(ball);
}
void PhysicsFixedUpdate::updateStart(float delta)
{
addBall();
//重点在这里
_scene->getPhysicsWorld()->setAutoStep(false);
scheduleUpdate();
}
void PhysicsFixedUpdate::update(float delta)
{
// use fixed time and calculate 3 times per frame makes physics simulate more precisely.
//这里表示先走3步瞧瞧 如果fps是1/60 三个setp就是1/180
for (int i = 0; i < 3; ++i)
{
_scene->getPhysicsWorld()->step(1/180.0f);
}
}
- Cocos2d-x3.3 Physics物理引擎模块解决了刚体穿透问题
- Cocos2d-x3.3 Physics物理引擎模块解决了刚体穿透问题------沈大海
- Cocos2d-x3.3 Physics物理引擎模块解决了刚体穿透问题
- Cocos2d-x3.3 Physics物理引擎模块解决了刚体穿透问题
- Cocos2d-x3.3 Physics物理引擎模块解决了刚体穿透问题
- Cocos2d-x3.3 Physics物理引擎模块解决了刚体穿透问题
- cocos2d-x3.0 Physics封装物理引擎
- cocos2d-x3.0开发笔记 物理引擎封装Physics深入学习
- cocos2dx 物理引擎 刚体重叠问题
- Physics物理引擎下载
- Coco2d Physics 物理引擎
- 学习 "使用cocos2d-x3.0和物理引擎实现碰撞检测" 中出现的一个问题
- cocos2d刚体会被穿透
- 在cocos2d-x3.0里面如何使用物理引擎:弹球
- 使用cocos2d-x3.0和物理引擎实现碰撞检测
- 使用cocos2d-x3.0和物理引擎制作滚动背景
- 【cocos2d-x3.2 自带物理引擎 lua】第一天
- 在Cocos2d-x3.0里面如何使用物理引擎:弹球
- 多线程并发编程之原子变量与非阻塞同步机制
- menuItem类
- Feekood开发环境介绍(4)-- 脚本编辑器
- cocos2d-x3.2场景切换
- java MD5加密
- Cocos2d-x3.3 Physics物理引擎模块解决了刚体穿透问题
- CocoStudio1.6UI编辑器动画播放
- Codeforces Round #294 (Div. 2) C
- 【Cocos2d-x】音量滑动设定以及自动保存功能实现(完整模块)
- Redis分布式集群
- Android应用的基本组件介绍
- Cocos2d-x3.2游戏的核心循环在Application,如何处理FPS不稳
- android 5.0源码下载
- 大型网站技术架构:核心原理与案例分析-李智慧