Libgdx Box2D现实---这缓释微丸(两:Box2D介绍)
2015-07-03 19:12
387 查看
Box2D官方网站 : http://box2d.org/
Box2D v2.1.0用户手冊翻译 : http://blog.csdn.net/complex_ok/article/category/871440
Libgdx使用jni封装了box2d的c++版本号,使得其执行效率比其它同级的物理引擎如jbox2d快不少。
A body definition holds all the data needed to construct a rigid body. You can safely re-use body definitions. Shapes are added to a body after construction.
定义Body所须要的全部数据都由它负责,我们能够反复使用。
Shape与Body的绑定必须在它之后完毕。
这个我理解为能够通过它来定义物体模型的类型等数据,它放入Body中。
常见使用方法是来定义类型:
如
Body
A rigid body. These are created via World.CreateBody.
这是一个非常坚硬的物体,不要妄想去改变它的形状。我们仅仅能通过World.CreateBody方法来创建它。
使用方法例如以下(ballModels是body):
Box2DDebugRenderer
用于測试Box2D的图形显示。会把图形的形状通过不同颜色绘制出来。
ChainShape、CircleShape 、EdgeShape 、PolygonShape
他们都继承于Shap,是最主要的图形
Fixture
将形状绑定到物体之上, 并有一定的材质属性, 比方密度(density)等。必须由Body.createFixture生成。
FixtureDef
Fixture的属性申明。可反复使用。
World
The world class manages all physics entities, dynamic simulation, and asynchronous queries. The world also contains efficient memory management facilities.
管理全部物理实体,动态模拟,异步查询。
还包括高效的内存管理机制。
物理世界,管理全部body,
如:
因为物理世界和render中时间不一致,我们一般要进行转换,就是在render方法中加一句:
world.step(1 / 60f, 10, 10);
同一时候,物理世界參考点在屏幕中心。而stage是(0,0),希望大家可以注意。
物理世界的长度不是依照像素计算的。要注意单位换算。一般换算比是 1:60,。物理世界是1.
Box2D官方网站 : http://box2d.org/
Box2D v2.1.0用户手冊翻译 : http://blog.csdn.net/complex_ok/article/category/871440
Libgdx使用jni封装了box2d的c++版本号,使得其执行效率比其它同级的物理引擎如jbox2d快不少。
一、基础类
BodyDefA body definition holds all the data needed to construct a rigid body. You can safely re-use body definitions. Shapes are added to a body after construction.
定义Body所须要的全部数据都由它负责,我们能够反复使用。
Shape与Body的绑定必须在它之后完毕。
这个我理解为能够通过它来定义物体模型的类型等数据,它放入Body中。
常见使用方法是来定义类型:
如
BodyDef ballBodyDef = new BodyDef(); //构建对象 ballBodyDef.type = BodyType.DynamicBody;//定义类型,DynamicBody是不受控制的动态物体,KinematicBody是受控制的动态物体,StaticBody是静态物体
Body
A rigid body. These are created via World.CreateBody.
这是一个非常坚硬的物体,不要妄想去改变它的形状。我们仅仅能通过World.CreateBody方法来创建它。
使用方法例如以下(ballModels是body):
ballModels = world.createBody(ballBodyDef);
ballModels.createFixture(fd);
Box2DDebugRenderer
用于測试Box2D的图形显示。会把图形的形状通过不同颜色绘制出来。
ChainShape、CircleShape 、EdgeShape 、PolygonShape
他们都继承于Shap,是最主要的图形
Fixture
将形状绑定到物体之上, 并有一定的材质属性, 比方密度(density)等。必须由Body.createFixture生成。
FixtureDef
Fixture的属性申明。可反复使用。
FixtureDef fd = new FixtureDef(); fd.density = 1;//密度 fd.friction = 0f;//摩擦力 fd.restitution = 0.5f;//弹力0-1,1为全然弹性碰撞 fd.shape = shape;
World
The world class manages all physics entities, dynamic simulation, and asynchronous queries. The world also contains efficient memory management facilities.
管理全部物理实体,动态模拟,异步查询。
还包括高效的内存管理机制。
物理世界,管理全部body,
如:
<span style="color:#33cc00;">world = new World(new Vector2(0, -10f), false);//代表向下重力加速度为10的物理世界</span>
<span style="color:#33cc00;"></span>
因为物理世界和render中时间不一致,我们一般要进行转换,就是在render方法中加一句:
world.step(1 / 60f, 10, 10);
同一时候,物理世界參考点在屏幕中心。而stage是(0,0),希望大家可以注意。
物理世界的长度不是依照像素计算的。要注意单位换算。一般换算比是 1:60,。物理世界是1.
相关文章推荐
- NYOJ 44 子串和
- J2EE学习参考链接收藏
- 两个有序数组中找中位数或者第K大的元素
- 集成支付宝的错误
- 自定义带进度条的WebView , 增加获取web标题和url 回掉
- inner join和outer join
- 服务器阵列的IOPS测试
- 8.17
- mtd-utils命令简介
- 使用git curl服务测试-----Restful服务
- Android异步加载图片与文字(一)
- C#页面添加提交数据后跳出小弹窗的功能
- CentOS 6.5 安装 MySQL5.6 并用Navicat for MySQL 连接
- [.net 面向对象程序设计进阶] (5) Lamda表达式(一) 创建委托
- 7.12
- write a tf listener
- Linux杀死进程的方法
- NYOJ 860 又见01背包
- 开通博客了,记录下。。。
- Python的os.walk()方法详细讲解