//Vector2 public static Vector2 Convert(BEPUutilities.Vector2 bepuVector) { Vector2 toReturn; toReturn.X = bepuVector.X; toReturn.Y = bepuVector.Y; return toReturn; }
//Vector3 public static Vector3 Convert(BEPUutilities.Vector3 bepuVector) { Vector3 toReturn; toReturn.X = bepuVector.X; toReturn.Y = bepuVector.Y; toReturn.Z = bepuVector.Z; return toReturn; }
public static Vector3[] Convert(BEPUutilities.Vector3[] bepuVectors) { Vector3[] xnaVectors = new Vector3[bepuVectors.Length]; for (int i = 0; i < bepuVectors.Length; i++) { Convert(ref bepuVectors[i], out xnaVectors[i]); } return xnaVectors; }
/// <summary> /// Creates a new EntityModel. /// </summary> /// <param name="entity">Entity to attach the graphical representation to.</param> /// <param name="model">Graphical representation to use for the entity.</param> /// <param name="transform">Base transformation to apply to the model before moving to the entity.</param> /// <param name="game">Game to which this component will belong.</param> public EntityModel(Entity entity, Model model, BEPUutilities.Matrix transform, Game game, GameManager manager) : base(game) { this.entity = entity; this.model = model; this.Transform = transform; this._manager = manager; //Collect any bone transformations in the model itself. //The default cube model doesn't have any, but this allows the EntityModel to work with more complicated shapes. boneTransforms = new Matrix[model.Bones.Count]; foreach (ModelMesh mesh in model.Meshes) { foreach (BasicEffect effect in mesh.Effects) { effect.EnableDefaultLighting(); } } }
public static Quaternion Convert(BEPUutilities.Quaternion q) { return new Quaternion(q.X, q.Y, q.Z, q.W); }
public bool RayCast(BEPUutilities.Ray ray, out RayCastResult result) { return space.RayCast(ray, out result); }
public override void SetOrientation(BEPUutilities.Quaternion quat) { Angles = quat; }
public static void Convert(ref Vector3 xnaVector, out BEPUutilities.Vector3 bepuVector) { bepuVector.X = xnaVector.X; bepuVector.Y = xnaVector.Y; bepuVector.Z = xnaVector.Z; }
public static void Convert(ref Ray ray, out BEPUutilities.Ray bepuRay) { Convert(ref ray.Position, out bepuRay.Position); Convert(ref ray.Direction, out bepuRay.Direction); }
public static void Convert(ref Quaternion quaternion, out BEPUutilities.Quaternion bepuQuaternion) { bepuQuaternion.X = quaternion.X; bepuQuaternion.Y = quaternion.Y; bepuQuaternion.Z = quaternion.Z; bepuQuaternion.W = quaternion.W; }
public static void Convert(ref BEPUutilities.Quaternion bepuQuaternion, out Quaternion quaternion) { quaternion.X = bepuQuaternion.X; quaternion.Y = bepuQuaternion.Y; quaternion.Z = bepuQuaternion.Z; quaternion.W = bepuQuaternion.W; }
//Quaternion public static Quaternion Convert(BEPUutilities.Quaternion quaternion) { Quaternion toReturn; toReturn.X = quaternion.X; toReturn.Y = quaternion.Y; toReturn.Z = quaternion.Z; toReturn.W = quaternion.W; return toReturn; }
public static void Convert(ref Matrix matrix, out BEPUutilities.Matrix3x3 bepuMatrix) { bepuMatrix.M11 = matrix.M11; bepuMatrix.M12 = matrix.M12; bepuMatrix.M13 = matrix.M13; bepuMatrix.M21 = matrix.M21; bepuMatrix.M22 = matrix.M22; bepuMatrix.M23 = matrix.M23; bepuMatrix.M31 = matrix.M31; bepuMatrix.M32 = matrix.M32; bepuMatrix.M33 = matrix.M33; }
public static void Convert(ref BEPUutilities.Matrix3x3 matrix, out Matrix xnaMatrix) { xnaMatrix.M11 = matrix.M11; xnaMatrix.M12 = matrix.M12; xnaMatrix.M13 = matrix.M13; xnaMatrix.M14 = 0; xnaMatrix.M21 = matrix.M21; xnaMatrix.M22 = matrix.M22; xnaMatrix.M23 = matrix.M23; xnaMatrix.M24 = 0; xnaMatrix.M31 = matrix.M31; xnaMatrix.M32 = matrix.M32; xnaMatrix.M33 = matrix.M33; xnaMatrix.M34 = 0; xnaMatrix.M41 = 0; xnaMatrix.M42 = 0; xnaMatrix.M43 = 0; xnaMatrix.M44 = 1; }
public static void Convert(ref Matrix matrix, out BEPUutilities.Matrix bepuMatrix) { bepuMatrix.M11 = matrix.M11; bepuMatrix.M12 = matrix.M12; bepuMatrix.M13 = matrix.M13; bepuMatrix.M14 = matrix.M14; bepuMatrix.M21 = matrix.M21; bepuMatrix.M22 = matrix.M22; bepuMatrix.M23 = matrix.M23; bepuMatrix.M24 = matrix.M24; bepuMatrix.M31 = matrix.M31; bepuMatrix.M32 = matrix.M32; bepuMatrix.M33 = matrix.M33; bepuMatrix.M34 = matrix.M34; bepuMatrix.M41 = matrix.M41; bepuMatrix.M42 = matrix.M42; bepuMatrix.M43 = matrix.M43; bepuMatrix.M44 = matrix.M44; }
public static void Convert(ref BEPUutilities.Plane plane, out Plane xnaPlane) { Convert(ref plane.Normal, out xnaPlane.Normal); xnaPlane.D = plane.D; }
public static void Convert(ref Plane plane, out BEPUutilities.Plane bepuPlane) { Convert(ref plane.Normal, out bepuPlane.Normal); bepuPlane.D = plane.D; }
public static Ray Convert(BEPUutilities.Ray ray) { Ray toReturn; Convert(ref ray.Position, out toReturn.Position); Convert(ref ray.Direction, out toReturn.Direction); return toReturn; }
public static void Convert(ref BEPUutilities.Vector3 bepuVector, out Vector3 xnaVector) { xnaVector.X = bepuVector.X; xnaVector.Y = bepuVector.Y; xnaVector.Z = bepuVector.Z; }
public static void Convert(ref BEPUutilities.Ray ray, out Ray xnaRay) { Convert(ref ray.Position, out xnaRay.Position); Convert(ref ray.Direction, out xnaRay.Direction); }
//BoundingBox public static BoundingBox Convert(BEPUutilities.BoundingBox boundingBox) { BoundingBox toReturn; Convert(ref boundingBox.Min, out toReturn.Min); Convert(ref boundingBox.Max, out toReturn.Max); return toReturn; }
public static void Convert(ref BoundingBox boundingBox, out BEPUutilities.BoundingBox bepuBoundingBox) { Convert(ref boundingBox.Min, out bepuBoundingBox.Min); Convert(ref boundingBox.Max, out bepuBoundingBox.Max); }
//Matrix public static Matrix Convert(BEPUutilities.Matrix matrix) { Matrix toReturn; Convert(ref matrix, out toReturn); return toReturn; }
//BoundingSphere public static BoundingSphere Convert(BEPUutilities.BoundingSphere boundingSphere) { BoundingSphere toReturn; Convert(ref boundingSphere.Center, out toReturn.Center); toReturn.Radius = boundingSphere.Radius; return toReturn; }
private void HitSparks(BEPUutilities.Vector3 position) { Actor sparks = GameResources.ActorManager.SpawnTemplate("Sparks"); TransformComponent sparksXForm = sparks.GetComponent<TransformComponent>(ActorComponent.ComponentType.Transform); sparksXForm.Translation = BepuConverter.Convert(position); Sparks sparksBehavior = sparks.GetBehavior<Sparks>(); sparksBehavior.Emit(); }
public static void Convert(ref BoundingSphere boundingSphere, out BEPUutilities.BoundingSphere bepuBoundingSphere) { Convert(ref boundingSphere.Center, out bepuBoundingSphere.Center); bepuBoundingSphere.Radius = boundingSphere.Radius; }
//TODO: This section could use some improvements. It's not very robust, especially on WP7. Remember the VertexBuffer.GetData bug on WP7. /// <summary> /// Gets an array of vertices and indices from the provided model. /// </summary> /// <param name="collisionModel">Model to use for the collision shape.</param> /// <param name="vertices">Compiled set of vertices from the model.</param> /// <param name="indices">Compiled set of indices from the model.</param> public static void GetVerticesAndIndicesFromModel(Model collisionModel, out BEPUutilities.Vector3[] vertices, out int[] indices) { Vector3[] tempVertices; GetVerticesAndIndicesFromModel(collisionModel, out tempVertices, out indices); vertices = MathConverter.Convert(tempVertices); }
//Plane public static Plane Convert(BEPUutilities.Plane plane) { Plane toReturn; Convert(ref plane.Normal, out toReturn.Normal); toReturn.D = plane.D; return toReturn; }
public abstract void SetOrientation(BEPUutilities.Quaternion quat);
public static BoundingBox Convert(BEPUutilities.BoundingBox b) { return new BoundingBox(Convert(b.Min), Convert(b.Max)); }