|
09.01.2008, 19:25
|
#1
|
Знающий
Регистрация: 08.06.2006
Сообщений: 304
Написано 3 полезных сообщений (для 8 пользователей)
|
Как сделать?
Учась, и возник первый вопрос:
Как заставить спрайт лететь так, как показано на рисунке?
|
(Offline)
|
|
09.01.2008, 19:40
|
#2
|
|
Ответ: Как сделать?
x = x0 + Ux * t
y = y0 + Uy * t - (g * t^2) / 2
g - гравитация = 10
t - время в секундах
|
|
|
09.01.2008, 19:41
|
#3
|
Знающий
Регистрация: 08.06.2006
Сообщений: 304
Написано 3 полезных сообщений (для 8 пользователей)
|
Re: Как сделать?
Спасибо.
|
(Offline)
|
|
09.01.2008, 19:44
|
#4
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: Как сделать?
Школьная математика, нужно поймать зависимость. Тут она идёт между Градусом и скоростью полётом, а так-же направлением (вверх\вниз).
И так, чем сильнее скорость тем меньше идёт уклон по Pitch. Чем перпендикулярнее летит тем тоже меньше идёт уклон (тем ресче он будет). Можно воспользоваться корнем, и связать со скоростью полёта. В общем это 8 класс, графики.
|
(Offline)
|
|
09.01.2008, 20:11
|
#5
|
Знающий
Регистрация: 08.06.2006
Сообщений: 304
Написано 3 полезных сообщений (для 8 пользователей)
|
Re: Как сделать?
Вобщем. Я в классе с хим. био уклоном . У нас математица по несколько недель не бывает(и замену не дают). Так чтоя в математике не силён . Можете хот маленький кусочек кода написать?
|
(Offline)
|
|
09.01.2008, 20:11
|
#6
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: Как сделать?
MoKa, ты чо? каким градусом? не вводи человека в заблуждение.
vadim2, Джимон ответил на твой вопрос.
если не хочется видеть парамтерическую системы, можеш использовать приращение к координате y. ну и инкрементирвоать приращение.
x=x+dx
y=y+dy
dy=dy-g
|
(Offline)
|
|
09.01.2008, 20:13
|
#7
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: Как сделать?
HolyDel, ну да, я говорил немного о другом, о 3д спрайте, извеняюсь.
|
(Offline)
|
|
09.01.2008, 20:17
|
#8
|
Знающий
Регистрация: 08.06.2006
Сообщений: 304
Написано 3 полезных сообщений (для 8 пользователей)
|
Сообщение от HolyDel
x=x+dx
y=y+dy
dy=dy-g
|
Эээ. А dx как(извеняюсь если тупой вопрос)?
А можно сделать так. Если x>чего-то там , то dx=dx- чёто-там(наверное х-ню написал ). Что делать?
Последний раз редактировалось Magus, 09.01.2008 в 21:20.
|
(Offline)
|
|
09.01.2008, 20:51
|
#9
|
Мастер
Регистрация: 19.03.2007
Сообщений: 1,039
Написано 153 полезных сообщений (для 252 пользователей)
|
Ответ: Как сделать?
Я так понял тебе полет снаряда надо узнать? Много по этой теме сказано. http://www.glenbrook.k12.il.us/gbssc...ors/u3l2c.html Честно сказать там стока формул... и ничего про программирование.
На скока я помню гравитация ~9.8
|
(Offline)
|
|
10.01.2008, 12:22
|
#10
|
Модератор
Регистрация: 11.07.2007
Сообщений: 2,910
Написано 686 полезных сообщений (для 1,694 пользователей)
|
Ответ: Как сделать?
Global x:Float=640/2 , y:Float=480/2
Global speedx:Float=-.5, speedy:Float=4
Graphics 640,480
While Not KeyDown (Key_escape)
'Cls
Plot X,Y
If SpeedY>-2 Then
X:-SpeedX
Y:-SpeedY
SpeedY:-.05
End If
Flip
Wend
|
сделал так, как показано на рисунке оО ...
|
(Offline)
|
|
10.01.2008, 16:53
|
#11
|
Знающий
Регистрация: 08.06.2006
Сообщений: 304
Написано 3 полезных сообщений (для 8 пользователей)
|
Re: Как сделать?
Спасибо.
|
(Offline)
|
|
10.01.2008, 16:56
|
#12
|
Модератор
Регистрация: 11.07.2007
Сообщений: 2,910
Написано 686 полезных сообщений (для 1,694 пользователей)
|
Ответ: Как сделать?
есть такая кнопочка
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 08:42.
|