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=8497)

ken park 17.06.2009 14:11

Ответ: Камера...
 
почему?.. хм

Sleepybear 17.06.2009 14:12

Ответ: Камера...
 
Цитата:

Сообщение от NitE (Сообщение 107884)
дай полный код - помогу

Мне кажется или это действительно так сложно?

NitE 17.06.2009 14:15

Ответ: Камера...
 
Цитата:

почему?.. хм
хм, интеренсый вопрос... хм.. попробуй удали модель и запусти игру... хм.. неработает.. ну вот и у меня неработает... хм

......... залей её куданить и тексутру травы тоже, мне там парится неохота - нужна помощь, так хоть это сделай...

Sleepybear, нет, совсем не сложно )

pitonms 17.06.2009 14:21

Ответ: Камера...
 
Цитата:

Сообщение от NitE (Сообщение 107887)
ну и модель тоже ё-маё, без неё не работает

Ты что бы проверить ???
user=createsphere()
и проверяй

ken park 17.06.2009 14:21

Ответ: Камера...
 
какая разница какая модель, можно же хоть куб вставить и вместо текстуры цвет положить... ХМ!

Sleepybear 17.06.2009 14:29

Ответ: Камера...
 
Сижу на работе не могу кидать вложения у меня прокся ругается :(

Код:

Graphics3D 800,600,32,0

User=LoadMesh("markio\mariorun.x")
ScaleEntity User,.1,.1,.1
Pivot=CreatePivot(User)
PositionEntity pivot,0,50,-100
Camera=CreateCamera()

ground=CreateCube()
tex=LoadTexture("markio\face.bmp")
PositionEntity ground,0,-10,0
EntityTexture ground,tex
ScaleEntity ground,50,.1,50

While Not KeyDown(1)

        curX#=EntityX(Camera, True)
        curY#=EntityY(Camera, True)
        curZ#=EntityZ(Camera, True)
        destX#=EntityX(Pivot,True)
        destY#=EntityY(Pivot,True)
        destZ#=EntityZ(Pivot,True)
        CamX#=((destX#-curX#)/10)
        CamY#=((destY#-curY#)/10)
        CamZ#=((destZ#-curZ#)/10)
        TranslateEntity Camera,CamX,CamY,CamZ
        PointEntity camera,User
        If KeyDown(17) Or KeyDown(200) MoveEntity User,0,0,.1
        If KeyDown(30) Or KeyDown(203) MoveEntity User,-.1,0,0
        If KeyDown(31) Or KeyDown(208) MoveEntity User,0,0,-.1
        If KeyDown(32) Or KeyDown(205) MoveEntity User, .1,0,0
    RenderWorld
    UpdateWorld
       
Flip False :Wend:End


если не понятно While Not KeyDown(1) Wend

то вместо While Not KeyDown(1) поставь
Код:

Repeat
 If KeyDown(1) Exit

а вместо Wend Forever

ken park 17.06.2009 14:32

Ответ: Камера...
 
во офигенно ) спасибочки ) потом сделаю скорость пониже, круто будет. спасибо!!

Sleepybear 17.06.2009 14:37

Ответ: Камера...
 
Цитата:

Сообщение от ken park (Сообщение 107896)
во офигенно ) спасибочки ) потом сделаю скорость пониже, круто будет. спасибо!!

незачто, если будеш переделывать чужое а не пискать своё то ничему не научишся. Так что читай help и пиши сам.

NitE 17.06.2009 14:58

Ответ: Камера...
 
ахх... начал чтото писать, да надоело сразу - вот гляди исходник моей старой игры
Код:

Include "ashadow.bb"
Include "fps.bb"

aGraphics3D 1280,1024,32,2
SetBuffer BackBuffer()
SeedRnd MilliSecs()
HidePointer()
pxCreateWorld(1,"key")

Function LoadSkyBox(file$)
        m=CreateMesh()
        ;front face
        b=LoadBrush( file$+"_lf.dds",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$+"_fr.dds",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$+"_bk.dds",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$+"_rt.dds",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$+"_UP.dds",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,10000,10000,10000
        FlipMesh m
        EntityFX m,1+8
        Return m
End Function


Function FreeFlyCam(ent)
        mxspd#=MouseXSpeed()*Mousespeed
        myspd#=MouseYSpeed()*Mousespeed
        MoveMouse GraphicsWidth()/2,GraphicsHeight()/2
        campitch#=EntityPitch(ent)+myspd#
        If campitch#<-89 Then campitch#=-89
        If campitch#>89 Then campitch#=89
        RotateEntity ent,campitch#,EntityYaw(ent)-mxspd#,EntityRoll(ent)
End Function




Function PlayerCam(ent,m#,ent2)
        mxs#=MouseXSpeed()*m
        mys#=MouseYSpeed()*m/3

        mouse_shake=Abs(((mxs+mys)/2)/1000.0)

        dest_camera_yaw#=dest_camera_yaw#-mxs
        dest_camera_pitch#=dest_camera_pitch#+mys

        camera_yaw#=camera_yaw+((dest_camera_yaw-camera_yaw)/5)
        camera_pitch#=camera_pitch+((dest_camera_pitch-camera_pitch)/5)
       
       
        pxBodySetRotation ent,0,pxBodyGetRotationYaw(ent)+camera_yaw#,0
        MoveMouse GraphicsWidth()/2,GraphicsHeight()/2
End Function

Function CreatePhysEntity(mass)
p.phys_body = New phys_body
p\entity =ACreateCube(0,2)
p\mass = mass
p\phys_entity = pxBodyCreateCube(1,1,1,p\mass)
pxBodySetPosition(p\phys_entity,0,20,0)
End Function

Type phys_body
Field entity
Field phys_entity
Field mass
End Type

Function PlayerMove(ent,speed)

If KeyDown(30)
pxBodySetLocalLinearSpeed(ent,speed,pxBodyGetLocalLinearSpeedY(ent),0)
move_bool=0
ElseIf KeyDown(32)
pxBodySetLocalLinearSpeed(ent,-speed,pxBodyGetLocalLinearSpeedY(ent),0)
move_bool=0
ElseIf KeyDown(31)
pxBodySetLocalLinearSpeed(ent,0,pxBodyGetLocalLinearSpeedY(ent),speed)
move_bool=0
ElseIf KeyDown(17)
pxBodySetLocalLinearSpeed(ent,0,pxBodyGetLocalLinearSpeedY(ent),-speed)
move_bool=0
Else
;pxBodySetLocalLinearSpeed(ent,0,-10,0)
move_bool=1
EndIf
End Function




aml=175
AmbientLight aml,aml,aml



light2=CreateSLight(2,100,155,155,155)
light=CreateSLight(1,100,155,155,155)



PositionEntity light,0,30,0

Global mousespeed#=0.5
camera=CreateCamera()
CameraRange(camera,.1,100000)

loadskybox("skybox\1")
speed#=1


player=LoadAnimMesh("actor_frank\frank.b3d")
jump=LoadAnimSeq(player,"actor_frank\jump.b3d")

player_phys=pxBodyCreateCapsule(5,5,1000)



player_speed=30



plane=ACreateCube()
ScaleEntity plane,1000,0.0001,1000

PointEntity light,plane

sand=LoadTexture("sand.jpeg")
EntityTexture plane,sand
ScaleTexture sand,.007,.007

MoveEntity camera,0,15,17
TurnEntity camera,13,180,0
EntityParent camera,player

gorka=ACreateCube()
ScaleEntity gorka,20,.1,20
MoveEntity gorka,40,5,10
TurnEntity gorka,20,0,0
phys1=pxBodyCreateCube(20,.1,20,0)
pxBodySetPosition phys1,40,5,10
pxBodySetRotation phys1,20,0,0


Global move_bool=0

max_player_speed=30

Animate player,1,1,jump,5

Repeat

If KeyHit(16) Animate player,1,1,1,5



pxBodySetLocalLinearSpeed(player_phys,0,-25,0)

pxBodySetFrozenRot(player_phys,1)



PositionEntity(player,pxBodyGetPositionX(player_phys),pxBodyGetPositionY(player_phys)-7.48,pxBodyGetPositionZ(player_phys))
RotateEntity(player,pxBodyGetRotationPitch(player_phys),pxBodyGetRotationYaw(player_phys),pxBodyGetRotationRoll(player_phys))

playermove(player_phys,player_speed)

If KeyDown(57) createphysentity(12)

For p.phys_body = Each phys_body
pxBodySetEntity(p\entity,p\phys_entity)
Next



playercam(player_phys,1.2,camera)

MoveMouse GraphicsWidth()/2,GraphicsHeight()/2



ARenderWorld(camera)
pxRenderPhysic(30,0)

Text 10,10,pxkey
Flip
Until KeyHit(1)
End

ту конечно используется много всякой фигни, но переделать под блиц не проблема, и помне так всё намного проще чем у того-же Sleepybear

Sleepybear 17.06.2009 15:05

Ответ: Камера...
 
NitE :)

Весело сегодня тут у вас

ken park 17.06.2009 15:56

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

NitE 17.06.2009 16:03

Ответ: Камера...
 
хм..хм..хм..хм..хм.. почему ?:crazy:
да там собственно ничего интересного, только передвижение, поворот и ещё какаято хрень...
http://www.filehoster.ru/files/cx9645

Dzirt 17.06.2009 16:06

Ответ: Камера...
 
Ну да....парню осталось теперь достать Ashadow и PhysX ;)

Sleepybear 17.06.2009 16:12

Ответ: Камера...
 
Цитата:

Сообщение от NitE (Сообщение 107922)
хм..хм..хм..хм..хм.. почему ?:crazy:
да там собственно ничего интересного, только передвижение, поворот и ещё какаято хрень...
http://www.filehoster.ru/files/cx9645

кинь плз decls уж очень хотца глянуть на тени

ken park 17.06.2009 16:14

Ответ: Камера...
 
pxcreateworld no find o_O


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

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