位置: 编程技术 - 正文
推荐整理分享Unity3D【火星大战四】(unity火堆),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:unity火箭发射,unity怎么做火焰粒子特效,unity火堆,unity怎么做火焰粒子特效,unity星球,火星unity3d课程,火星unity3d课程,unity火堆,内容如对您有帮助,希望把文章链接给更多的朋友!
利用协程使敌机和圆盘重复出现
using UnityEngine;using System.Collections;public class RandomSp : MonoBehaviour { public GameObject[] enemy2;//圆盘 public GameObject[] enemy1;//敌机 public GameObject player;//我机 void Start() { player = GameObject.FindWithTag("Player");//获取我机的名称 NextTime(); StartCoroutine(RandomSpNext()); //开始协程 } IEnumerator RandomSpNext() { yield return new WaitForSeconds(f); while(true){ if(player==null){//当我机销毁时,敌机圆盘不在出现 break; } NextTime(); yield return new WaitForSeconds(f);//停秒 } } void NextTime() {//产生第一波 EnemyRandomSp();//随机产生三个圆盘 StartCoroutine(Enemy1());//停3秒后随机产生三个敌机 } void EnemyRandomSp() {//圆盘 for (; ; ) { int index = Random.Range(0, enemy2.Length);//随机产生圆盘 float posX = Random.Range(-7f, 6f);//x轴随机产生 int index2 = Random.Range(0, enemy2.Length); float posX2 = Random.Range(-7f, 6f); int index3 = Random.Range(0, enemy2.Length); float posX3 = Random.Range(-7f, 6f); if (Mathf.Abs(posX - posX2) > 3f && Mathf.Abs(posX - posX3) > 3f && Mathf.Abs(posX3 - posX2) > 3f) {//位置不重叠时克隆圆盘 Instantiate(enemy2[index], new Vector3(posX, 1.2f, -8f), Quaternion.identity); Instantiate(enemy2[index], new Vector3(posX2, 1.2f, -8f), Quaternion.identity); Instantiate(enemy2[index], new Vector3(posX3, 1.2f, -8f), Quaternion.identity); break; } } } IEnumerator Enemy1() {//敌机 yield return new WaitForSeconds(3f); for (; ; ) { int index = Random.Range(0, enemy1.Length);//随机产生敌机 float posX = Random.Range(-7f, 6f);//x轴随机产生 int index2 = Random.Range(0, enemy1.Length); float posX2 = Random.Range(-7f, 6f); int index3 = Random.Range(0, enemy1.Length); float posX3 = Random.Range(-7f, 6f); if (Mathf.Abs(posX - posX2) > 3f && Mathf.Abs(posX - posX3) > 3f && Mathf.Abs(posX3 - posX2) > 3f) {//位置不重叠时克隆敌机 Instantiate(enemy1[index], new Vector3(posX, 1.2f, -8f), Quaternion.identity); Instantiate(enemy1[index], new Vector3(posX2, 1.2f, -8f), Quaternion.identity); Instantiate(enemy1[index], new Vector3(posX3, 1.2f, -8f), Quaternion.identity); break; } } }}更多精彩请点击
Unity3d Shader开发(一)Properties 着色器可以定义一个参数列表,可以由开发者在材质检视面板编辑参数。着色器文件中的Properties块定义了这些参数:该文章出自【狗刨学习网】语法:P
EasyTouch Broadcast messages选项在js和c#下的用法 easytouch传递消息到脚本中的方法:如果使用js写代码,需要勾选Broadcastmessages选项,otherreceiver选择接收消息的gameobject。因为在js里没法像c#那么方便的使
法线贴图原理 我算个笨人吧.笨人以前弄懂一些东西后,讲给笨人听往往更有效.看之前请自行具备图形学关于光照的基础知识.world/objectspacenormalmap我们先讲基于世界或
标签: unity火堆
本文链接地址:https://www.jiuchutong.com/biancheng/383585.html 转载请保留说明!友情链接: 武汉网站建设