private static void addBoxCollisionDataSize(SlimDX.Vector3 size, IMesh mesh)
        {
            var skin = 0.02f;

            mesh.GetCollisionData().Boxes.Add(new MeshCollisionData.Box()
            {
                Dimensions  = size.xna() + Vector3.One * skin,
                Orientation = Matrix.Identity
            });
        }
        public static IMesh CreateBoxWithTexture(ITexture texture, SlimDX.Vector3 dimensions)
        {
            var builder = new MeshBuilder();

            builder.AddBox(-dimensions, dimensions);
            var mesh = builder.CreateMesh();

            mesh.GetCoreData().Parts[0].MeshMaterial.DiffuseMap = texture;

            addBoxCollisionData(dimensions, mesh);

            return(mesh);
        }
        public static IMesh CreateBoxColoredSize(Color4 color, SlimDX.Vector3 size)
        {
            var builder = new MeshBuilder();

            builder.AddBox(new SlimDX.Vector3(), size);
            var mesh = builder.CreateMesh();

            mesh.GetCoreData().Parts[0].MeshMaterial.DiffuseColor    = color.xna();
            mesh.GetCoreData().Parts[0].MeshMaterial.ColoredMaterial = true;

            addBoxCollisionDataSize(size, mesh);

            return(mesh);
        }
        public static IMesh CreateBoxColored(Color4 color, SlimDX.Vector3 radius)
        {
            var builder = new MeshBuilder();

            builder.AddBox(-radius, radius);
            var mesh = builder.CreateMesh();

            mesh.GetCoreData().Parts[0].MeshMaterial.DiffuseColor    = color.xna();
            mesh.GetCoreData().Parts[0].MeshMaterial.ColoredMaterial = true;

            addBoxCollisionData(radius, mesh);

            return(mesh);
        }