public void DrawWireframe(BasicEffect effect, GraphicsDevice graphicsDevice) { List <VertexPositionColor> wireframe = GetAABBWireframe(); ShaderManager.GetInstance().DefaultEffect.TextureEnabled = false; ShaderManager.GetInstance().DefaultEffect.VertexColorEnabled = true; ShaderManager.GetInstance().DefaultEffect.CurrentTechnique.Passes[0].Apply(); graphicsDevice.DrawUserPrimitives <VertexPositionColor>(PrimitiveType.LineStrip, wireframe.ToArray(), 0, wireframe.Count - 1); List <VertexPositionColor> collisionWireframe = _collisionBox.GetCollisionBoxWireframe(Color.White); graphicsDevice.DrawUserPrimitives <VertexPositionColor>(PrimitiveType.LineStrip, facingLine.ToArray(), 0, facingLine.Count - 1); #region Axes graphicsDevice.DrawUserPrimitives <VertexPositionColor>(PrimitiveType.LineStrip, xAxisLine.ToArray(), 0, xAxisLine.Count - 1); graphicsDevice.DrawUserPrimitives <VertexPositionColor>(PrimitiveType.LineStrip, zAxisLine.ToArray(), 0, zAxisLine.Count - 1); #endregion if (mouseRayLine != null && mouseRayLine.Count > 1) { graphicsDevice.DrawUserPrimitives <VertexPositionColor>(PrimitiveType.LineStrip, mouseRayLine.ToArray(), 0, mouseRayLine.Count - 1); } if (TEMP_selectedObjects != null && TEMP_selectedObjects.Count > 0) { foreach (AbstractWorldObject obj in TEMP_selectedObjects) { obj.DrawRotatedBoundingBox(effect, graphicsDevice); } } foreach (List <VertexPositionColor> movementLine in movementLines) { graphicsDevice.DrawUserPrimitives <VertexPositionColor>(PrimitiveType.LineStrip, movementLine.ToArray(), 0, movementLine.Count - 1); } graphicsDevice.DrawUserPrimitives <VertexPositionColor>(PrimitiveType.LineStrip, collisionWireframe.ToArray(), 0, collisionWireframe.Count - 1); }