Показать сообщение отдельно
Старый 25.04.2014, 21:23   #6
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: Android game: Feel RoundAbout + механика игры

Буду рад узнать как это делается. Можно пример?
в 3д в юнити:

// Init
const float outOfLevelDist = 10;
const float tooCloseDist = 2;
float outOfLevelSqrDist = outOfLevelDist * outOfLevelDist;
float tooCloseSqrDist = tooCloseDist * tooCloseDist;
-----
// Update
float sqrDist = (birdPos - circlePos).sqrMagnitude;
if (sqrDist > outOfLevelSqrDist) улетели за пределы
if (sqrDist < tooCloseSqrDist) заехали в круг

Если круг находится в нуле, и считаем в 2д, то можно упростить до:

float sqrDist = birdPos.x*birdPos.x + birdPos.y*birdPos.y;
-----

разве простой триггер грузит больше постоянного вычисления дистанции?
по-твоему триггер будет работать быстрее 2х умножений и одного сложения в кадр?
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
slee (25.04.2014)