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

网站的整体规划怎么写“设计网站”

网站的整体规划怎么写,“设计网站”,创网,推广普通话活动总结首先创建一个项目, 在这个初始界面我们需要做一些准备工作, 建基础通用文件夹, 创建一个Plane 重置后 缩放100倍 加一个颜色, 任务:使用工厂方法模式 创建 飞船模型, 首先资源商店下载飞船模型&#xff0c…

首先创建一个项目,

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

建基础通用文件夹,

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

任务:使用工厂方法模式 创建 飞船模型,

首先资源商店下载飞船模型,

拖拽三种类型飞船模型至unity场景中,

将三种模型完全解压缩后放进自己的Prefabs包,

在unity场景中删除三个飞船模型,

接下来编写代码:

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

双击AbsShip.cs编写代码:

using UnityEngine;
public abstract class AbsShip{
    public GameObject Ship { get; set; }
    public abstract void Load();
}
2.创建脚本【具体产品类】

双击ShipA.cs编写代码:

using UnityEngine;
public class ShipA : AbsShip{
    public override void Load(){
        Ship = Resources.Load<GameObject>("Prefabs/ship1");
        if (Ship != null)
            Ship = GameObject.Instantiate(Ship, new Vector3(0, 0, 0), Quaternion.identity);
    }
}
3.创建脚本【工厂方法类】

public abstract class AbsFactory{
    public abstract AbsShip GetShip(string type);
}
public class Factory : AbsFactory{
    public override AbsShip GetShip(string type){
        AbsShip ship;
        switch (type){
            case "shipA":
                ship = new ShipA();
                break;
            default:
                ship = null;
                break;
        }
        return ship;
    }
}

4.创建脚本【主类】

using UnityEngine;
public class Main : MonoBehaviour{
    public AbsShip ship;
    public string type;
    void Start(){
        AbsFactory shipFactory = new Factory();
        ship = shipFactory.GetShip("shipA"); 
        if (ship != null)
            ship.Load(); 
        else
            Debug.LogError("空引用");
    }
}
回到unity中修改预制体文件名为ship1

将Main类挂载在地面Plane上,

运行项目即可生成ship1飞船,

如果需要拓展,添加ShipB具体产品类,

using UnityEngine;
public class ShipB : AbsShip{
    public override void Load(){
        Ship = Resources.Load<GameObject>("Prefabs/ship2");
        if (Ship != null)
            Ship = GameObject.Instantiate(Ship, new Vector3(3, 0, 0), Quaternion.identity);
    }
}

只需修改工厂类,

public abstract class AbsFactory{
    public abstract AbsShip GetShip(string type);
}
public class Factory : AbsFactory{
    public override AbsShip GetShip(string type){
        AbsShip ship;
        switch (type){
            case "shipA":
                ship = new ShipA();
                break;
            case "shipB":
                ship = new ShipB();
                break;
            default:
                ship = null;
                break;
        }
        return ship;
    }
}

运行项目即可完成,

End.

http://www.yayakq.cn/news/448854/

相关文章:

  • 广州开发网站技术支持胶州企业网站设计
  • 网站原创性建设局网站买卖合同
  • 网站建设教程 项目式辽阳专业网站建设品牌
  • 河南省城乡和住房建设厅网站网站网址和域名
  • 微网站 网页PHP网站建设视频免费
  • 建设景区网站推文wordpress的数据库配置文件
  • 网站关键词几个最好朋友圈发布到wordpress
  • 门户网站建设推荐哈尔滨百度seo代理
  • 网站建设功能描述书徐东网站建设
  • 安徽网站建设科技wordpress做新闻cms
  • nat123做视频网站人工智能好就业吗
  • 使用flashfxp上传网站wordpress微博
  • 建设项目环保备案登记网站班服定制网站
  • 建设网站域名备案查询怎么做网站里导出没有水印的图
  • 淄博网站开发好口碑的关键词优化
  • 给网站做绝对路径手机版网站做一下多少钱
  • 项城网站设计公司名字大全20000个四个字
  • 简述网站开发的流程建网站哪个公司好
  • 网站建设 后期维护怎样做自己的vip解析网站
  • 帝国手机网站cms系统西安网站建设有限公司
  • 建网站英语怎么说个人博客搭建
  • 个人建站模板湖北省建设质量安全协会网站
  • 设计坞网站怎么样深圳做网站公司那家比较好
  • seo网站排名软件利用淘宝视频服务做视频网站
  • 创建网站目录应注意青岛网络科技公司排名
  • 专业网站建设搭建深圳市注册公司流程图
  • 在中国做国外网站如何看出网站是用wordpress搭建
  • 博客网站开发源代码北京建设网站公司
  • 临沂网站设计培训班wordpress storefront
  • 网站里的动效怎么做网站上的报名表链接是怎么做的