疯狂喷气机小游戏总结

2/3D游戏:2D

辅助插件:原生

游戏制作难度系数:初级

游戏教程网址:http://www.raywenderlich.com/69392/make-game-like-jetpack-joyride-unity-2d-part-1

1、控制摄像机跟随人物移动

    public GameObject targetObject; //目标对象
    private float distanceToTarget;
    void Start()
    {
        distanceToTarget = transform.position.x - targetObject.transform.position.x; //获取摄像机和对象在横坐标上的的距离
    }
    void Update()
    {
        float targetObjectX = targetObject.transform.position.x;
        Vector3 newCameraPosition = transform.position;
        newCameraPosition.x = targetObjectX + distanceToTarget;
        transform.position = newCameraPosition; //更新摄像机的位置
    }

2、检测对象是否落地

把floor地板层的Layer设置为Ground,对象的脚下设置一个监测点groundcheck,代码判断是否着地

 public LayerMask groundCheckLayerMask;//设置为地板层
 public GameObject groundcheck; //监测点
 bool isTouchGround;
 void CheckGround()
 {
     isTouchGround = Physics2D.OverlapCircle(groundcheck.transform.position, 0.1f, groundCheckLayerMask);
 }
Physics2D.OverlapCircle用法如下:static Collider2D OverlapCircle(Vector2 point, float radius, int layerMask = DefaultRaycastLayers, float minDepth = -Mathf.Infinity, float maxDepth= Mathf.Infinity);point:圆的中心radius:圆的半径layerMask:只在某些层过滤检测碰撞器minDepth:只包括Z坐标(深度)大于这个值的对象maxDepth:只包括Z坐标(深度)小于这个值的对象描述:检测一个碰撞器是否与落在一个圆形区域(里面)。圆形是由一个在世界空间中的中心点和它的半径定义出来的。层遮罩可以用于指定检测特定某些图层的对象。虽然Z轴与2D的渲染或碰撞无关,但是你可以使用minDepth和maxDepth参数去排除一些对象基于他们的Z轴。如果有好几个碰撞器都落在(重叠)检测区域,那么最小的Z坐标的那个碰撞器将会被返回。如果没有碰撞器在区域中就返回Null了。还要注意这个函数会分配内存给返回的Collider2D对象。在你需要频繁做这个检测的时候,可以使用OverlapCircleNonAlloc这个函数去避免这些开销。还有这些: OverlapAreaOverlapPointOverlapCircleAllOverlapCircleNonAlloc.
时间: 2024-11-08 00:57:13

疯狂喷气机小游戏总结的相关文章

Java-飞机小游戏

今天放假第二天,一个人在家很无聊,跟着b站写了一个飞机游戏的小项目. 1.画一个窗体继承Frame类,因为JFrame闪烁特别严重,加一段双缓冲技术,解决闪烁问题 2.加入背景和飞机的图片,写一个GameUitl类使用 URL u=GameUitl.class.getClassLoader().getResource(path);  bi=ImageIO.read(u);方法显示图片 3.写一个GameObject父类,飞机Plane炮弹Shell都继承此类,在类中右击-Source-Gener

初学JS——利用JS制作的别踩白块儿(街机模式) 小游戏

初学JS--利用JS制作的别踩白块儿(街机模式) 小游戏 这个是上个星期5写的了,当时是突然想写个游戏,就想到了别踩白块儿,当时的想法是 可能普通模式的别踩白块儿因为他的"块儿"是滚动的向上这种,以我目前会的技术想不出怎么写, 但是如果是街机模式,通过你每按一次按键之后他像下跳一格这样的就非常好实现了. 通过我目前会的知识,实现的步骤大概是这样的: 建一个4X4的表格,制作2张150X100的图片,一张全白色,一张全黑色,命名为0.JPG,1.JPG 就是说当文件名为0的时候就是白色的

Chrome自带恐龙小游戏的源码研究(七)

在上一篇<Chrome自带恐龙小游戏的源码研究(六)>中研究了恐龙的跳跃过程,这一篇研究恐龙与障碍物之间的碰撞检测. 碰撞盒子 游戏中采用的是矩形(非旋转矩形)碰撞.这类碰撞优点是计算比较简单,缺点是对不规则物体的检测不够精确.如果不做更为精细的处理,结果会像下图: 如图所示,两个盒子虽然有重叠部分,但实际情况是恐龙和仙人掌之间并未发生碰撞.为了解决这个问题,需要建立多个碰撞盒子: 不过这样还是有问题,观察图片,恐龙和仙人掌都有四个碰撞盒子,如果每次Game Loop里都对这些盒子进行碰撞检测

c语言:简单飞机射击小游戏

c语言:简单飞机射击小游戏 使用c语言编写一个打飞机小游戏,使用键盘按键来进行游戏,操作方法是"a""d""w"或者"←""↑""→"来控制攻击.左.右,击中敌机可获得积分,被敌机撞中死亡一次,每次游戏有3次机会,机会用光则游戏结束,之后可选择是否重新开始游戏. 改进:增加了颜色函数,使得游戏看起来更加的舒适:增加了终止函数,使游戏在死亡三次后自动结束游戏,并且可以选择是否重新开始游戏:

C语言射击类打飞机小游戏

使用c语言编写一个打飞机小游戏,使用键盘按键来进行游戏,击中敌机可获得积分,被敌机撞中死亡一次,每次游戏有3次机会. 在网上查询资料并且和同学讨论之后,对原来的代码有了一些改进, 改进:增加了颜色函数,在你所需要改变窗口颜色的位置调用函数 system("color xx") xx分别指的是背景颜色和文字(前景)颜色.x为一位16进制数,即1-f都可以使用.可以随意组合.增加了终止函数,使游戏在死亡三次后自动结束游戏,并且可以选择是否重新开始游戏:另外增添了设置函数,使得可以对游戏进行

JS实现别踩白块小游戏

最近有朋友找我用JS帮忙仿做一个别踩白块的小游戏程序,但他给的源代码较麻烦,而且没有注释,理解起来很无力,我就以自己的想法自己做了这个小游戏,主要是应用JS对DOM和数组的操作. 程序思路:如图:将游戏区域的CSS设置为相对定位.溢出隐藏;两块“游戏板”上分别排布着24块方格,黑色每行随机产生一个,“游戏板”向下滚动并交替显示,将每个操作板的黑块位置存入数组,每次点击时将数组pop出来进行比对(我觉得亮点在这……). 这里是游戏的GitHub地址,大家可以到里点击中部菜单最右边的的Downloa

谋哥:社交小游戏App将是下一个金矿!

[谋哥每天一原创干货,第四十五篇] 移动互联网的机会是非常多的,谁先做谁的机会就更大,所以把握时机非常重要.如今的App市场,各个分类的App已经多得眼花,也就是所谓的红海一片. 那么,在移动浪潮下,是不是还有其他机会?开发者的机会? 社交小游戏就是下一个金矿! 我很早以前,都在群里说我对社交游戏很看好,如今却依然被我看好.为什么呢?我们知道前几天<围住神经猫>火爆之后,很多商家已经闻到这种小游戏容易成功的气息.我也在文章说明这种游戏爆火其实很多专家无法理解,更多的时候是一种涌现,但是!它的突

带你使用h5开发移动端小游戏

带你使用h5开发移动端小游戏 在JY1.x版本中,你要做一个pc端的小游戏,会非常的简单,包括说,你要在低版本的浏览器IE8中,也不会出现明显的卡顿现象,你只需要关心游戏的逻辑就行了,比较适合逻辑较为简单的小游戏,在JY官网也写了很多的小游戏demo,但后来由于工作的缘因,一直没太去维护他,真是一转眼,已经是移动互联网的时代了,5年后的今天,有了重新构思JY框架的冲动,于是全新的JY2.0开始构建了.它将只适用于h5的移动端游戏开发,它将更多的去关注更复杂的js游戏,不在局限于红白机时代. 在使

小游戏拒绝黄赌毒制作有感

8月22日晚上,我们的自编自导自写的小游戏“拒绝黄赌毒”上线了,截止到8月24日13:20为止,pv 8404,uv 5578,成绩虽然离之前我们预想的1万差很多,但是这一次全程参与的感觉非常爽,下面我流水帐的说下这件事的前因始末 一 起意 突然之间小游戏火了,朋友圈都在刷屏式的转发,开始的时候我还是挺无感的,但是后来有一次开会,老板对于现有宣传美人鱼的方式非常不满意,我突然灵机一动,为何不做个小游戏去推广试试?我骨子里是非常喜欢新奇特的人,想到了这个点子,浑身的细胞根本停不下来,老在思考着这件