# 资源工作流
游戏资源(asset)是指一系列游戏项目中的静态文件,比如模型,材质,图片,音频,二进制之类的统称。也包括了小游戏定义的一些资源,比如游戏场景,RenderTexture,物理材质,动画状态机等。也可以用来表达工具需要的一些数据,比如布局信息,新手引导数据等。最后也包括了用户的脚本,脚本是一种非常特殊的资源。
整个资源流程包括了: 导入,创建,构建,上传,下载,使用
- 导入,支持将美术资源导入到小游戏内容,包括了3D模型,图片,音频等。
- 创建,基于刚刚导入的内容,开发游戏的过程。
- 构建,会将游戏需要用的内容变成适合发布给用户的状态。
- 上传,将构建结果上传到微信进行审核与发布,也可以将部分游戏内容放到云端。
- 下载,游戏内容将会被小游戏包下载到玩家手机上,或是通过云CDN。
- 使用,小游戏框架加载下载好的资源生成游戏实例。
游戏运行时,这些文件会依照下载 → 读取 → 反序列化 → 目标资源
的步骤,从外部加载进游戏里。
加载进内存的资源,如果在最近20秒内没有被任何地方引用,就会将其从内存中释放掉,下次加载的时候再从本地存储空间中读取。
# 新手引导案例
开发者可以下载小游戏版工具并打开,然后点击资源工作流新手引导下载链接,下载体验完整流程。
# 常见资源类型
小游戏自身定义了多种资源类型:
类型 | 说明 |
---|---|
Scene | 场景 |
Prefab | 预制体 |
Texture2D | 2d 纹理 |
Atlaspac | 小游戏内置图集描述器 |
Atlas | 小游戏内置图集资源 |
Tplist | texture Packer图集 |
TextureCube | 立方体纹理 |
RenderTexture | 可渲染纹理 |
SpriteFrame | 精灵帧 |
Mesh | 网格 |
Material | 材质 |
Physicmaterial | 物理材质 |
Effect | 特效 |
Font | 字体 |
BitmapFont | 位图字体 |
AnimationClip | 动画片段 |
AnimatorController | 动画状态机 |
Avatar | 骨骼 |
Avatarmask | 骨骼蒙皮 |
Variant | shader 代码的变体。包含 vertex 代码和 fragment 代码,在渲染用到该 shader 时,shader 代码会被编译成 shader 对象并参与渲染。用户不在asset目录下理解。 |
AudioClip | 音频资源 |
AudioMixer | 混音资源 |
Playable | TimeLine用资源 |
Scriptableasset | 自定义资源 |
Raw | 纯文件。不被资源系统理解,而是游戏自定义的资源。比如游戏关卡的配置表等。 |
Script | .js 文件。加载时会通过 require() 方法被执行。 |
Layout | 工具布局资源 |
UiKit | UI控件资源 |
Tut | 新手引导主流程 |
Tutsect | 新手引导子流程 |
Tutpage | 新手引导单页 |
Tutwlcm | 新手引导欢迎页 |