arrays - 用 CAMetalLayer 数组替换 CALayer 数组
问题描述
我有一个绘画应用程序,它可以在任何给定时间CALayer
通过UIImageView
. 我得到了合理的性能,但我想知道使用CAMetalLayer
s 是否有任何性能优势。特别是,我很好奇我是否可以从将纹理直接传送到 each 中受益,并且一次堆叠/显示这么多 sCAMetalLayer
是否会有任何硬件考虑。CAMetalLayer
在实施之前我应该考虑什么问题,我应该继续使用UIImageView
(或其他)来托管这些新的 Metal 支持的子层吗?任何想法将不胜感激。
解决方案
那是行不通的。您应该跟踪您的中风数据。例如,一个点数组将是一个笔画,然后你应该有一个这些笔画的数组。它可能只是点 (x, y) 或更可能还包含颜色、大小和其他变量。你应该知道你需要什么来描述你的中风。
然后用它来绘制(在这些位置盖章)。当您想撤消时,只需从头开始绘制数组中的所有笔划,直到 n-1、n-2 等......
推荐阅读
- flutter - Flutter, Flow inside Align 不响应对齐规则
- java - 我们可以将 Java 中的 DB ResultSet 发送到另一台服务器,以便从该单独的服务器获取行吗?
- c++ - Make尝试将目标编译为文件
- python-3.x - 在 Python 中签署 SAML 响应
- javascript - 基于传递的属性“元素”渲染 SVG
- python - 如何将用户输入写入 python 中的文件?
- node.js - TypeORM MongoDB 填充
- python - ModuleNotFoundError:没有名为“的模块”
' - python - tweepy上的视频上传
- python - 生成行中没有 2 个零或 3 个 1 的二进制序列