Addressable 深度理解与使用
Addressable是什么是Unity官方出的资源管理器,Addressable即可寻址的资源系统Addressable的优点:
通过一个key,可以直接获取资源,不需要在意资源的实际位置
有完整的可视化界面,不需要写大量资源管理代码即可管理资源
方便自定义打包,自带增量更新等
Addressable的使用心得
操作界面入口
初次打开需要创建Setting之后会看到Assets目录下的文件结构,先做简单介绍后面在工具使用时会依次讲到所有资源文件使用方式
路径
注释
AddressableAssetsData
根目录,AddressableAssetSettings是整个Addressable设置
AddressableAssetsData/AssetGroups
资源管理组,管理多个Schema处理该组内资源的读取/加载/保存等逻辑
AddressableAssetsData/AssetGroups/Schemas
处理模式,处理数据的实际逻辑类,继承自AddressableAssetGroupSchema,默认提供了三个Schema,分别对应两个Asset ...
AssetBundle 注意事项以及使用
AssetBundle是什么AssetBundle是Unity的资源管理包,用于资源加载卸载。AssetBundle分为数据头和数据段:
数据头:存储一些设置,如压缩类型,索引,manifest等
数据段:存储序列化后Asset数据
AssetBundle的优点:
自带压缩算法
方便管理,适合增量更新
可随意加载卸载Asset
内部包含Asset的引用关系,不需要怕引用丢失
AssetBundle的压缩压缩格式分为:LZ4,LZMA
LZMA打包成字节流,包体会比LZ4小
LZMA打包运行时占用运行内存空间会比LZ4大很多,在使用是LZMA包在初始化时先解压再压缩成LZ4使用,个人理解实际情况:LZMA解压完的数据会先存在内存中,再压缩成LZ4,但是使用时又需要将LZ4解压,感觉上是极度没必要的。
通常情况下使用LZ4打包,不需要考虑太多内存空间的事,只是包体会稍微大一些
AssetBundle的读取有两种方式LoadFromMemory,LoadFromFile
LoadFromMemory:需要反复读取byte数组,会有额外的内存消耗
LoadFromFile: 直接 ...
Markdown基础语法
初于方便写文章考虑,整理一下markdown语法规则 转载链接
标题123456# 这是一级标题## 这是二级标题### 这是三级标题#### 这是四级标题##### 这是五级标题###### 这是六级标题
这是一级标题这是二级标题这是三级标题这是四级标题这是五级标题这是六级标题字体1234**这是加粗的文字***这是倾斜的文字*`***这是斜体加粗的文字***~~这是加删除线的文字~~
这是加粗的文字这是倾斜的文字`这是斜体加粗的文字这是加删除线的文字
引用123> 引用>> 引用>>> 引用
引用
引用
引用
分割线1234-------********
图片12格式:参考:
超链接1 ...
GameFramework 底层解析
对GF的源码解析,学习设计思路,学习代码规范 GF官网 GF-API看了GF的源码,感觉自己之前写的代码都是一堆垃圾!!!源码阅读建议:与StarForce项目一同阅读
Base层数据处理器,序列化工具,Log,事件池,引用池,任务代理池,其他扩展:Action,Func,变量封装(用于自定义数据结构),自定义链表
DataProvider 数据处理器主要细节只需要看IDataProvider,IDataProviderHelper的实现上IDataProvider,IDataProviderHelper主要实现2个接口:ReadData,ParseData
IDataProvider 从ResourceManager中读取资源,为数据提供者
IDataProviderHelper负责对具体数据的解析,为数据提供者帮助接口,用户使用上只需要实现帮助类即可对于IDataProviderHelper可能会引起误区,这里的ReadData是在IDataProvider读取资源成功时调用,这时已经拿到了需要的资源,可以直接使用或者再主动调用ParseData解析数据再使用。
执行顺序如: ...
DOTS 详细介绍
DOTS概述DATA-ORIENTED TECH STACK(多线程数据导向型技术堆栈),是由ECS+JobSystem+Burst组成。
ECS (Entity Component System)JobSystemBurst (编译)
同时使用Unity.Mathematics以及JobSystem后使用[BurstCompile]标记,可使性能提升100倍以上。
项目中使用参考AngryBots_ECS项目Dots一些群体行为模板(鱼群等)一些文章
战斗系统
战斗系统概述
能力系统(Ability)
3C(camera,control,character)
AI系统
地图系统
能力系统(Ability)3C(camera,control,character)Camera相机
cinemachine
ControlCharacterAI系统
行为树
状态机
Goap行为树
状态机Goap地图系统
大地图
地形编辑器
天气系统
大地图地形编辑器天气系统参考自制独立游戏《石头》38分钟实机演示角色动作系统概述:战斗、3C相关弹刀等问题