как сделать Прыжок?
|
|
CostUm | Дата: Воскресенье, 25 Мая 2008, 14:37 | Сообщение # 1 |
![CostUm](http://igrostroenie.my1.ru/avatar/91/964234.gif) MegaNoob on Igrostroenie.ru
Группа: Участники
Сообщений: 269
Награды: 0
Замечания: 40%
Статус: ![](/on.gif)
| вообщем хачу для своей игры сделать прыжок, игра от 3-его лица, а как осуществить мою мысль я ненаю((
|
|
| |
Systemque | Дата: Воскресенье, 25 Мая 2008, 14:39 | Сообщение # 2 |
Продвинутый
Группа: Пользователи
Сообщений: 187
Награды: 0
Замечания: 0%
Статус: ![](/on.gif)
| CostUm, ну во первых сделай анимацию прыжка для персонажа
|
|
| |
CostUm | Дата: Воскресенье, 25 Мая 2008, 14:47 | Сообщение # 3 |
![CostUm](http://igrostroenie.my1.ru/avatar/91/964234.gif) MegaNoob on Igrostroenie.ru
Группа: Участники
Сообщений: 269
Награды: 0
Замечания: 40%
Статус: ![](/on.gif)
| ну а дальше??? я говору как в Блитце не АНИМИРОВАТь а реализовать грубо говоря, пОЛЁТ, тока прыжок))
|
|
| |
CostUm | Дата: Воскресенье, 25 Мая 2008, 16:37 | Сообщение # 4 |
![CostUm](http://igrostroenie.my1.ru/avatar/91/964234.gif) MegaNoob on Igrostroenie.ru
Группа: Участники
Сообщений: 269
Награды: 0
Замечания: 40%
Статус: ![](/on.gif)
| спс больФое!
|
|
| |
Robat64 | Дата: Понедельник, 26 Мая 2008, 00:02 | Сообщение # 5 |
![Robat64](http://igrostroenie.my1.ru/avatar/61/818594.jpg) Продвинутый
Группа: Участники
Сообщений: 153
Награды: 0
Замечания: 20%
Статус: ![](/on.gif)
| BMX, Твой код не будет работать.
|
|
| |
CostUm | Дата: Понедельник, 26 Мая 2008, 12:56 | Сообщение # 6 |
![CostUm](http://igrostroenie.my1.ru/avatar/91/964234.gif) MegaNoob on Igrostroenie.ru
Группа: Участники
Сообщений: 269
Награды: 0
Замечания: 40%
Статус: ![](/on.gif)
| это уже все понели..!
|
|
| |
Студент | Дата: Понедельник, 26 Мая 2008, 16:33 | Сообщение # 7 |
Группа: Гости
| я даже больше скажу )) он не только не будет работать, но не будет работать даже по ASoftware варианту. там же KeyHit
|
|
| |
Студент | Дата: Понедельник, 26 Мая 2008, 17:52 | Сообщение # 8 |
Группа: Гости
| чо тут делать то? if on_land and KeyDown(KEY_JUMP) dy#=2 endif d#=d#-0.1 translateentity player,0,dy,0 on_land=0 /.../тут смотрим, если плеер стоит на земле, то on_land=1
|
|
| |
Студент | Дата: Понедельник, 26 Мая 2008, 19:51 | Сообщение # 9 |
Группа: Гости
| Quote Причем тут d#=d#-0.1? гравитация
|
|
| |
Прохожий | Дата: Вторник, 27 Мая 2008, 09:13 | Сообщение # 10 |
Группа: Гости
| вот держи, алгоритм мой. 3 дня парился ;это вписать в начале Global gravity#=-10, jump=0, pryzhok=0, dec=0 ;вот это все записать в цикл ;--------------------------; If KeyHit(57) jump=1 If jump=1 And dec=0 Then pryzhok=pryzhok+1 If Not (pryzhok=30) Then TranslateEntity player,0,20,0 EndIf If pryzhok=30 dec=1 EndIf If (dec=1) Then pryzhok=pryzhok-1 If pryzhok=0 jump=0 EndIf If jump=0 dec=0 TranslateEntity player,0,gravity#,0 ;--------------------------; у меня все работает. учитана гравитация.
|
|
| |
Прохожий | Дата: Вторник, 27 Мая 2008, 23:13 | Сообщение # 11 |
Группа: Гости
| Прохожий, мда по твоему методу парка серьезная с коллизиями будет
|
|
| |
Прохожий | Дата: Среда, 28 Мая 2008, 16:42 | Сообщение # 12 |
Группа: Гости
| Забей себе кол в жопу и прыгай мля
|
|
| |
Прохожий | Дата: Среда, 28 Мая 2008, 16:44 | Сообщение # 13 |
Группа: Гости
| Мдя... для прыжка уже и физика нужна... без неё прям ну нуникак прыжок не сделать....
|
|
| |
Myster | Дата: Среда, 28 Мая 2008, 22:24 | Сообщение # 14 |
![Myster](http://igrostroenie.my1.ru/avatar/34/117875.jpg) Профи
Группа: Участники
Сообщений: 241
Награды: 0
Замечания: 0%
Статус: ![](/on.gif)
Команда: Wind Team
| Не надо никакой движок. Ведь и движки кто-то писал вручную))) Короче я традиционным примером пользуюсь (немного добавил от себя), и у меня все атлычно работает, даже на одной плоскости тупо не виснет (бывает забывают еще переменную, поэтому пока прыжок не отожмут, вниз не полетит): Code MoveEntity player,0,yvel#*.4,0
If EntityCollided(player, TERRT) Then gravity#=0.3 colis=True Else gravity#=.5 colis=False EndIf
walking=0 jumpvel#=1
If jumping=0 If KeyHit(57) And colis=True Then yvel#=jumpvel# jumping=1 PlaySound sJump1 TranslateEntity player,0,-Gravity#,0 EndIf If jumping=1 yvel#=yvel#-gravity#*0.3 by#=by#+yvel# EndIf
Wind Team Wind Team Development Моделер, визуализатор, художник, дизайнер, аниматор, программист... )
Сообщение отредактировал Myster - Среда, 28 Мая 2008, 22:25 |
|
| |
DarkMedveD | Дата: Суббота, 31 Мая 2008, 13:57 | Сообщение # 15 |
![DarkMedveD](http://igrostroenie.my1.ru/avatar/75/700466.jpg) Профи
Группа: Участники
Сообщений: 260
Награды: 0
Замечания: 0%
Статус: ![](/on.gif)
Профессия: Програмист,немного моделлер
Команда: Сам Себе НачальниГ
Проектов: 2
| Robat64, ты тормоз - все это дно поняли
Это и есть Zoom-Zoom
|
|
| |
uOCuqp_kab3on | Дата: Среда, 29 Октября 2008, 11:26 | Сообщение # 16 |
![uOCuqp_kab3on](http://src.ucoz.net/a/05/0843.jpg) Продвинутый
Группа: Участники
Сообщений: 182
Награды: 0
Замечания: 0%
Статус: ![](/on.gif)
Профессия: БЫВШИЙ МАТЕРШИННИК ИЗ ШИННИКА
Команда: Веселый Молочник(молоко)
Проектов: ведьться под наблюдением один
| непойму чото я нечо толи в прыжке дело толи в коллизииCode Graphics3D 1280,1024,32,1 SetBuffer BackBuffer() Const T_player=1,T_terrain=2 Collisions T_player, T_terrain,2,3 player = CreateSphere() PositionEntity player,0,2,0 EntityType player, T_player Camera=CreateCamera(player) CameraRange Camera,0.1,1000 PositionEntity camera ,0,5,-10 Light=CreateLight(5,Camera) LightRange Light,5 terrain=LoadMesh("mesh.b3d")
dom=LoadMesh("dom.b3d") RotateEntity dom,20,0,0 PositionEntity dom,0,-253,0 EntityType terrain, T_terrain PositionEntity terrain ,-300,-500,-300
While Not KeyDown(1) mxspd#=MouseXSpeed()*0.25 myspd#=MouseYSpeed()*0.25 MoveMouse GraphicsWidth()/2,GraphicsHeight()/2 campitch#=EntityPitch(player)+myspd# If campitch#<-85 Then campitch#=-85 If campitch#>85 Then campitch#=85 RotateEntity player,campitch#,EntityYaw(player)-mxspd#,EntityRoll(player) yv#=EntityY(player)-ey ey=EntityY(player)
If KeyHit(57) Then yv=49 MoveEntity player,0,yv#-2,0 If KeyDown(17) MoveEntity player,0,0,.2 If KeyDown(31) MoveEntity player,0,0,-.2 If KeyDown(32) MoveEntity player,.2,0,0 If KeyDown(30) MoveEntity player,-.2,0,0 If KeyDown(42) speed#=speed#+.1 If Not KeyDown(42)speed#=0 If speed#>2 speed#=2 If speed#>3 speed#=3 MoveEntity player,0,0,speed#
RenderWorld
UpdateWorld
Flip CameraRange Camera,0.1,1000 Wend End а может быть и в террайне
http://blitz3dgame2008.ucoz.ru/ Мой сайт заходите плиз хоть кагданибудь
|
|
| |
uOCuqp_kab3on | Дата: Среда, 29 Октября 2008, 12:12 | Сообщение # 17 |
![uOCuqp_kab3on](http://src.ucoz.net/a/05/0843.jpg) Продвинутый
Группа: Участники
Сообщений: 182
Награды: 0
Замечания: 0%
Статус: ![](/on.gif)
Профессия: БЫВШИЙ МАТЕРШИННИК ИЗ ШИННИКА
Команда: Веселый Молочник(молоко)
Проектов: ведьться под наблюдением один
| ктонибудь подскожите код чтобы игрок(тоесть сфера) была выше уровня тераайна на 1 а то уменя сфер наполовину в созданом террайне
http://blitz3dgame2008.ucoz.ru/ Мой сайт заходите плиз хоть кагданибудь
|
|
| |
uOCuqp_kab3on | Дата: Четверг, 30 Октября 2008, 12:22 | Сообщение # 18 |
![uOCuqp_kab3on](http://src.ucoz.net/a/05/0843.jpg) Продвинутый
Группа: Участники
Сообщений: 182
Награды: 0
Замечания: 0%
Статус: ![](/on.gif)
Профессия: БЫВШИЙ МАТЕРШИННИК ИЗ ШИННИКА
Команда: Веселый Молочник(молоко)
Проектов: ведьться под наблюдением один
| Quote PositionEntity sphere,0,1,0 нет ето я пытался делать ,непомогло,тоесть получаеться так что сфера появляеться выше таерайна на один и падает вниз а мне надо чтобы она всегда была на 1 выше
http://blitz3dgame2008.ucoz.ru/ Мой сайт заходите плиз хоть кагданибудь
|
|
| |
uOCuqp_kab3on | Дата: Четверг, 30 Октября 2008, 13:12 | Сообщение # 19 |
![uOCuqp_kab3on](http://src.ucoz.net/a/05/0843.jpg) Продвинутый
Группа: Участники
Сообщений: 182
Награды: 0
Замечания: 0%
Статус: ![](/on.gif)
Профессия: БЫВШИЙ МАТЕРШИННИК ИЗ ШИННИКА
Команда: Веселый Молочник(молоко)
Проектов: ведьться под наблюдением один
| Quote Не читал тему, поэтому извиняйте, если повторяюсь. На C++ я делал прыжок вот так: Code int rast, a; В функции определения нажатой клавиши: Code if( Key == VK_SPACE ) { if(rast==0) {a-=24;} } На таймере: Code rast = p->Top-( gg->Top+gg->Height ); // выясняем положение относительно пола, которым служит TPanel if( a > rast ){ a=rast; } // если на полу if( a < rast ){ a+=1.5; } // если не на полу, то увеличим скорость падения gg->Top = gg->Top+a; P.S. gg - перс, p - пол. Top - положение верхней точки, Height - высота. Чувак прыгает весьма реалистично. С замедлением и ускорением. Транслируйте в Blitz и довольствуйтесь ГДЕ ПЕРЕВОДЧИКИ ЗЮ сори за флуд
http://blitz3dgame2008.ucoz.ru/ Мой сайт заходите плиз хоть кагданибудь
|
|
| |
uOCuqp_kab3on | Дата: Четверг, 30 Октября 2008, 14:53 | Сообщение # 20 |
![uOCuqp_kab3on](http://src.ucoz.net/a/05/0843.jpg) Продвинутый
Группа: Участники
Сообщений: 182
Награды: 0
Замечания: 0%
Статус: ![](/on.gif)
Профессия: БЫВШИЙ МАТЕРШИННИК ИЗ ШИННИКА
Команда: Веселый Молочник(молоко)
Проектов: ведьться под наблюдением один
| я с++ незнаю
http://blitz3dgame2008.ucoz.ru/ Мой сайт заходите плиз хоть кагданибудь
|
|
| |