【Unity DOTS1.0】学习之路---基础课14-16笔记

Blob Asset:是Unity中存储数据的一种格式,为了流式传输,但仅支持非托管数据(和Shared Component有区别),同时它也是一种只读数据,这表面了我们需要将Entity中的组件数据分离,哪些数据需要Update就不可以放在Blob中,只保留那些不需要改变的数据。Blob Asset的目的在于存储一份数据可以供给多个相同Entity的Component使用,减少了数据冗余。
在这里插入图片描述
由于DOTS中我们的数据都是结构体组件形式存储,所以我们无法直接使用Blob Asset,需要通过调用BlobAssetReference上的接口处理。
在这里插入图片描述
对于Blob Asset和Share Component的对比,如下图:
在这里插入图片描述

在这里插入图片描述

参考链接(扩展阅读):Unity DOTS 1.0官方API文档

请结合视频的示例工程阅读,其中需要注意的点是分配的引用内存为永久的,如下图:
在这里插入图片描述

=========================================================================
Cleanup Component:简单理解就是销毁一个Entity上除Cleanup Component外的其他组件,而且重新实例化的时候不会生成新的World。
在这里插入图片描述
两种Pref方法去实现(建议使用第一种,虽然第二种很好理解):
在这里插入图片描述
建议结合案例Lesson10观看视频。
总的来说,这一节课是比较简单的(相对)。

=========================================================================

Chunk Component:按照Chunk存储而不是Entity存储的组件,同样继承IComponentData。区别是添加和移除的API不同,分别为AddComponentData和AddChunkComponentData。同时使用上的API也有所不同,具体可以查看官方文档。
在这里插入图片描述
和Shared Component一样,存储在同个World的不同Chunk中(Chunk Component存储在External Components中),但是Shared是以数组的形式存储的,但是Chunk Component是以单个存储的。

在这里插入图片描述
有点难0.0~🤮

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值