对于基本的捕鱼游戏设计思路(六)——碰撞检测
差不多写完今天这个博客,这个捕鱼游戏就完成了吧,也不能说做得很好,因为我博客里写的也很简单,完全根据博客来的话只能写出一个简单的游戏轮廓,话不多说,直接进入主题吧,也就是今天讲的炮弹和鱼的碰撞。
可以说是很关键的部分,对这个游戏分析吧,首先炮弹有它的类型,比如1号炮,2号炮......鱼也有它的类型,比如小黄鱼,乌龟,鲸鱼......
然后再分析,当鱼和炮弹碰撞上的时候,鱼会生成一个死亡动画然后消失,炮弹会生成渔网,然后消失,当然渔网和鱼的死亡动画也会消失。
在这里要判断鱼是否和炮弹碰撞到就要用到一个api,那就是getBoundingBox()
void GameScene::update(float dt){for (int i = 0; i < fishVec.size(); i++){for (int j = 0; j < bulletVec.size(); j++){if (fishVec.at(i)->getBoundingBox().intersectsRect(bulletVec.at(j)->getBoundingBox())){makeyuwang(type, bulletVec.at(j)->getPositionX(), bulletVec.at(j)->getPositionY());remove2(bulletVec.at(j));return;}}}
这个用法就是精灵->getBoundingBox().intersectsRect(精灵2->getBoundingBox())。
getBoundingBox()就是获取矩形框,然后intersectsRect就是用于判断两个矩形框是否发生碰撞。
这就是具体的用法。。
对于基本的捕鱼游戏设计思路(六)——碰撞检测相关推荐
- 对于基本的捕鱼游戏设计思路(五)——鱼
今天讲捕鱼游戏里鱼的部分,也是比较关键的一部分. 一步一步来,先分析游戏,首先鱼是从屏幕外生成,然后它有个移动的动作,而且分为不同的类型. 然后就可以进入代码部分,首先设置一个计时器,控制时间生成鱼, ...
- 对于基本的捕鱼游戏设计思路(四)——序列帧动画
今天,我带领大家学习一下Cocos2d-x 2.0的序列帧动画.在Cocos2d-x中,提供了相应的一些类和方法,可以方便的生成序列帧动画,这样我们就可以制做各种人物动作以及动画效果.这就是鱼在水里游 ...
- 2048小游戏设计思路
2048小游戏设计思路: 游戏初始截图: 游戏过程中截图: 游戏失败截图: 部分代码: <!DOCTYPE html><html> <head><meta h ...
- iOS简易蓝牙对战五子棋游戏设计思路之一——核心蓝牙通讯类的设计
iOS简易蓝牙对战五子棋游戏设计思路之一--核心蓝牙通讯类的设计 一.引言 本系列博客将系统的介绍一款蓝牙对战五子棋的开发思路与过程,其中的核心部分有两个,一部分是蓝牙通讯中对战双方信息交互框架的设计 ...
- iOS简易蓝牙对战五子棋游戏设计思路之二——核心棋盘逻辑与胜负判定算法
2019独角兽企业重金招聘Python工程师标准>>> iOS简易蓝牙对战五子棋游戏设计思路之二--核心棋盘逻辑与胜负判定算法 一.引言 上一篇博客我们介绍了在开发一款蓝牙对战五子棋 ...
- 常见游戏设计思路及手法
常见游戏设计思路及手法 从设计的角度来看,任何体验都是已经被"计划"好的.但是游戏的结果,可能是一个概率事件,而这种概率事件也是体验的一部分. 游戏的类型 游戏有很多的类型,比如& ...
- 3D游戏设计第六次作业——打飞碟物理模式
3D游戏设计第六次作业--打飞碟物理模式 1 概述 在上一次的作业实现的基础上增加了物理模式,通过给飞碟增加刚体组件,实现飞碟拥有物理特性,会发生碰撞,也会收到重力影响. 2 代码讲解 2.1 与上一 ...
- 2D手机Dota游戏设计思路
2D手机Dota游戏设计思路 游戏类型:2D,移动平台,塔防策略,单机 面向平台:android,ios 游戏的可玩性:尽量能把PC Dota游戏的长处转移过来.推塔,出装备,使用技能的爽快感. 画面 ...
- 浅谈H5捕鱼游戏设计
很少写文章,记录一下,开发捕鱼游戏的设计和开发流程: 游戏架构设计:平台php+前端用的是laybox(ts)+服务端erlang+数据库PostgreSQL(少量数据存游戏服mnesia) H5游戏 ...
- 【测试】用例设计思路-六方面
有这样一个面试题:在一个Web测试页面上,有一个输入框,一个计数器(count)按钮,用于计算一个文本字符串中字母a出现的个数. 请设计一系列测试用例用以测试这个Web页面. 有经验的测试人员可能会问 ...
最新文章
- js的eval函数解析后台返回的json数据时为什加上圆括号eval((+data+)),而HTML页面定义的数据不用...
- minicom指令_【教程】minicom使用教程
- Dell 原有PowerEdge 服务器型号获得通过 Red Hat Enterprise Linux 6 认证
- agc007B - Construct Sequences(构造)
- sublime插件emmet的配置、使用及快捷键Ctrl+E修改成Tab键操作
- TCP负载均衡地址转换(锐捷设备)
- python提取txt中指定内容_提取视频中的音频——python三行程序搞定!
- 4阶范德蒙德行列式例题_线性代数入门——“爪型行列式”的计算及其应用
- js,jquery,css,html5特效
- 【java】java 扩展可回调的Future
- mysql怎样在bat脚本中添加日志_如何在windows下用bat脚本定时备份mysql
- SqlServer Alwayson 搭建报错:19405
- 后台访问突然出现一串代码,且不能显示页面
- web_MDN学习资源导航_js初学者快速入门指南项目/javascript高级程序设计vsMDN javascript教程/指南(official)
- windows 下配置nginx访问静态图片
- Python获取基金收益计算
- 简历太空白怎么办?如何写简历
- android渠道 积分墙,安卓推广:既然能在应用商店做CPD,为什么还一定要做积分墙?...
- 《月下独酌》赏析-(李白明月姑娘之一)
- 如何在Windows中将“显示桌面”图标移动到快速启动栏或任务栏
热门文章
- 国际项目投标那些事(一)国内外区别
- 阅读郭霖《第一行代码》的笔记——第12章 Android特色开发,使用传感器
- 高翔视觉slam十四讲学习(1)
- PMI-ACP(103:17-56)
- 银保监计算机类专业课考题范围,银保监会考试题库:计算机类模拟试题练习(六)...
- 【第15天】MYSQL进阶-查询优化-慢查询日志(SQL 小虚竹)
- 再也不怕没有简历模板啦
- HTML5的出现是否会让Flash和Silverlight无用武之地?
- 通过MyEclipse生成Hibernate类文件和hbm.xml文件,或者annotation文件
- visa卡境外消费,visa卡境外消费手续费