zoukankan      html  css  js  c++  java
  • unity3d NGUI多场景共用界面制作

    1创建单独编辑UI的unity场景 UIScene.unity 用来做UI面界 ,创建Resources文件存放UI界面的prefab,代码里动态load资源仅仅能从Resources目录载入

    2创建2DUI NGUI->Create->2D UI ,改动camera名字 做成prefab,做为游戏UI全局摄像机

    3在UIScene场景中创建单独界面 在之前创建的UIRoot->camera下创那panel做为根,做好详细界面后。从panel层做成prefab

    4代码中

    用static变量保存UIRoot的实例,用DontDestroyOnLoad设置换场景也不释放对像

    Global.GUIRoot = Instantiate(Resources.Load(UIRoot));//实例化全局UI摄像机

    DontDestroyOnLoad(Global.GUIRoot);

    在随意场景中

    panel = Instantiate(Resources.Load(xxx));//实例化界面

    UICamera = GameObject.Find("UICamera");//取得ui摄像机obj

    panel.transform.parent = UICamera.transform;//设置父子关系

    panel.transform.localScale = new Vector3(1,1,1);//还原正常比例 

    //设置完父子关系后panel的缩放会变成 跟据原大小变为相应到UICamera大小 所以要重设比例

    比方 panel中有512X512的一个图 正常时localScale全为1

    设置完父子关系后localScale有可能会变成240,由于实例化时是实例化在当前场景中的。并非在UICamera下


    这样做能够方便制作成单独的UI界面,而且能够在不同场景使用。同样的UI界面

  • 相关阅读:
    字符设备驱动——申请设备号、注册字符设备
    Linux设备驱动——简单的字符驱动
    Linux驱动入门——构建和运行模块
    Ubuntu12.04下samba服务器共享配置
    python get() 和getattr()
    flask 发送QQ邮箱
    Flask之flask_script
    Flask 知识点
    Flask 项目结构(仅供参考)
    python虚拟环境迁移
  • 原文地址:https://www.cnblogs.com/blfshiye/p/5255422.html
Copyright © 2011-2022 走看看