Я очень новичок в OpenGL и программировании с графическим элементом в целом.Как мне сделать что-то вроде анимации движения в OpenGL на iPhone?
В настоящее время у меня есть текстура, которая отображается с использованием вершин, которые генерируются другой частью кода - эти четыре точки, которые представляют углы, меняются несколько раз в секунду. По мере его реализации этот образ будет «появляться» в разных местах и формироваться по-разному, поскольку четыре угловые точки изменяются на таймере.
Что бы я хотел, чтобы объект быстро перемещался и менял форму, чтобы занять новые точки, заданные программой, - и я хотел бы, чтобы это произошло несколько гладко (так что это было бы немного поплавок между эти поставленные позиции/фигуры).
Есть ли способ сделать своего рода движение/форму, как в OpenGL? Если да, где я могу найти документацию или, еще лучше, примеры? У меня проблемы с поиском или пониманием такого рода вещей.
EDIT: ТАКЖЕ - У меня нет проблем с использованием другого метода, ему не нужно быть OpenGL. Это лучше сделать в Core Animation с помощью BasicAnimation? Если да, то где ресурсы для такого рода преобразований? Формы - четырехугольники, но не обязательно квадраты или прямоугольники, поэтому мне нужно было бы указать каждую угловую точку.
Благодарим вас за ответ! Я даже не думал просто писать код, чтобы получить промежуточные очки. Я не знаю, почему это не произошло со мной! Есть ли такая функциональность в других местах, таких как Core Animation? Возможно, мне вообще не нужно использовать OpenGL? Я просто беспокоюсь о накладных расходах и заставляю приложение отставать - он делает много работы, как сейчас. – Tom
Я ничего не знаю о Core Animation, но если у вас есть код, который дает вам одну точку, а затем дает вам совершенно другую точку, вам просто нужно интерполировать между этими двумя точками. Это довольно простой материал (найдите разницу между ними, решите, сколько вы хотите от этой разницы, которую хотите добавить в свою первую точку на кадр, добавьте ее в первую точку и продолжайте добавлять до тех пор, пока не достигнете второй точки [некоторое число кадров позже]) .. –