2800次的GetComponent,要2.45ms,正常吗?
8.1用long当key了,type.gethashcode这个消耗去掉了消耗应该会低不少
wanger 我去看看,感谢~
试了一下,有降低不少,但是数量多还是有点耗,然后如果是SortedDictionary更慢些,我还是用Dictionary。
耗不耗时要看你需求,你一帧调用才几十次,关心这个耗时干啥,才占多少百分比?
egametang 就是可能会在一帧中大量调用才发现耗时有点高了,之前没想到会耗时这么可观,所以就会可能打个标记的事都用Add一个Component来做,然后在AI中调用,如果怪物数量多起来,就会有明显的耗时了,所以对写法上可能就要做一些限制了。
gameall3d 打个标记,即使不AddComp,GetComp改字段,不也是一样有这个消耗吗?
Liquor 不是,因为本来逻辑就会Get一些Component,就是不用额外加个Component,就在原先Get的Component里加字段了,就少一次GetComponent
耗时的用EntityRef缓存即可