位置: 编程技术 - 正文

Cocos2dx3.2 CrazyTetris 物理引擎使用初步

编辑:rootadmin

推荐整理分享Cocos2dx3.2 CrazyTetris 物理引擎使用初步,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

之前说过引擎中重要的内容如Sprite,游戏中的主人公及其他内容都可以用它来表现,但如果想要和现实世界更加相近,就需要应用物理学知识模拟物理世界。物理引擎就是将复杂的物理特性封装起来供开发者使用的一种工具。

完整的物理引擎非常复杂,但是本游戏中不需要那么多复杂的特性,因此我也就简单的了解了刚体加速碰撞的部分罢了。

本章就对cocos2dx3.2中的物理引擎的使用进行简单的介绍。

Cocos2dx引擎中采用了Box2D以及Chipmunk两个引擎,游戏中我使用的是Box2D物理引擎。

首先抛开物理引擎的各种复杂功能不管,就说本游戏中,就是要让下落的方块拥有重力、速度、碰撞等基本的物理属性。那实际上只需要两个概念,物理世界和刚体。

整体思想就是设置好物理世界,然后在这个世界中加入刚体方块,就可以实现简单的物理效果。

这里需要开始实现新的场景,也是主要的游戏场景——主游戏界面(GameView)。

如何创建场景也不在赘述,此时需要在创建该场景时,添加物理世界:

Cocos2dx3.2 CrazyTetris 物理引擎使用初步

过程很简单,直接加在createScene方法中。

其中getPhysicsWorld方法就可以获得结点的物理世界。setGravity是重力设置(Vect和Vec2是一个,意思都是一个二维向量,形式上就和一个点Point一样)。

开启测试可以看到物理效果。因为物理世界和刚体添加进去都是完全看不见的,只能在实际游戏时感受到物理效果,而开启测试后,会根据对应的设置用红框显示相应的物理边界。这里的DEBUGDRAW_ALL就是显示所有的物理边界。该游戏中主要就是物理世界的边界和刚体的边界。

设置物理边界很好理解,就相当于地面一样,是一个刚体。本游戏中设置了一个封闭的矩形,边界宽度为3,默认材质。可以根据游戏的实际情况制作各种不一样的物理边界。

最后将物理边界添加进去即可。这里PhysicsBody并非继承自Node结点,他继承自Ref。根据之前博文中的渲染树思想,需要把它加入到结点中,然后将该结点添加到场景结点中。当然,直接用场景结点设置应该也是可以的。

另外,在游戏中添加刚体,上面的代码中也有演示。就是先创建:

然后再设置:

this->setPhysicsBody(body);

这里,如果是一个Sprite,this就是这个Sprite的指针,再把这个Sprite添加到场景中即可实现效果。

如此,就算是初步使用了物理引擎。

Cocos2dx3.2 Crazy Tetris 制作简单的凸多边形刚体 现在我们要考虑的,就是如何为游戏中的方块添加刚体。对于俄罗斯方块,我们可以知道,有以下几种方块:这种我称之为块(block)型这种我称之为直

[置顶] Android用SurfaceView写一个简单有趣的游戏--《数字组合》之一 最近突然有了一个想法--做一款android的简单游戏练练手,既要实现起来简单(毕竟只有一个人,框架什么的暂且就不用考虑了),又要能够达到对android

Cocos2d-x +Android + Windows 7 折腾了一天,看了好些人写的配置,但是乎没有一个能解决所有问题。这里记录下我的安装配置过程、遇到的问题以及解决方法。1.安装JavaJDK和EclipseIDE

标签: Cocos2dx3.2 CrazyTetris 物理引擎使用初步

本文链接地址:https://www.jiuchutong.com/biancheng/371279.html 转载请保留说明!

上一篇:Cocos2dx3.2 Crazy Tetris 基本设置及主菜单页面(菜单、按钮)

下一篇:Cocos2dx3.2 Crazy Tetris 制作简单的凸多边形刚体

  • 税收的本质是什么意思?
  • 租入住房用于职工福利,进项转出吗?
  • 关联方债务豁免需要缴纳所得税吗
  • 银行承兑汇票到期日期怎么算
  • 退休人员工资可以提福利费吗
  • 佣金的支付方式主要有什么
  • 融资购买无形资产例题
  • 以旧换新的金子划算吗
  • 固定资产台账登记表明细科目写什么
  • 员工销售家具取得的工资怎么写分录?
  • 发票复印件能报账吗
  • 退休人员再任职个人所得税
  • 企业对外投资需要哪些审批
  • 进项税额转出后再转入怎么做账
  • 受伤员工补贴
  • 增值税发票系统升级版
  • 进项税转出如何申报纳税
  • 面对通过网络涌入的大量信息,我们应该学会
  • 小规模本月应交增值税次月交可以不计提吗
  • 在windows 7中
  • 打开进程失败
  • Win10 1809 17763.2268 更新发布:附更新修复内容汇总
  • win10右键个性化显示该文件
  • bc2.exe
  • php生成二维码
  • phpmailer 使用
  • php利用数组完成党员信息表
  • 计提坏账的比例是多少
  • python制作chm
  • vue全家桶学多久能上手项目
  • php 方法
  • php如何实现
  • 长期待摊费用装修款如何摊销
  • 本期应纳税额减征额是什么意思
  • 其他收益所得税汇算清缴时需要调增吗
  • 帝国cms专题
  • 香港公司代收国际汇款税务怎么处理
  • mongodb基础命令
  • sql server数据库正在恢复
  • 图文详解汽车坐垫安装方法
  • 资产类账户有哪些
  • 固定资产投资额怎么计算
  • 进口产品销售需要交税吗
  • 不动产经营租赁发票开具注意
  • 房租能不能一次性付清
  • 安全基金提取会计分录
  • 股权转让需要哪些手续及流程
  • 委托加工以受托方核定的数量为计税依据
  • 资本公积的意思是
  • 进项税红字发票怎么样申报
  • 免费样品的好处
  • 非公益捐赠如何入账
  • 企业投资分红帐务处理?
  • 记帐凭证会计处理程序及其应用
  • 工业企业会计和商业企业会计的区别
  • 商业资本金
  • sql数据库建立步骤
  • 利用的英文
  • sql语句的调优
  • mac怎么创建apple id
  • centos6创建文件
  • xp 桌面图标
  • scheduler.exe - scheduler是什么进程 有何作用
  • win10一年更新几次
  • win7安装office2016报错
  • 在linux操作系统中
  • andriod 控件
  • linux shell怎么用
  • cocos2dx减少内存开销
  • 批处理执行bat文件
  • Node.js生成HttpStatusCode辅助类发布到npm
  • node.js使用mysql
  • 一个页面
  • javascript中的条件控制语句有哪些?
  • 使用GeoPainter一步一步布置场景
  • python模板引擎开发
  • 传智播客在线课程
  • [置顶]游戏名:chivalry2
  • Android的AdapterView及其子类简介-android学习之旅(二十三)
  • 税务局与地税局一样吗?
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设