forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   2D-программирование (http://forum.boolean.name/forumdisplay.php?f=109)
-   -   Как сделать? (http://forum.boolean.name/showthread.php?t=5533)

vadim2 09.01.2008 19:25

Как сделать?
 
Вложений: 1
Учась, и возник первый вопрос:
Как заставить спрайт лететь так, как показано на рисунке?

jimon 09.01.2008 19:40

Ответ: Как сделать?
 
x = x0 + Ux * t
y = y0 + Uy * t - (g * t^2) / 2

g - гравитация = 10
t - время в секундах

vadim2 09.01.2008 19:41

Re: Как сделать?
 
Спасибо.

moka 09.01.2008 19:44

Ответ: Как сделать?
 
Школьная математика, нужно поймать зависимость. Тут она идёт между Градусом и скоростью полётом, а так-же направлением (вверх\вниз).
И так, чем сильнее скорость тем меньше идёт уклон по Pitch. Чем перпендикулярнее летит тем тоже меньше идёт уклон (тем ресче он будет). Можно воспользоваться корнем, и связать со скоростью полёта. В общем это 8 класс, графики. :)

vadim2 09.01.2008 20:11

Re: Как сделать?
 
Вобщем. Я в классе с хим. био уклоном :) . У нас математица по несколько недель не бывает(и замену не дают). Так чтоя в математике не силён :( . Можете хот маленький кусочек кода написать?

HolyDel 09.01.2008 20:11

Ответ: Как сделать?
 
MoKa, ты чо? каким градусом? не вводи человека в заблуждение.
vadim2, Джимон ответил на твой вопрос.
если не хочется видеть парамтерическую системы, можеш использовать приращение к координате y. ну и инкрементирвоать приращение.

x=x+dx
y=y+dy
dy=dy-g

moka 09.01.2008 20:13

Ответ: Как сделать?
 
HolyDel, ну да, я говорил немного о другом, о 3д спрайте, извеняюсь.

vadim2 09.01.2008 20:17

Цитата:

Сообщение от HolyDel (Сообщение 73542)
x=x+dx
y=y+dy
dy=dy-g

Эээ. А dx как(извеняюсь если тупой вопрос)?

А можно сделать так. Если x>чего-то там :) , то dx=dx- чёто-там(наверное х-ню написал :( ). Что делать?

dimanche13 09.01.2008 20:51

Ответ: Как сделать?
 
Я так понял тебе полет снаряда надо узнать? Много по этой теме сказано. http://www.glenbrook.k12.il.us/gbssc...ors/u3l2c.html Честно сказать там стока формул... и ничего про программирование.
На скока я помню гравитация ~9.8

Данил 10.01.2008 12:22

Ответ: Как сделать?
 
Цитата:

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

сделал так, как показано на рисунке оО ...

vadim2 10.01.2008 16:53

Re: Как сделать?
 
Спасибо.

Данил 10.01.2008 16:56

Ответ: Как сделать?
 

есть такая кнопочка ;)


Часовой пояс GMT +4, время: 20:57.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot