Exemple #1
0
 /// <summary>Get Euler rotation of this turret's heading and pitch nodes.</summary>
 /// <description>
 ///
 /// </description>
 /// <returns>the orientation of the turret's heading and pitch nodes in the form of rotations around the X, Y and Z axes in degrees.</returns>
 public Point3F GetTurretEulerRotation()
 {
     InternalUnsafeMethods.GetTurretEulerRotation__Args _args = new InternalUnsafeMethods.GetTurretEulerRotation__Args()
     {
     };
     Point3F.InternalStruct _engineResult = InternalUnsafeMethods.GetTurretEulerRotation()(ObjectPtr, _args);
     return(new Point3F(_engineResult));
 }
Exemple #2
0
 /// <description>
 /// Get the starting point of an off-mesh link.
 /// </description>
 public Point3F GetLinkStart(uint id)
 {
     InternalUnsafeMethods.GetLinkStart__Args _args = new InternalUnsafeMethods.GetLinkStart__Args()
     {
         id = id,
     };
     Point3F.InternalStruct _engineResult = InternalUnsafeMethods.GetLinkStart()(ObjectPtr, _args);
     return(new Point3F(_engineResult));
 }
Exemple #3
0
 /// <summary>Get a specified node along the path.</summary>
 public Point3F GetNode(int idx)
 {
     InternalUnsafeMethods.GetNode__Args _args = new InternalUnsafeMethods.GetNode__Args()
     {
         idx = idx,
     };
     Point3F.InternalStruct _engineResult = InternalUnsafeMethods.GetNode()(ObjectPtr, _args);
     return(new Point3F(_engineResult));
 }
Exemple #4
0
 /// <description>
 /// Transform 3D screen-space coordinates (x, y, depth) to world space.
 /// This method can be, for example, used to find the world-space position relating to the current mouse cursor position.
 /// </description>
 /// <param name="screenPosition">The x/y position on the screen plus the depth from the screen-plane outwards.</param>
 /// <returns>The world-space position corresponding to the given screen-space coordinates.</returns>
 public Point3F Unproject(Point3F screenPosition)
 {
     screenPosition.Alloc();             InternalUnsafeMethods.Unproject__Args _args = new InternalUnsafeMethods.Unproject__Args()
     {
         screenPosition = screenPosition.internalStructPtr,
     };
     Point3F.InternalStruct _engineResult = InternalUnsafeMethods.Unproject()(ObjectPtr, _args);
     screenPosition.Free();             return(new Point3F(_engineResult));
 }
Exemple #5
0
 /// <description>
 /// Transform world-space coordinates to screen-space (x, y, depth) coordinates.
 /// </description>
 /// <param name="worldPosition">The world-space position to transform to screen-space.</param>
 /// <returns>The</returns>
 public Point3F Project(Point3F worldPosition)
 {
     worldPosition.Alloc();             InternalUnsafeMethods.Project__Args _args = new InternalUnsafeMethods.Project__Args()
     {
         worldPosition = worldPosition.internalStructPtr,
     };
     Point3F.InternalStruct _engineResult = InternalUnsafeMethods.Project()(ObjectPtr, _args);
     worldPosition.Free();             return(new Point3F(_engineResult));
 }
 /// <summary>Mount objB to this object at the desired slot with optional transform.</summary>
 /// <description>
 ///
 /// </description>
 /// <param name="objB">Object to mount onto us</param>
 /// <param name="slot">Mount slot ID</param>
 /// <param name="txfm">(optional) mount offset transform</param>
 /// <returns>true if successful, false if failed (objB is not valid)</returns>
 public Point3F GetNodePosition(int node = -1)
 {
     InternalUnsafeMethods.GetNodePosition__Args _args = new InternalUnsafeMethods.GetNodePosition__Args()
     {
         node = node,
     };
     Point3F.InternalStruct _engineResult = InternalUnsafeMethods.GetNodePosition()(ObjectPtr, _args);
     return(new Point3F(_engineResult));
 }
Exemple #7
0
 /// <summary>Apply an impulse to this object as defined by a world position and velocity vector.</summary>
 /// <description>
 ///
 /// </description>
 /// <param name="pos">impulse world position</param>
 /// <param name="vel">impulse velocity (impulse force F = m * v)</param>
 /// <returns>Always true</returns>
 /// <remarks> Not all objects that derrive from GameBase have this defined.
 /// </remarks>
 public Point3F GetCollisionNormal(int collisionIndex)
 {
     InternalUnsafeMethods.GetCollisionNormal__Args _args = new InternalUnsafeMethods.GetCollisionNormal__Args()
     {
         collisionIndex = collisionIndex,
     };
     Point3F.InternalStruct _engineResult = InternalUnsafeMethods.GetCollisionNormal()(ObjectPtr, _args);
     return(new Point3F(_engineResult));
 }
 /// <summary>Mount objB to this object at the desired slot with optional transform.</summary>
 /// <description>
 ///
 /// </description>
 /// <param name="objB">Object to mount onto us</param>
 /// <param name="slot">Mount slot ID</param>
 /// <param name="txfm">(optional) mount offset transform</param>
 /// <returns>true if successful, false if failed (objB is not valid)</returns>
 public Point3F GetNodeEulerRot(int node = -1, bool radToDeg = true)
 {
     InternalUnsafeMethods.GetNodeEulerRot__Args _args = new InternalUnsafeMethods.GetNodeEulerRot__Args()
     {
         node     = node,
         radToDeg = radToDeg,
     };
     Point3F.InternalStruct _engineResult = InternalUnsafeMethods.GetNodeEulerRot()(ObjectPtr, _args);
     return(new Point3F(_engineResult));
 }