Как сделать плавное затухание движения?
|
|
mobipak | Дата: Вторник, 10 Июля 2012, 09:34 | Сообщение # 1 |
Подрывник
Сейчас нет на сайте
| Вот например так - нажимаю клавишу Space, объект начинает движение по заданным координатам. Отжимаешь клавишу Space - объект потихоньку останавливается. Можно ещё, чтобы объект можно было сразу остановить с помощью какой-нибудь кнопки (например лев.Shift). Подскажите, как так сделать?
|
|
| |
LetsOffBrains | Дата: Вторник, 10 Июля 2012, 09:37 | Сообщение # 2 |
Project SoRDeLKa
Сейчас нет на сайте
| При отпускании пробела начинать уменьшать скорость до нуля, с шифтом сразу снижать до нуля. Как снижать зависит от того с каким поведением движется твой объект.
|
|
| |
mobipak | Дата: Вторник, 10 Июля 2012, 18:49 | Сообщение # 3 |
Подрывник
Сейчас нет на сайте
| Ну вообще-то я передвигаю объект по координатам, при нажатии клавиши пробел я завожу таймер, отсчитывающий некоторое количество миллисекунд, и через эти миллисекунды передвигаю объект на определённое количество пикселей. Ну вот так: Добавлено (10.07.2012, 18:49) --------------------------------------------- Ну есть у меня идея: вот таймер отсчитывает определённое количество (x) миллисекунд (в данном случае 10), и когда проходит эти миллисекунды, он передвигает по этим координатам объект, и создаётся иллюзия движения. И вот в чём суть: есть событие, которое проверяет отпустилась ли клавиша Space, и нажималась ли она пред этим. Потом срабатывает таймер, который через определённое время начинает прибавлять миллисекунды (например, по 5 миллисекунд (x + 5) (Every (x=10) milliseconds, Every (x=15) milliseconds, Every (x=20) milliseconds и т.д.)), и так создаётся иллюзия затухания. Когда x достигает большого значения (например x=60), то срабатывает событие, которое останавливает таймер, и объект полностью останавливается. Идея довольно сложная. Но примерно так. Или можно более легко сделать?
|
|
| |
Злой_Ублюдок | Дата: Вторник, 10 Июля 2012, 18:51 | Сообщение # 4 |
Конструктороненавистник
Сейчас нет на сайте
| Заведи переменную Speed и после отжатия спейса уменьшай ее до нуля. Вот и все.
Боже, боже, которого-то в сущности и нет, до чего ты, которого на самом деле-то и нет, довел игродела?!
|
|
| |
mobipak | Дата: Среда, 11 Июля 2012, 14:07 | Сообщение # 5 |
Подрывник
Сейчас нет на сайте
| Думаешь, что это легко? Как проверить, что клавиша нажималась? ГГ же сразу останавливается
|
|
| |
Злой_Ублюдок | Дата: Среда, 11 Июля 2012, 14:10 | Сообщение # 6 |
Конструктороненавистник
Сейчас нет на сайте
| mobipak, ололо. Если в констракте нет возможности отловить отжатие кнопки, то это говно, а не инструмент разработки игр.
Боже, боже, которого-то в сущности и нет, до чего ты, которого на самом деле-то и нет, довел игродела?!
|
|
| |
SAMCRO | Дата: Среда, 11 Июля 2012, 16:05 | Сообщение # 7 |
частый гость
Сейчас нет на сайте
| Quote (Злой_Ублюдок) Если в констракте нет возможности отловить отжатие кнопки, то это говно, а не инструмент разработки игр. Все есть. Quote (mobipak) Или можно более легко сделать? Самое легкое сделать через поведения, если это решение удовлетворяет твоей задаче.
|
|
| |
voltermag | Дата: Среда, 11 Июля 2012, 18:19 | Сообщение # 8 |
постоянный участник
Сейчас нет на сайте
| Quote (Злой_Ублюдок) это говно Констракт хорошая среда, не гони тут. Если не можешь разобраться в нём, тогда программинг не для тебя.
Подсказки в ААА играх: Чтобы убить - стреляйте Чтобы не убить - не стреляйте Подсказки в Инди играх: ыаа ыбб беб ыб
|
|
| |
Злой_Ублюдок | Дата: Среда, 11 Июля 2012, 18:29 | Сообщение # 9 |
Конструктороненавистник
Сейчас нет на сайте
| Quote (voltermag) Констракт хорошая среда, не гони тут. Если не можешь разобраться в нём, тогда программинг не для тебя. Ты вообще читал, что я писал?
Quote (Злой_Ублюдок) Если в констракте нет возможности отловить отжатие кнопки, то это говно, а не инструмент разработки игр.
Я с ним не работал никогда, если что. Т.к. я презираю геймдев без кодинга.
Quote (voltermag) тогда программинг не для тебя Насмешил. Я программист в третьем поколении, кодинг не может быть "не моим".
Боже, боже, которого-то в сущности и нет, до чего ты, которого на самом деле-то и нет, довел игродела?!
Сообщение отредактировал Злой_Ублюдок - Среда, 11 Июля 2012, 18:33 |
|
| |
voltermag | Дата: Четверг, 12 Июля 2012, 08:30 | Сообщение # 10 |
постоянный участник
Сейчас нет на сайте
| Не хочу разводить срач, признаю что ты прав но прежде чем говорить о его функциях сначала следуют его открыть.
mobipak, relased - клавиша отпущена. pressed - клавиша нажата(click). down - клавиша зажата.
Подсказки в ААА играх: Чтобы убить - стреляйте Чтобы не убить - не стреляйте Подсказки в Инди играх: ыаа ыбб беб ыб
Сообщение отредактировал voltermag - Четверг, 12 Июля 2012, 08:31 |
|
| |
mobipak | Дата: Четверг, 12 Июля 2012, 08:42 | Сообщение # 11 |
Подрывник
Сейчас нет на сайте
| voltermag, о, спасибо
|
|
| |