box2d刚体添加初始速度,力
来源:互联网 发布:windows查看gif 编辑:程序博客网 时间:2024/05/22 06:46
ApplyForce、ApplyImpulse和SetLinearVelocity。
它们都是b2Body类的公共方法,而且它们都接收一个b2Vec2类型向量参数。关于向量的知识。
1.力,循序渐进——ApplyForce
顾名思义,ApplyForce方法会在刚体上施加一个力。学过物理力学的同学都知道,F=ma,有了力F就有了加速度a,有了加速度,物体就会有速度,就会慢慢动起来。(但是不会立马动起来,因为力不度)。
ApplyForce施加的力可以叠加,如
ballBody->ApplyForce(force1,ballBody->GetWorldCenter());//GetWorldCenter()方法用来获取刚体的重心
ballBody->ApplyForce(force2,ballBody->GetWorldCenter());
这样施加给ballBody的力就为force1与force2的和。
举个简单的例子,小明推一个静止的箱子,箱子不会立马飞出去,而是慢慢的、越来越快的动起来(减速也一样)。
2.速度,叠加——ApplyImpulse
与ApplyForce不同,ApplyImpulse不会产生力,而是直接影响刚体的速度。通过ApplyImpulse方法添加的速度会与刚体原有的速度叠加,产生新的速度。
3.一触即发——SetLinearVelocity
setLinearVelocity与ApplyImpulse一样,直接影响刚体的速度。不一样的是,setLinearVelocity添加的速度会覆盖刚体原有的速度。不过,在SetLinearVelocity方法不会自动唤醒sleeping的刚体,所以在调用该方法之前,记得将刚体body.wakeUp()一下。
b2Vec2 velocity = b2Vec2(x,y);
ballBody->SetLinearVelocity(velocity);//设置刚体的速度
velocity1 = ballBody->GetLinearVelocity();//得到刚体的速度
- box2d刚体添加初始速度,力
- Unity5 刚体添加力
- box2d刚体移动
- Box2D多边形刚体
- Box2D多边形刚体贴图
- box2d 刚体 编辑器
- Box2D创建多边形刚体
- 【box2d-游戏开发】 box2d 创建刚体
- box2d刚体移动的方法
- Box2D中控制一个刚体
- 物理引擎Box2D之刚体
- [Box2D]五.和刚体交互
- Box2D创建圆角刚体
- Box2D如何固定动态刚体
- 《Box2D for Flash Games》翻译 在世界里添加刚体(A)
- 《Box2D for Flash Games》翻译 在世界里添加刚体(B)
- andengine中使用box2D后对entity进行初始速度设定
- 初始速度
- 给出任意两个年,月,日,求出之间的天数
- linux内核常用头文件
- Extjs4.1 环境搭建
- 三个50岁的美国程序员的生活状态(1)
- 三个50岁的美国程序员的生活状态
- box2d刚体添加初始速度,力
- 使用 JMeter 完成常用的压力测试
- Extjs4.10Model模型详解
- Android应用开机自启动失败原因
- uva 10622 - Perfect P-th Powers(数论)
- 将具有关联关系的两个表通过hibernate从数据库中查出来后转成Json对象时报错解决
- C++ 容器的用法
- Extjs4.1MVC详解
- ExtJs4.1布局详解