Как конвертировать рисунок UIView в GLKView на Swift? - PullRequest
0 голосов
/ 02 апреля 2019

Мне нужно преобразовать код рисованного изображения в UIView в код в GLKView.

Я реализовал 2D-плеер аватара с 30fps в UIView.Но приложение очень медленное, а анимация не плавная.Я получил предложение преобразовать его в openGL.Но у меня нет опыта работы с openGL.Я уже изменил пользовательский UIView на GKLView.Вопрос только в том, как преобразовать преобразование CGContext в преобразование CIContext.

// context: CGContext

var transForm = CGAffineTransform.identity
transForm = transForm.translatedBy(x: CGFloat(dx * scale), y: CGFloat(dy * scale))
transForm = transForm.scaledBy(x: CGFloat(scale), y: CGFloat(scale))
transForm = transForm.rotated(by: CGFloat(-dang ))
transForm = transForm.scaledBy(x: CGFloat(scaleX), y: CGFloat(scaleY))
transForm = transForm.translatedBy(x: CGFloat(-ox + vdw / 2), y: CGFloat(-oy + vdh / 2))
transForm = transForm.scaledBy(x: CGFloat(fh), y: CGFloat(-fv))
context.concatenate(transForm)
let src:CGRect = CGRect(x: CGFloat(sx), y: CGFloat(sy), width: CGFloat(sw), height: CGFloat(sh))
let dest:CGRect = CGRect(x: CGFloat(-vdw/2), y: CGFloat(-vdh/2), width: CGFloat(vdw), height: CGFloat(vdh))
let cropedImage:CGImage! = img.cropping(to: src)
context.draw(cropedImage, in: dest, byTiling: false);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...