Понедельник, 23 Декабря 2024, 19:43

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Как сделать плавное затухание движения?
mobipakДата: Вторник, 10 Июля 2012, 09:34 | Сообщение # 1
Подрывник
Сейчас нет на сайте
Вот например так - нажимаю клавишу Space, объект начинает движение по заданным координатам. Отжимаешь клавишу Space - объект потихоньку останавливается. Можно ещё, чтобы объект можно было сразу остановить с помощью какой-нибудь кнопки (например лев.Shift). Подскажите, как так сделать? help
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
постоянный участник
Сейчас нет на сайте
Не хочу разводить срач, признаю что ты прав biggrin но прежде чем говорить о его функциях сначала следуют его открыть.

mobipak, relased - клавиша отпущена. pressed - клавиша нажата(click). down - клавиша зажата.


Подсказки в ААА играх:
Чтобы убить - стреляйте
Чтобы не убить - не стреляйте
Подсказки в Инди играх:
ыаа ыбб беб ыб


Сообщение отредактировал voltermag - Четверг, 12 Июля 2012, 08:31
mobipakДата: Четверг, 12 Июля 2012, 08:42 | Сообщение # 11
Подрывник
Сейчас нет на сайте
voltermag, о, спасибо
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг