Показать сообщение отдельно
Старый 10.01.2008, 03:27   #3
FrankH
Разработчик
 
Регистрация: 09.12.2007
Сообщений: 376
Написано 83 полезных сообщений
(для 122 пользователей)
Re: Ограничение преремещения объекта областью видимости камеры

Х1L - координата ограничения нижняя-левая
Х1R - координата нижняя-правая
Х2L - координата верхняя-левая
Ymax - длина пути по вертикали (вперед)
Y - позиция обьекта по вертикали
X - позиция обьекта по горизонтали
DX=X1L-X2L - максимальное отклонение по иксу(с одной стороны)
Xo=DX /Ymax - отношение максимального отклонения к вертикальной координате
теперь в цикле:
XL=X1L-Y*Xo - отнимаем от левой координаты отношение соответственно У
XR=X1R+Y*Xo - прибавляем к правому ограничителю отношение к У
IF (KeyDown(LEFT)) And (X>XL) тогда двигаемся влево
IF (KeyDown(RIGHT)) And (X<XR) тогда двигаемся вправо
вот и все, должно работать при условии что камера смотрит четко вперед, т.е. углы ограничения зрения по сторонам одинаковы, хотя придумал на лету, потому мог где-то затупить..
tormoz опередил более простым вариантом
(Offline)
 
Ответить с цитированием