cocos2d-x之物理世界(创建物理世界)

首先在HelloWorld.h中引入包名:#include <Box2D/Box2D.h>

在HelloWorld.h类中添加如下内容:

private:

b2World *world;//创建一个私有的变量,即物理世界

public:

//为了模拟世界的运行,重写update方法,他会没隔一帧执行一次,

//我们的世界也要每隔一帧就重新计算一下世界中的物体所处的位置

virtual void update(float dt);

在bool HelloWorld::init()中

//创建一个世界,b2world(二维矢量类型的,指定世界的加速度的方向

//b2Vec2(加速度的方向,向下的,所以x轴没有为0,y轴为-10))这样才能往下落

world = new b2World(b2Vec2(0, -10));

在HelloWorld.cpp中

//实现模拟物理世界的方法(当前一帧与上一帧的时间差)

void HelloWorld::update(float dt){

//使用这个step方法来一步一步的模拟我们的物理世界

//(时间差(当前一步与最后一步的时间差,即当前一帧与上一帧的时间差),

//速度迭代,模拟物理世界的过程中难免会有误差,所以就用速度迭代的次数来避免误差,官方建议8次,

//位置的迭代,官方建议3次)

world->Step(dt, 8, 3);

}

时间: 2025-01-02 15:50:03

cocos2d-x之物理世界(创建物理世界)的相关文章

cocos2dx自带物理引擎-创建物理世界

首先在createScene()里 auto scene = Scene::createWithPhysics(); 创建带有物理的场景 然后再OnEnter里创建边界框 auto body = PhysicsBody::createEdgeBox( visibleSize, PHYSICSBODY_MATERIAL_DEFAULT, 3); 创建一个节点承载边界 auto edgeShape = Node::create(); 将图形和刚刚创建的世界绑定 edgeShape->setPhysi

使用P2物理引擎制作物理小球

今天分享的内容是:基于Egret使用P2物理引擎实现物理小球示例效果. 了解更多信息,您可以查看P2物理引擎GitHub地址或者是EgretP2物理系统文档. * 第三方库的引入 * 创建一个P2物理项目 一.第三方库的引入 1.首先新建一个项目. 2.在GitHub上下载包括P2物理引擎库的完整第三方库,解压后按照路径找到physics模块. 3.将physics模块放到新建项目根目录的同级目录. 4.修改egretProperties.json,modules数组里增加 {"name&quo

Cocos2d-x3.0游戏实例之《别救我》第二篇——创建物理世界

这篇我要给大家介绍两个知识点: 1. 创建游戏物理世界 2. 没了(小若:我噗) 害怕了?不用担心,这太简单了~! 笨木头花心贡献,啥?花心?不呢,是用心~ 转载请注明,原文地址:http://www.benmutou.com/blog/archives/804 文章来源:笨木头与游戏开发 3.0新亮点,史上最简单的物理引擎 在Cocos2d-x3.0里使用物理引擎,会很有快感,因为很多繁琐的东西它都帮我们封装好了. 那么,我要开始创建游戏的关卡场景了,大家跟紧了. 我们给关卡场景命名为Toll

Quick-cocos2d-x3.3 Study (十三)--------- 创建物理世界的边界 ( 创建一个带物理效果的线条 )

创建物理效果的线条 1 -- 创建物理世界的边界 2 -- 创建物理世界的上边界 3 -- 通过设置两个点来创建一条带物理效果的线条 4 local top = display.newNode() 5 local topBody = cc.PhysicsBody:createEdgeSegment( 6 -- 第一个点的位置 7 cc.p( 100, display.top - 100 ), 8 -- 第二个点的位置 9 cc.p( display.right - 100, display.to

15--Box2D使用(一、创建物理世界)

创建工程Box2DTest,去掉背景和精灵对象等.首先在HelloWorldScene.h头文件定义一个屏幕像素与物理世界长度转换宏,并引入box2D头文件 #define PIXEL_TO_METER 30 #include "Box2D/Box2D.h" 再声明几个函数与变量 void createWorld(); //创建物理世界 void createWall(); //创建四周墙体 void createBall(); //创建刚体   b2World* world;   

Duplicate复制数据库并创建物理StandBy(spfile+不同实例名+不同路径)

过程和Duplicate复制数据库并创建物理StandBy类似,只是不需要重启数据库. 目的:创建standby,不重启源数据库 1设定环境如下: Primary数据库 IP 172.17.22.16 SID orcl Standby数据库 IP 172.17.22.17 SID orcl_standby 设置提示,以区分操作的位置 primary数据库 set SQLPROMPT Primary> standby数据库 set SQLPROMPT StandBy> 1.Primary端设置

SQL Server 2008 R2 附加数据库 “尝试打开或创建物理文件 拒绝访问”的解决办法

其实是来自一篇SQL Server 2005同样错误的帖子,不过试了在SQL Server 2008 R2下面也有效,记录一下. 解决方法: 在所有程序—Microsoft SQL Server 2008 R2—配置工具—SQL Server 配置管理器,点击"SQL Server 服务",右边会显示正在运行的服务,以及对应的用户,右击SQL Server (MSSQLSERVER),选择“属性”,把内置帐户选择为"Local System",点击重新启动就OK了.

使用RMAN DUPLICATE...FROM ACTIVE DATABASE创建物理standby database

Applies to: Oracle Server - Enterprise Edition - Version 11.1.0.6 to 11.2.0.4 [Release 11.1 to 11.2]Information in this document applies to any platform.GoalStep by step guide on how to create a physical standby database using RMAN DUPLICATE FROM ACT

11g使用非duplicate方式创建物理standby要注意的问题总结

在上篇博文中,使用了duplicate方式来创建物理standby http://blog.csdn.net/aaron8219/article/details/38434579 今天来说说在11g中採用非duplicate方式创建备库碰到的一些问题,并做个总结. 在10g中,通常能够使下面几种方法创建备库控制文件 RMAN> backup current controlfile for standby format 'c:\ctl_%U'; RMAN> backup full databas