AnyKey`щик
Регистрация: 11.12.2007
Сообщений: 18
Написано одно полезное сообщение (для 0 участников)
|
Ответ: Xors3D
Привет! подскажите что не так ?
вот код на B3d
Global cub Global camera Global point Global state$ Const STANDING=0 Const MOVING=1 Const moveSpeed#=.6 Const turnSpeed#=.1 Graphics3D 640,480,0,2 camera=CreateCamera() PositionEntity camera,0,150,0 RotateEntity camera,90,0,0 plane=CreateCube() ScaleEntity plane,1000,.1,1000 EntityPickMode plane,2 EntityColor plane,160,150,150 EntityAlpha plane,0.5 point=CreateCube() EntityColor point,255,0,0 cub=CreateCube() ScaleEntity cub,5,5,5 state$=STANDING While Not KeyDown( 1 ) UpdateMovement() PointEntity camera,cub UpdateWorld() RenderWorld() Text 0,40,"PickedX: "+PickedX#() Text 0,60,"PickedY: "+PickedY#() Text 0,80,"PickedZ: "+PickedZ#() Flip Wend End Function UpdateMovement() If MouseHit(1) If state$=STANDING state$=MOVING EndIf CameraPick(camera,MouseX(),MouseY()) PositionEntity point,PickedX(),0,PickedZ()+3 EndIf If state$=MOVING xt#=PickedX#() zt#=PickedZ#() xl#=EntityX#(cub) zl#=EntityZ#(cub) cx#=xt-xl cz#=zt-zl cn#=Sqr(cx*cx+cz*cz) cx=cx/cn cz=cz/cn AlignToVector cub,cx,0,cz,0,turnSpeed# MoveEntity cub,0,0,moveSpeed# If Distance2D(EntityX(cub),EntityZ(cub),PickedX(),PickedZ())<10 state$=STANDING EndIf EndIf End Function Function Distance2D#(x1#,y1#,x2#,y2#) Local nx#=x1-x2 Local ny#=y1-y2 Return Sqr((nx*nx)+(ny*ny)) End Function
вот на Xors3D
Include "Xors3d.bb" Global cub Global camera Global point Global state$ Const STANDING=0 Const MOVING=1 Const moveSpeed#=.6 Const turnSpeed#=.1 xGraphics3D 640,480,0,0,1 camera=xCreateCamera() xPositionEntity camera,0,150,0 xRotateEntity camera,90,0,0 plane=xCreateCube() xScaleEntity plane,1000,.1,1000 xEntityPickMode plane,2 xEntityColor plane,160,150,150 xEntityAlpha plane,0.5 point=xCreateCube() xEntityColor point,255,0,0 cub=xCreateCube() xScaleEntity cub,5,5,5 state$=STANDING While Not xKeyDown( 1 ) UpdateMovement() xPointEntity camera,cub xUpdateWorld() xRenderWorld() xText 0,40,"PickedX: "+xPickedX#() xText 0,60,"PickedY: "+xPickedY#() xText 0,80,"PickedZ: "+xPickedZ#() xFlip Wend End Function UpdateMovement() If xMouseHit(1) If state$=STANDING state$=MOVING EndIf xCameraPick(camera,xMouseX(),xMouseY()) xPositionEntity point,xPickedX(),0,xPickedZ()+3 EndIf If state$=MOVING xt#=xPickedX#() zt#=xPickedZ#() xl#=xEntityX#(cub) zl#=xEntityZ#(cub) cx#=xt-xl cz#=zt-zl cn#=Sqr(cx*cx+cz*cz) cx=cx/cn cz=cz/cn xAlignToVector cub,cx,0,cz,0,turnSpeed# xMoveEntity cub,0,0,moveSpeed# If Distance2D(xEntityX(cub),xEntityZ(cub),xPickedX(),xPickedZ())<10 state$=STANDING EndIf EndIf End Function Function Distance2D#(x1#,y1#,x2#,y2#) Local nx#=x1-x2 Local ny#=y1-y2 Return Sqr((nx*nx)+(ny*ny)) End Function
в каждом cub передвигается по разному
в чем может быть проблема?
|