can someone check out this updatechasecam function and tell me how to make it NOT get impeded by objects?
; chasecam functionality
Function UpdateChaseCam( c.chasecam )
If KeyDown(200)
TranslateEntity c\heading,0,-3,0
Else If KeyDown(208)
TranslateEntity c\heading,0,+3,0
EndIf
dx#=EntityX(c\target,True)-EntityX(c\camera,True)
dy#=EntityY(c\target,True)-EntityY(c\camera,True)
dz#=EntityZ(c\target,True)-EntityZ(c\camera,True)
TranslateEntity c\camera,dx*.1,dy*.1,dz*.1
PointEntity c\camera,c\heading
PositionEntity c\target,0,0,0
ResetEntity c\target
PositionEntity c\target,0,3,-10
End Function
Function CreateChaseCam.ChaseCam( entity )
c.ChaseCam=New ChaseCam
c\entity=entity
c\camera=CreateCamera()
c\target=CreatePivot( entity )
PositionEntity c\target,0,3,-10
EntityType c\target,TYPE_TARGET
c\heading=CreatePivot( entity )
PositionEntity c\heading,0,0,20
CameraRange c\camera, 0.05, 1000
Return c
End Function
|