渲染和 CPU 是不是忽略了屏幕外动画?
Posted
技术标签:
【中文标题】渲染和 CPU 是不是忽略了屏幕外动画?【英文标题】:Are offscreen animations ignored by rendering and CPU?渲染和 CPU 是否忽略了屏幕外动画? 【发布时间】:2012-02-23 04:57:08 【问题描述】:只是想知道 Cocos 如何为屏幕外的 CCSprite(包括动画中间的那些)管理 CPU 周期和图形引擎。如果您有许多动画精灵在屏幕上出现和离开,我可以检查并在每个动画离开屏幕时停止它,然后在它即将重新打开时重新启动它,但我想知道这是否有必要?
假设您有一个包含一堆图层的图层,并且您使图层不可见,但不要停止精灵动画。他们还会使用 CPU 时间吗?
【问题讨论】:
【参考方案1】:我刚刚做了一个快速测试(好问题:)),在一个游戏中,我可以在一个大地图上滑动屏幕,其中包含执行“空闲”动画的士兵图像。它们在屏幕外时继续运行(我将 CCCallFunc 以一个永远重复的顺序添加到一个简单的记录选择器中)。
我怀疑当对象不可见时它们也会运行。这有点道理,尤其是对于动画。如果你看看我的用例,如果动画被停止,如果用户将士兵滑入和滑出视野,可能会导致认知脱节,尤其是当士兵在地图上散步时——他实际上可以走进去用户未与屏幕进行任何交互的视图。
【讨论】:
有趣;因此 CPU 可能正在处理这些动画,即使它们不在屏幕上。但我认为图形引擎根本不参与,除非它们在屏幕上,对吧 @andrewx : 我偶然发现的新线程,很多关于 GPU 的有趣内容,精灵的处理成本等。***.com/questions/9502586/…以上是关于渲染和 CPU 是不是忽略了屏幕外动画?的主要内容,如果未能解决你的问题,请参考以下文章