Мне нужно преобразовать код рисованного изображения в 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);