2011-01-05 3 views
0

Я пытаюсь сделать систему масштабирования для игры на C#/XNA, над которой я работаю. То, что у меня есть, - это положение камеры, текущий масштаб камеры (хранится как плавающий) и экземпляр GestureSample.Как правильно использовать функции Pinch в Windows Phone 7 для увеличения/уменьшения эффекта от изображений?

Я хватаю оба положения щепоток и нахожу их центр, чтобы сделать мой прицел, тогда, если человек пытается зажать внутрь/наружу, я сравниваю длину расстояния между двумя пальцами до и после чтобы увеличить или уменьшить масштаб.

Этот вид работ, но он чувствует себя немного плавающим. Я также не понял, как я собираюсь сделать его приближенным к позиции, где пользователь зажимает. Я получаю среднюю точку пинча и пытаюсь заставить камеру двигаться в этом направлении, поскольку увеличение увеличивается, но иногда камера добирается до этой точки до 100% увеличения, а иногда и никогда.

Это все проблемы с алгоритмом, я полагаю, что я хочу знать, есть ли простой прямой способ сделать это, о котором я не знаю?

ответ

1

Все, что вам нужно сделать, это предоставить вашей камере целевое местоположение (то есть «среднюю точку» вашего пинча) и ускорение ... камера должна, независимо от жестящего пальца, двигаться к цели место нахождения. Таким образом, камера просто закончится в нужном месте ... и, кроме того, у вас есть новая функция для вашей камеры :-)

Смежные вопросы