我有蛋白质的分子模型,大量SCNSpheres
(原子)和SCNCapsules
(键)。我正在尝试减少内存使用量。
当我减少胶囊的capSegmentCount
和radialSegmentCount
时,我发现持久性内存使用会有很大的节省。当这些计数减少到默认值的四分之一时,内存仅为使用默认值的30%到45%。但是当我减少球体的分段数时,我发现内存几乎没有节省,可能是1 - 2%。正如所料,更高的分割产生更好的球体。可能会提高渲染速度,降低段数,我还没有测试过这个方面。
只是好奇,如果有人知道这里发生了什么。
编辑:在锁定评论后,我发现SCNSphere
被渲染为相同几何体的实例,而SCNCapsule
则没有。这是由于原子创建函数(SCNSphere
)具有void参数,但bond生成器(SCNCapsule
)采用长度参数,因此每个参数都是单独呈现的。