5.包的概念

  1. 5.FGUI基础-基础知识-包的概念
    1. 5.1 知识点
      1. 包的定义
      2. 新建包
      3. 包的依赖
      4. 资源URL地址
      5. 划分包的原则
    2. 5.2 知识点代码

5.FGUI基础-基础知识-包的概念


5.1 知识点

包的定义

  • 包是FairyGUI中用于组织资源的。
  • 在文件系统中,每个包在assets文件夹下都表示为一个子目录。
  • 在最终打包过程中,也是以包为单位进行打包的。
  • 每个包都包含一个名为package.xml的数据文件,它记录了包中的资源关联信息,如控件位置、资源等等。这个文件非常重要。
  • 在包发布后,会生成一个描述文件和一张或多张纹理集(图集)。
  • 当我们在引擎中使用时,根据这个描述文件使用纹理集中的图片来创建UI。

新建包

  • 菜单栏——>资源——>新建包(或者点击快捷按钮)

包的依赖

  • FairyGUI不处理包之间的依赖
  • 假设有两个包A和B
  • 如果某个A包中元件A1 使用了B包中的B1
  • 为了保证A1的正常使用,必须先加载B包
  • 否则无法正常使用
  • 如果一个包要使用其它包中的资源,那么该资源必须设置为导出资源,如果不不设置是不可访问的,并且只有设置为导出的组件才可以使用代码动态创建
  • 导出资源图片右下角有小红点
  • 包依赖相关API

资源URL地址

  • 在FairyGUI中每个资源都对应了一个资源URL地址

  • 选中一个资源,右键,会出现复制URL,就可以得到它的资源地址

  • 无论在编辑器还是代码中 我们都可以通过资源地址来得到资源 比如:ui://c8d1gzdo8m7b4

  • 但是我们使用的话可以通过资源URL地址规则 不一定要使用右键复制的URL

  • 资源URL地址规则:ui://包名//资源名 比如 ui://FGUI教程//ui_DL_an_quxiao_01

  • 注意:该格式地址是不包含文件夹的,只需要用包名和资源名,所以最好要保证一个包的每个资源名唯一

  • URL相关在Unity的API

划分包的原则

  • 不要建立交叉引用

  • 公共资源放在公共包中

  • 避免A用B,B用C这种复杂的关系

  • 建议:

    • 大项目,一个模块一个包,比如背包系统包,排行榜系统包,登录系统包等等
    • 小项目,一个包,所有资源都在一起
  • 根据实际情况选择即可


5.2 知识点代码

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Lesson05_FGUI基础_基础知识_包的概念 : MonoBehaviour
{
    void Start()
    {
        #region 知识点一 包的定义

        //包是FairyGUI中用于组织资源的
        //它在文件系统中体现为一个目录,assets文件夹下的每个子目录都表示一个包
        //最终我们打包时也是以包为单位进行打包的

        //每个包中都有一个package.xml文件,它是用于记录这个包中的资源对应信息的,是非常重要的文件

        //包发布后可以得到一个描述文件和一张或多张纹理集(图集)
        //我们在引擎中使用时,就是根据这个描述文件使用纹理中的图片来创建UI的

        #endregion

        #region 知识点二 新建包

        //菜单栏——>资源——>新建包(或者点击快捷按钮)

        #endregion

        #region 知识点三 包的依赖

        //FairyGUI不处理包之间的依赖
        //假设有两个包A和B
        //A用到了包B中的元件,那么在使用A中内容时需要先手动加载包B相关内容

        #endregion

        #region 知识点四 资源URL地址

        //在FairyGUI中每个资源都对应了一个资源URL地址
        //选中一个资源,右键,会出现复制URL,就可以得到它的资源地址
        //无论在编辑器还是代码中 我们都可以通过资源地址来得到资源 比如:ui://c8d1gzdo8m7b4

        //但是我们使用的话可以通过资源URL地址规则 不一定要使用URl
        //资源URL地址规则:ui://包名//资源名 比如 ui://FGUI教程//ui_DL_an_quxiao_01
        //注意:该格式地址是不包含文件夹的,只需要用包名和资源名

        #endregion

        #region 知识点五 划分包的原则

        //划分包的原则:
        //不要建立交叉引用
        //公共资源放在公共包中
        //避免A用B,B用C这种复杂的关系

        //建议:
        //1.大项目,一个模块一个包,比如背包系统包,排行榜系统包,登录系统包等等
        //2.小项目,一个包,所有资源都在一起
        //根据实际情况选择即可

        #endregion
    }
}


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 785293209@qq.com

×

喜欢就点赞,疼爱就打赏