我有一种感觉,可可Quartz Compositions和GPU的组合不能由GPU来处理,并且会回退到软件渲染器,甚至如果核心图像正常“加速”。我将如何检测这种情况?检测QCView中的Quartz Composition是否会通过软件或硬件渲染
或者更一般地说,我如何检测到一台机器的功率太低,无法处理某个特定大小的某种成分,而无法实际播放该成分并测量FPS? (通过在隐藏窗口中播放构图来测量FPS不太可能奏效,因为QCView可能会检测到这种情况并优化整个操作或其中的一部分。即使它今天没有这样做,可能开始做与苹果的下一个更新 - 这将会是一个不可靠的解决方案)
更新:是彻底的我做了编写一些代码来测试渲染全分辨率组成有序了,但正确试图强制渲染与[self startRendering];[self snapshotImage];[self stopRendering];
发生。这花了一段时间,看起来很合理,直到结果表明慢速机器运行这个测试比快速机器更快。 ;)实际上,慢速机器在快速机器上以2.24 FPS和27 FPS的速度进行组合。
还有一些来自Apple的示例代码glcheck.c。尽管如此,根据一份清单工作感觉很不好。如果列表不完整,包括所有已知的慢速Mac GPU?甚至全面禁止英特尔感觉不对 - 也许在5年左右时间内,他们将被赶上足以运行今天的应用程序。 ;)尽管如此,还没有找到更好的解决方案。 – 2011-02-13 02:29:02