Game Development Reference
In-Depth Information
/**socket not found, use the other way of updating vectors */
if(Pawn.Mesh.GetSocketWorldLocationAndRotation
('WeaponPoint', OutVT.POV.Location,
OutVT.POV.Rotation)==false)
{
/** Start the cam location from the target eye view
point */
OutVT.Target.GetActorEyesViewPoint
(OutVT.POV.Location, OutVT.POV.Rotation);
}
/** Force the camera to use the target's rotation */
OutVT.Target.GetActorEyesViewPoint
(V, OutVT.POV.Rotation);
/** Add the camera offset */
OutVT.POV.Rotation+=CamOffsetRotation;
/** Math for the potential camera location */
PotentialCameraLocation=OutVT.POV.Location
+(CamOffset>>OutVT.POV.Rotation);
/** Draw a trace to see if the potential camera
location will work */
HitActor=Trace(HitLocation, HitNormal,
PotentialCameraLocation, OutVT.POV.Location, true,,,
TRACEFLAG_BULLET);
/** Will the trace hit world geometry? If so then use
the hit location and offset it by the hit normal */
if (HitActor!=None&&HitActor.bWorldGeometry)
{
OutVT.POV.Location=HitLocation+HitNormal*16.f;
}
else
{
OutVT.POV.Location=PotentialCameraLocation;
}
}
}
Our default properties are the only changes to this class, when compared to the
side-scroller's. I found these values by using the tutorial camera and adjusting
the values with the archetype until I found what I deemed to be appropriate.
 
Search Nedrilad ::




Custom Search