【UnityDOTS 十一】SharedComponent介绍

SharedComponent将共享组件的值存储在独立的数组中,每个Chunk通过Handle引用。修改共享组件值可能导致StructuralChange,即实体可能移动到已有相同值的Chunk或创建新Chunk。不推荐大量独立值的SharedComponent,以免每个Chunk仅存储一个Entity。每个实体的共享组件组合应独立,对应不同的ArcheType。
摘要由CSDN通过智能技术生成

SharedComponent介绍

SharedComponent内存图

在这里插入图片描述
共享组件的值数组在单独的SharedComponentDataArrary中。每个Chunk中有一个单独的Handle指向这个值。
所以这个Chunk中放的不只是ArcheType相同的Entity,他们所指向的ShareComponent值也是相同的。

同时修改一个Entity的shaderComponent值,会导致Structual Change发生。
要么会移到具有指向这个值的已有的Chunk中,要么新建一个Chunk来独立存储。

所以,不建议拥有大量独立值的ShareComponent存在,这样每个Chunk就只会放一个Entity了。

一个实体不建议具有多个共享组件之间的组合。每一个组合都是单独的ArcheType。

可以把共享组件的值,视作为一种类型来对待。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值