首页 > 解决方案 > 用 CAMetalLayer 数组替换 CALayer 数组

问题描述

我有一个绘画应用程序,它可以在任何给定时间CALayer通过UIImageView. 我得到了合理的性能,但我想知道使用CAMetalLayers 是否有任何性能优势。特别是,我很好奇我是否可以从将纹理直接传送到 each 中受益,并且一次堆叠/显示这么多 sCAMetalLayer是否会有任何硬件考虑。CAMetalLayer

在实施之前我应该​​考虑什么问题,我应该继续使用UIImageView(或其他)来托管这些新的 Metal 支持的子层吗?任何想法将不胜感激。

标签: arraysuiimageviewcalayermetal

解决方案


那是行不通的。您应该跟踪您的中风数据。例如,一个点数组将是一个笔画,然后你应该有一个这些笔画的数组。它可能只是点 (x, y) 或更可能还包含颜色、大小和其他变量。你应该知道你需要什么来描述你的中风。

然后用它来绘制(在这些位置盖章)。当您想撤消时,只需从头开始绘制数组中的所有笔划,直到 n-1、n-2 等......


推荐阅读