如何使用image.draw(at:...)绘制UIImage。与GPU上下文?

时间:2018-07-06 07:34:48

标签: ios swift metal opengl-es-3.0

我对项目的结果感到非常沮丧,试图创建我的第一个绘图iOS应用程序。

我使用苹果的示例代码SpeedSketch作为参考

https://developer.apple.com/library/archive/samplecode/SpeedSketch/Introduction/Intro.html

使用下面的代码绘制效果很好,笔触在我的手指下顺畅地滑动。

context.setLineCap(.round)
                        context.move(to: fromSample.location)
                        context.addLine(to: toSample.location)
                        context.strokePath()

当我尝试使用UIImage(带有Alpha通道的.png)绘制笔触时,问题就开始了

 myBrushAlpha.draw(at: fromSample.location)

实时显示出错,尤其是使用更大的画笔大小时。 我认为问题是由CPU渲染引起的。 (使用更大的笔刷大小-更大的UIImage绘图,CPU一直高达94%)

canvas.setneedsDisplay()也无法解决此问题。

绘制时

drawing

用户从屏幕上释放指尖

releaseFinger

0 个答案:

没有答案