forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   3D-программирование (http://forum.boolean.name/forumdisplay.php?f=12)
-   -   аркадная FPS, прыжок и гравитация (http://forum.boolean.name/showthread.php?t=6029)

DMX 18.06.2008 14:01

аркадная FPS, прыжок и гравитация
 
Вложений: 1
Помогите пожалуйста реализовать прыжок и гравитация. Только не с помощью ТРАНСЛЕЙТ ИНИТИ 0,1,0 :) .
Гравитацию так чтобы можно было подниматься по ступенькам и наклонным плоскостям, но не так чтобы под 70 градусов )). Примерно хотелосьбы как в МАСТ ДАЙ 2:rolleyes: . Помогите пожалуйста, вот код.

moka 18.06.2008 14:15

Ответ: аркадная FPS, прыжок и гравитация
 
DMX, Очень заезжанная тема, на форуме обсуждалась неоднократно..

DMX 18.06.2008 15:26

Re: аркадная FPS, прыжок и гравитация
 
Я понимаю что заезжанная но сколько ищу не могу найти нармального ответа. Дай те тогда штоль ссылочку.:) Не лучше всё таки помогите:rolleyes:

HolyDel 18.06.2008 19:06

Ответ: аркадная FPS, прыжок и гравитация
 
а чем translateentity 0,-1,0 не устраивает?

DMX 18.06.2008 19:32

Re: аркадная FPS, прыжок и гравитация
 
тем что ты не сможешь подниматься по ступенькам и уткнёшся в первыйже выступ.

Я тут сделал пару набросков помогите оптемизировать плиз))

Код:

Graphics3D 1440,900,32,1
AppTitle "FPS"
SetBuffer BackBuffer()
HidePointer
SetFont LoadFont("Tahoma",14)
Global player
Global camera
Global level
Global mvx#,mvz#
Const TypePlayer=1
Const TypeLevel=2
Function create_player()
player=CreatePivot()
EntityRadius player,4.5,6
RotateEntity player,0,180,0
PositionEntity player,0,8,0
EntityType player,TypePlayer

camera=CreateCamera(player)
CameraClsMode camera,False,True
PositionEntity camera,0,0,0
MoveEntity camera,0,1.2,0
CameraRange camera,.1,10000
End Function
Function load_level()
level=LoadMesh("test.b3d")
PositionEntity level,0,0,0
ScaleEntity level,10,10,10
EntityType level,TypeLevel
light=CreateLight()
End Function
Collisions TypePlayer,TypeLevel ,2,3
create_player()
load_level()
While Not KeyHit(1)

mxs#=MouseXSpeed()/4.0
mys#=MouseYSpeed()/4.0
MoveMouse GraphicsWidth()/2,GraphicsHeight()/2
camxa#=camxa-mxs
camya#=camya+mys
If camya<-70 Then camya=-70
If camya>70 Then camya=70
RotateEntity player,0,camxa,0
RotateEntity camera,camya,0,0
MoveEntity player,0,mvy#,0
If EntityCollided(player, TypeLevel) Then
gravity#=0.1 mvy#=0 jumping=0
Else
gravity#=0.5
EndIf
jumpvel#=0.65
If KeyDown(30) Then mvx=mvx-.1
If KeyDown(32) Then mvx=mvx+.1
If KeyDown(17) Then mvz=mvz+.1
If KeyDown(31) Then mvz=mvz-.1

mvx=mvx/1.2
mvz=mvz/1.2

MoveEntity player,mvx,0,mvz
If jumping=0
If KeyDown(57) Then mvy#=jumpvel# jumping=1
TranslateEntity player,0,-gravity#,0
EndIf
If jumping=1
mvy#=mvy#-gravity#*0.1
EndIf
UpdateWorld
RenderWorld
Text 10,35, "Position of player: "
Text 20,50, "X = " + EntityX(player)
Text 20,65, "Y = " + EntityY(player)
Text 20,80, "Z = " + EntityZ(player)

Text 10,105, "Poligons = "+TrisRendered()
Flip
Wend
End


HolyDel 18.06.2008 19:38

Ответ: аркадная FPS, прыжок и гравитация
 
не уткнешся. если радиус плеера больше чем размер ступеньки. лучше делать в 1.41 раза больше ступеньки минимум.
в прмиере Castle же все описано?

DMX 18.06.2008 19:51

Re: аркадная FPS, прыжок и гравитация
 
аааа я не знал но всёравно дюже приметивно.
Помоги лучше вот с этим кодом кода меняю If KeyDown(57) на Hit у меня чёто не понятное выходит и когда стаю рядом со стеноя то я просто по ней прыгаю в верх не падая всё дело в этой строчке If EntityCollided(player, TypeLevel) ))

DMX 18.06.2008 23:17

Re: аркадная FPS, прыжок и гравитация
 
:wallbash: :wallbash: :wallbash: я уже всё перепробовал ну помогитеже реальзовать нормальный прыжок и гравитацию так чтобы и по стенам не прыгать. Помойму на форуме нет нармального кода:wallbash:

tormoz 18.06.2008 23:34

Ответ: аркадная FPS, прыжок и гравитация
 
поставь условие на прыжок только при коллизии
при коллизии определяй вектор, и если он не в землю, прыжок отключай

DMX 19.06.2008 11:12

Re: аркадная FPS, прыжок и гравитация
 
? принцип понял. а можно кодик ))

moka 19.06.2008 11:14

Ответ: аркадная FPS, прыжок и гравитация
 
Тьфу ты блин.
DMX - убейся, продолжай копи-пастить. Сколько уже времени здесь тебя вижу а ты всё нубай! Продолжай в том же духе, не думай своими мозгами, не развивай в себе кодера, не нада, просто убейся.

Закройте эту тему нафиг!

DMX 19.06.2008 11:29

Re: аркадная FPS, прыжок и гравитация
 
ааааааааа не убьюсь!!! )) не влом помоги

HolyDel 19.06.2008 11:36

Ответ: аркадная FPS, прыжок и гравитация
 
Цитата:

не влом помоги
ну... 20$

GoodWin 19.06.2008 12:58

Ответ: аркадная FPS, прыжок и гравитация
 
Цитата:

Сообщение от HolyDel (Сообщение 81194)
ну... 20$

:-D лучше 20€

DMX 19.06.2008 14:25

Re: аркадная FPS, прыжок и гравитация
 
20 р:p :-D


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

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