器材资源开发规范

不同格式资源存放路径规范

Unity中不同的资源请严格遵循下面的路径存放(%Resource% 指代 “Assets\Resources\ElementResource”

资源类型 存放路径
shader %Resource%\LabElementShaders
模型资源、贴图、材质、原始预制体 %Resource%\LabElementResources\<器材编码>
开发同学加工过的预制体 %Resource%\LabElementPrefabs\资源等级(1,2,3,4,5)\<器材编码>Model_PC
器材相关音效资源 %Resource%\ElementAudio
器材通用资源(eg:玻璃材质) %Resource%\Common
玻璃材质 %Resource%\Common\Glass

资源仓库结构说明

为了便于后续多平台资源的适配与开发,ElementResource仓库拆分成了两个仓库,一个是用于存放多平台相关的资源,一个用于存放预制体,一个用于存放多平台不同的资源,多平台的资源通过git分支来管理不同平台的资源,预制体仓库只维护一个分支,一个预制体对应多个多平台分支的资源 ,以实现一套预制体在多个平台下使用。

仓库分支说明

  • ElementResource仓库
    根据不同平台分出几个主要的开发分支:
平台 分支名称
PC develop
安卓Pad Main/Android
IOS Pad Main/IOS
  • LabElementPrefabs仓库
    该仓库的主要开发分支只有一个:develop。该仓库做为ElementResource仓库的子仓库存在。

一个预制体通用多平台的原理说明:

Unity中的预制体说白了就是对Unity中一系列资源使用情况进行说明的配置的文件,预制体告诉Unity一个GameObject是由哪些资源以何种形式构成的。只要需要多平台适配的资源路径和名称没有变化,预制体就能引用到对应的资源。比如一个预制体使用了A.mat的材质球,但这个材质在安卓下需要使用B.mat的材质球,那么只需要在安卓分支下将B.mat材质球覆盖替换掉A.mat材质,预制体就可以引用到这个名字叫做A.mat的B材质球。

美术同学资源制作规范

资源制作

  1. 制作器材资源时,资源的存放路径应遵守上述资源存放规范。
  2. 当制作一个新的器材资源时,由于器材的编码暂时没有,这时候应将“模型资源、贴图、材质、原始预制体”放在%Resource%\LabElementResources\Commit 文件夹中。
  3. 当需要修改现有的器材资源时,请向相关器材的开发同学索要最新的器材UntiyPackage包进行修改。
  4. 粒子特效资源修改直接在器材的预制体上进行修改,交付时直接提交整个器材的预制体。
  5. 制作新的器材资源时,应同时提供PC资源和Pad资源,放在两个unitypackage包中,其中PC资源的package包应该包括一个整合了所有资源的预制体,pad资源的package包不需要包括预制体。

pad资源制作

pad资源制作应以尽量不修改预制体参数为原则进行,尽量做到只修改材质、贴图、模型等。以下规则是为了确保不违反该原则而列出:

  1. 粒子特效参数与PC端资源应保证一致。
  2. 减面之后的预制体上的模型节点数应与PC资源保持一致,没有mesh组件的节点也不应删除。
  3. 每个模型节点所使用的材质个数应与PC资源保持一致。

开发同学接入美术资源步骤

接入新器材资源

  1. 检查资源是否符合规范,如果不符合以下几点,应打回给美术同学进行修改,主要检查以下几点:
    • “模型资源、贴图、材质、原始预制体”是否放在%Resource%\LabElementResources\Commit文件夹中。
    • 检查是否提供了pad资源的package包。
    • 除了pad中不会带有器材的预制以外,pad的package包的资源目录结构是否与PC的package包资源目录结构相同。
    • 新增的Shader是否放在LabElementShaders文件夹中。
  2. 确定器材的编码
  3. 将%Resource%\LabElementResources\Commit文件夹改名为器材的编码
  4. 导入PC端的UnityPackage包资源到工程中。
  5. 制作器材的预制体,并放到%Resource%\LabElementPrefabs\<器材编码>文件夹中。
  6. 为了精简仓库的大小,请删除导入时美术自带的预制体,特效相关的预制体也请在接入器材预制体后删除
  7. 将Pad资源导入Main/Android分支