当前位置: 首页 > news >正文

2021年不付费黄台软件下载抖音优化公司

2021年不付费黄台软件下载,抖音优化公司,js获取网站广告点击量怎么做,中山住房和建设局网站首先我们打开一个项目 在这个初始界面我们需要做一些准备工作 建基础通用包 创建一个Plane 重置后 缩放100倍 加一个颜色 任务:使用【简单工厂模式】生成四种不同怪物 【按不同路径移动】 首先资源商店下载四个怪物模型 接下来我们选取四个怪物作为预制体并分别起名…

首先我们打开一个项目

在这个初始界面我们需要做一些准备工作

建基础通用包

创建一个Plane 重置后 缩放100倍 加一个颜色

任务:使用【简单工厂模式】生成四种不同怪物 【按不同路径移动】

首先资源商店下载四个怪物模型

接下来我们选取四个怪物作为预制体并分别起名为Monster1-4

都完全解压缩后放进预制体包在场景中删除

准备工作做完后    接下我们做【简单工厂模式】

简单工厂不属于23设计模式中的一项但是23设计模式中抽象工厂的基础

简单工厂最低需要三个类就可以完成加上Main类中调用也就四个

首先需要    【抽象产品类】

其次需要    【具体产品类】

再其次需要【生产工厂类】

最后我们通过Main继承Mono挂载再脚本上调用即可

实现:

1.创建脚本【抽象产品类】:

using UnityEngine;
public abstract class IMonster {
    public GameObject Monster {get;set;}
    public abstract void Load();
}

2.【具体产品类】:

using UnityEngine;
namespace Assets.Scripts.Product{
    class MonsterA : IMonster{
        public override void Load(){
            Monster = Resources.Load<GameObject>("Prefabs/monster1");
            if(Monster != null)
                Monster = GameObject.Instantiate(Monster,new Vector3(0,0,0),Quaternion.identity);
        }
    }
}

3.【生产工厂类】

using Assets.Scripts.Product;
namespace Assets.Scripts.SimpleFactory{
    public static class Factory{
        public static IMonster GetMonster(string type) {
            IMonster monster;
            switch (type) {
                case "monsterA":
                    monster = new MonsterA();
                    break;
                default:
                    monster = null;
                    break;
            }
            return monster;
        }
    }
}
4.【控制挂载类】

using Assets.Scripts.SimpleFactory;
using UnityEngine;
namespace Assets.Scripts{
    public class Main : MonoBehaviour{
        public IMonster monster;
        public string type;
        private void Start(){
            monster = Factory.GetMonster("monsterA");
            monster.Load();
        }
    }
}

我们回到unity场景中创建一个空物体改名Obj 重置位置 将Main脚本挂载

运行即可生成

接下来我们创建   多个【具体产品类】

当然也需要在其他类里添加 这就是简单工厂不好的地方 增一类 动三类

运行即可实现:

目前【简单工厂模式】已经完成

接下来我们将生成的怪物 按不同路径移动

原理:

【通过使小球(WayPoint)作为引导使怪物进行自动导航】

我们首先在unity场景中创建一个3D小球 改名为 WayPoint

将WayPoint放进预制体包 并在场景中移除

接下来通过预制体  拖拽至场景中放置不同路径

我们放大Plane

接下来创建一个空父物体代表移动路径 改名PathA

将所有WayPoint放进PathA下做子类

接下来创建移动脚本Move

将以下代码放进Move

using UnityEngine;
public class Move : MonoBehaviour{
    public Transform[] arr;
    public float speed = 1f;       
    public int idx = 0;   
    void Start(){
        Transform path = GameObject.Find("PathA").transform;
        if (path != null){
            arr = new Transform[path.childCount];
            for (int i = 0; i < arr.Length; i++)
                arr[i] = path.GetChild(i);
        }
        else
            Debug.LogError("查找路径点父物体失败 检查父物体名字");
    }
    private void Update(){
        Vector3 direction = arr[idx].position - transform.position;
        transform.rotation = Quaternion.Slerp(transform.rotation, Quaternion.LookRotation(direction), 0.1f);
        transform.Translate(Vector3.forward * speed);
        if (direction.sqrMagnitude < 1f){
            idx++;
            if (idx > arr.Length - 1)
                idx = 0;
        }
    }
}

将Move挂载到四个怪物预制体上

运行前

运行后

http://www.yidumall.com/news/16126.html

相关文章:

  • 潍坊小企业网站建设整合营销理论
  • 个人可以做导购网站吗搜索百度指数
  • swoole怎么做直播网站快速提升关键词排名软件
  • 个人如何做网站软件云南网络推广服务
  • 企业站网站建设百度推广入口
  • 做电商网站一般要多少钱营销型网站建设的重要原则
  • 网站如何做宣传推广智慧教育
  • 携程特牌 的同时做别的网站厦门百度竞价开户
  • 宜昌网站设计公司推广联盟平台
  • 徐州手机网站建设公司国外引流推广软件
  • 网站建设怎么选择武汉网站运营专业乐云seo
  • 网站页面大小优化怎么做免费推广途径与原因
  • wordpress自动采集翻译插件怎么用windows优化大师怎么下载
  • 济南网站建设(力选聚搜网络)谷歌chrome浏览器下载
  • 有没有人与动物做的电影网站太原网站快速排名提升
  • 网站推广方法主要有哪些阿里云空间+1对1私人专属设计师
  • 做网站设计的电话个人如何注册网站
  • 鱼台县建设局网站免费网页在线客服制作
  • 软件开发工具具有哪些基本功能网站信息组织优化
  • 做音乐网站用什么程序seo搜索优化 指数
  • 聊城网站建设设计实力公司想要网站推广版
  • wordpress首页小工具google搜索优化
  • 合肥营销网站建设设计360搜索引擎入口
  • 刚刚地震最新消息今天2021优化教程
  • 移动网站建设初学视频教程中国网站排名查询
  • 大连金豆网站建设大数据培训包就业靠谱吗
  • 海南网站建设粤icp备成都百度推广电话
  • 哪个网站不花钱可以做招聘短视频seo营销
  • 广东在线网站建设百度最新财报
  • 网页html代码seo推广排名重要吗