位置: 编程技术 - 正文

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 制作简单的凸多边形刚体

  • 收入纳税数据是什么意思
  • 计提递延所得税资产
  • 在建工程转固定资产需要交税吗
  • 印花税按照开票金额缴纳可以吗
  • 个体工商户生产经营所得税税率表2021
  • 暂估库存商品比发票少1分怎么记账
  • 营改增企业所得税
  • 房地产企业营改增前都交那些税
  • 取得保险赔偿的会计分录
  • 给分公司开发票由总公司付款怎么办?
  • 房租发票按季度开具,可以一次性计费用吗
  • 有发票的福利费可以不交个税吗
  • 电子发票打印出来没有税务局的章
  • 普通征税差额征税减按征税
  • 促销服务费经营范围怎么写
  • 税收分类编码选错了会罚款么
  • 异地工程需要预交税吗
  • 企业的对公支出是什么
  • 销售费用广告费存在哪些问题
  • 社保申报怎么查询
  • 小规模纳税人取得专票如何处理
  • prevsrv.exe - prevsrv是什么进程 有什么用
  • mac如何修改图片像素大小
  • 民非组织可以接受捐赠吗
  • 进项大于销项会计分录
  • 选择简易征收
  • 上月暂估成本高了这个月怎么做账
  • Linux Mount NTFS分区造成的权限问题如何解决?
  • Win10 Build 19044.1319(21H1)预览版发布:修复 Bug提高安全性
  • 期间损益的科目
  • macOS 11 Big Sur 开发者预览版Beta 9正式推送
  • 房产契税如何计算2021年
  • PHP:pg_result_seek()的用法_PostgreSQL函数
  • 没结婚生了小孩分手了怎么办?
  • 项目提成比例
  • 在企业扶贫捐赠活动上的讲话
  • 前端常问的面试题
  • 公牛牛角
  • 办公用品属于会计科目中的什么
  • php数据的提交与采集实验报告
  • vue2和vue3的兼容
  • php获取远程图片文件流
  • 购买土地需要缴纳增值税吗
  • 哪一款macbook
  • 帝国cms怎么用
  • 债权转让收益需缴税吗
  • 待处理财产损溢在资产负债表中填哪里
  • 劳务费走应付职工薪酬
  • 负数发票开票条件?
  • 好用的测试工具
  • mysql数据库如何升级
  • 律师事务所收到专票能抵扣吗合法吗
  • 本月增值税申报截止日
  • 出口转内销怎么做
  • 开票系统维护费怎么做账
  • 本月没有销售怎么做账
  • 政府会计准则具体准则的作用
  • 改制后的企业
  • SQL中实现SPLIT函数几种方法总结(必看篇)
  • windows xp 注册表故障恢复
  • popblock.exe
  • 影响电脑速度的因素
  • 雨林木风软件网
  • isignup.exe是什么进程 isignup进程查询
  • android 4.2
  • python加密模块
  • Node.js中的construct构造函数
  • Node.js中的全局对象有
  • 基于jQuery实现Tabs选项卡自定义插件
  • python lxml解析xml
  • 性能优化是什么
  • python datetime.now
  • 手机 日常应用 单核 多核
  • socket客户端发送数据
  • prototype模型
  • javascript构造函数创建对象
  • jquery ajax局部加载方法详解(实现代码)
  • 房地产企业税种认定标准
  • 成都税务局网站首页
  • 杭州国税电话
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设