基于unity3d实现的简单的google小恐龙1 |
您所在的位置:网站首页 › 谷歌小恐龙素材编程 › 基于unity3d实现的简单的google小恐龙1 |
标题1:前言
主要是由于即将大学毕业,但是感觉什么都没学,又苦于找工作,所以想要尝试一下用之前学的u3D知识,编写一些简单的一个小恐龙游戏。很久之前根据书籍《游戏设计,原型与开发 基于untiy与C#从构思到实现》----jeremy Gibson Bond 实现过一些简单的实例,例如接苹果,弹弓(类似愤怒的小鸟),太空射击以及地牢游戏等。但是由于大学有时候比较忙,感觉有点生疏之类的,所以趁着暑假,写一些东西练习一下。 首先是谷歌小恐龙这个游戏,是谷歌浏览器在用户断网的情况下,自带的一款小游戏,基本内容就是一直恐龙在地面上跳动,然后躲避迎面而来的仙人掌和翼龙。游戏比较简单易懂,用来练习耶很不错。 但是直接实现这个游戏也有点过于简单,因此想要在这个游戏的基础上增加一些自己的内容,丰富一下,顺便也强化一下代码设计能力。 谷歌小恐龙游戏:谷歌浏览器内输入chrome://dino 基础设计 地板设计:首先是设计地面移动的效果,一般来说这样的游戏基本是使用相对运动的模式,因此只需要地面向前移动就可以看起来像是小恐龙在前面跑动一样。为了连接的连贯性准备两个地面对象,利用卷轴进行交替移动。 上面这个是地面的对象实体 using System.Collections; using System.Collections.Generic; using UnityEngine; public class groundMove : MonoBehaviour { [Header("Set in Inspector")] public float speed = 5f; [Header("Set Dynamically")] private Rigidbody rid; // Start is called before the first frame update void Start() { rid = GetComponent();//初始化刚体 } // Update is called once per frame void Update() { Vector3 vel=Vector3.zero;//普通移动 vel = Vector3.left; rid.velocity = vel*speed; Vector3 pos=gameObject.transform.position; if (pos.x = 20)//一波为20 { for (int i = 0; i < 10; i++) { int ge = Random.Range(0, sizeOfEmeny); cactus[i] = Emeny[ge];//在敌人数组里面抽取 } numOfSummon = 0; if (timeSum = timeSum)//时间间隔足够 { timeNow = Time.time; int ranNum = Random.Range(0, 10);//随机抽取仙人掌 Instantiate(cactus[ranNum]);//生成仙人掌 numOfSummon += 1;//增加一次计数 } } } } 上面那个跟boss有关的代码还是测试代码,可以无视,后面会将“ks1”改为检测boss的tag的方式。这就是游戏的基本设计了。 基本效果图: 这一个基础设计大概就是这样,本人也是正在unity的入门阶段,代码写得很乱请多多谅解,这个文章主要是记录一下练习。谢谢大家,我还会继续增加一些新内容。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |