forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   3D-программирование (http://forum.boolean.name/forumdisplay.php?f=12)
-   -   помогите плизз (http://forum.boolean.name/showthread.php?t=7356)

jc[wcr] 21.11.2008 12:14

помогите плизз
 
народ вот в чом вопрос вот вам кодик
Код:

mxspd#=MouseXSpeed()*0.25
myspd#=MouseYSpeed()*0.25
MoveMouse GraphicsWidth()/2,GraphicsHeight()/2 
campitch#=EntityPitch(head)+myspd#
If campitch#<-3 Then campitch#=-3
If campitch#>7 Then campitch#=7 
RotateEntity head,campitch#,EntityYaw(head)-mxspd#,EntityRoll(player)

ну ето код обзора мышой в пространстве и куда смотрити мышкой туда и перемещаеться
вопрос:как сделать например чтобы голова(head)шла токо по Y
тоесть в верх и низ,а player чтобы если повернуть мышкой вправо то поварачивался player и голова за ним

Colossus 21.11.2008 13:29

Ответ: помогите плизз
 
Кто нибуть что нибудь понял?!)))) поставь вопрос правильно)) т под пиши в тегэ кода

Yanez 21.11.2008 13:36

Ответ: помогите плизз
 
Если правильно понял твою мысль, тебе нужно два ентити(пивоты например).
Один для player. Другой для головы (родителем назнач player).

В цикле для головы: TurnEntity голова, MouseYSpeed(),0,0

Примерно так.

jc[wcr] 21.11.2008 14:04

Ответ: помогите плизз
 
как файл суда добавить? так обьяню может поймете
ну или в том коде еоторый я дал выше как сделать чтобы камера вправо -влево неповорачивалась

HolyDel 21.11.2008 14:06

Ответ: помогите плизз
 
RotateEntity ent,EntityPitch(ent),0,EntityYaw(ent)

ставить после всех манипуляций, но до рендера.

jc[wcr] 21.11.2008 14:10

Ответ: помогите плизз
 
ОО спасибо помогло вот ещо вопросик сори что невтему как сделать реалистичный прыжок но тока не через translateentity?

Yanez 21.11.2008 14:15

Ответ: помогите плизз
 
Цитата:

Сообщение от jc[wcr] (Сообщение 91022)
ОО спасибо помогло вот ещо вопросик сори что невтему как сделать реалистичный прыжок но тока не через translateentity?

чем не нравится?

jc[wcr] 21.11.2008 14:24

Ответ: помогите плизз
 
вот стандартный код прыжка
translateentity player,0,2,0
translateentity player,0,-.8,0
но он какойто нетакой резко поевляешся вверху и потом быстро падаеш вниз даже незамечаеш как вверху очутился

Yanez 21.11.2008 14:42

Ответ: помогите плизз
 
Цитата:

Сообщение от jc[wcr] (Сообщение 91024)
вот стандартный код прыжка
translateentity player,0,2,0
translateentity player,0,-.8,0
но он какойто нетакой резко поевляешся вверху и потом быстро падаеш вниз даже незамечаеш как вверху очутился

попробуй поменять цифровые значения.

(гравитация - 2.0, прыжок 3.0):?? :??

ABTOMAT 21.11.2008 16:19

Ответ: помогите плизз
 
Вложений: 1
Цитата:

Сообщение от jc[wcr] (Сообщение 91024)
вот стандартный код прыжка
translateentity player,0,2,0
translateentity player,0,-.8,0
но он какойто нетакой резко поевляешся вверху и потом быстро падаеш вниз даже незамечаеш как вверху очутился

Тут не транслейтентити виноват, а афтор кода.
В аттаче как всегда пример для падаванов юных
(будеть время побездельничать, так напишу FAQ)

jc[wcr] 21.11.2008 17:04

Ответ: помогите плизз
 
Вооо СПасибО

ABTOMAT 21.11.2008 23:30

Ответ: помогите плизз
 
Цитата:

Сообщение от jc[wcr] (Сообщение 91048)
Вооо СПасибО

Кнопочка такая существует ;)

jc[wcr] 22.11.2008 13:21

Ответ: помогите плизз
 
чото неставицо((
Код:

Graphics3D 1280,1024 ,32,1
Global sky=mAKESKYBOX("sKY/")
Const T_player=1 
Const T_terrain=2
Const T_zdan=2
player=LoadAnimMesh("man.3ds")
head=LoadMesh("head.3ds")
EntityParent head,player
PositionEntity player,0,40,0
Sound=LoadSound ("DStep02.wav")
LoopSound Sound
Function MakeSkyBox( file$ )

        m=CreateMesh()
        ;front face
        b=LoadBrush( file$+"sky_fr.JPG",49 )
        s=CreateSurface( m,b )
        AddVertex s,-1,+1,-1,0,0:AddVertex s,+1,+1,-1,1,0
        AddVertex s,+1,-1,-1,1,1:AddVertex s,-1,-1,-1,0,1
        AddTriangle s,0,1,2:AddTriangle s,0,2,3
        FreeBrush b
        ;right face
        b=LoadBrush( file$+"sky_ri.JPG",49 )
        s=CreateSurface( m,b )
        AddVertex s,+1,+1,-1,0,0:AddVertex s,+1,+1,+1,1,0
        AddVertex s,+1,-1,+1,1,1:AddVertex s,+1,-1,-1,0,1
        AddTriangle s,0,1,2:AddTriangle s,0,2,3
        FreeBrush b
        ;back face
        b=LoadBrush( file$+"sky_bk.JPG",49 )
        s=CreateSurface( m,b )
        AddVertex s,+1,+1,+1,0,0:AddVertex s,-1,+1,+1,1,0
        AddVertex s,-1,-1,+1,1,1:AddVertex s,+1,-1,+1,0,1
        AddTriangle s,0,1,2:AddTriangle s,0,2,3
        FreeBrush b
        ;left face
        b=LoadBrush( file$+"sky_le.JPG",49 )
        s=CreateSurface( m,b )
        AddVertex s,-1,+1,+1,0,0:AddVertex s,-1,+1,-1,1,0
        AddVertex s,-1,-1,-1,1,1:AddVertex s,-1,-1,+1,0,1
        AddTriangle s,0,1,2:AddTriangle s,0,2,3
        FreeBrush b
        ;top face
        b=LoadBrush( file$+"sky_up.JPG",49 )
        s=CreateSurface( m,b )
        AddVertex s,-1,+1,+1,0,1:AddVertex s,+1,+1,+1,0,0
        AddVertex s,+1,+1,-1,1,0:AddVertex s,-1,+1,-1,1,1
        AddTriangle s,0,1,2:AddTriangle s,0,2,3
        FreeBrush b

        ScaleMesh m,150,150,150
        FlipMesh m
        EntityFX m,9
        EntityOrder m,10
        Return m
       
End Function
ScaleEntity SKY,150,150,150
Camera=CreateCamera(head)
PositionEntity camera ,0,0.8,0
CameraRange Camera,0.1,100000
Light=CreateLight(1,Camera)
LightRange Light,5
terrain=CreatePlane()
tex=LoadTexture("terrain1.jpg")
energy=LoadImage("enege.jpg")
life=LoadImage("Life.jpg")
zdan=LoadAnimMesh("zdan1.3ds")
PositionEntity zdan,0,5,0
ScaleTexture tex,2,2
EntityAlpha head,0
EntityTexture terrain ,tex
EntityType player,T_player
EntityType terrain, T_terrain
EntityType zdan,T_zdan
Collisions T_player,T_terrain,2,3
Collisions T_player,T_zdan,1,2
While Not KeyHit(2)
TranslateEntity PLAYER,0,-0.4,0
myspd#=MouseYSpeed()*0.25
mxspd#=MouseYSpeed()*0.25
MoveMouse GraphicsWidth()/2,GraphicsHeight()/2 
campitch#=EntityPitch(head)+myspd#
If campitch#<-4 Then campitch#=-4
If campitch#>7 Then campitch#=7 
RotateEntity head,campitch#,EntityYaw(head)-mxspd#,EntityRoll(head)
If KeyHit(17) Then Animate player,1,2
If Not KeyDown(17) Then Animate player,1,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 jump = 1 Then
                TranslateEntity player,0,vector*dt*.1,0
                vector = vector - .001*dt
        End If
       
        If KeyHit(57) And jump=0 Then vector = 1: jump = 1
        If jump = 1 Then
                If EntityCollided (player,T_terrain) Then        jump = 0
        End If
RotateEntity head,EntityPitch(head),0,EntityYaw(head)
RenderWorld
       

UpdateWorld

DrawImage energy,1020,975
DrawImage life,1020,1000
Flip
CameraRange CAMERA,0.1,100000

Wend
End


Colossus 22.11.2008 14:38

Ответ: помогите плизз
 
медию выложи ато народу трудно ковырять без ресурсов))

ABTOMAT 22.11.2008 15:04

Ответ: помогите плизз
 
vector обозначь как дробную переменную
*все беды от невнимательности


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

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