Ejemplo n.º 1
0
        private void DrawModel(Model myModel)
        {
            // Copy any parent transforms.
            Matrix[] transforms = new Matrix[myModel.Bones.Count];
            myModel.CopyAbsoluteBoneTransformsTo(transforms);

            // Draw the model. A model can have multiple meshes, so loop.
            foreach (ModelMesh mesh in myModel.Meshes)
            {
                //mesh.Effects = new ModelEffectCollection(new List<Effect> { Effect });

                foreach (var part in mesh.MeshParts)
                {
                    part.Effect = Effect;
                }

                var world = new Matrix(
                    new Vector4(0, 0, 1, 0),
                    new Vector4(-1, 0, 0, 0),
                    new Vector4(0, 1, 0, 0),
                    new Vector4(0, 0, 0, 1));



                Effect.World = world * Matrix.CreateScale(0.5f) * Matrix.CreateTranslation(new Vector3(0.5f)); //world * Matrix.CreateTranslation(new Vector3(1));//transforms[mesh.ParentBone.Index] * Matrix.CreateRotationY(modelRotation);

                mesh.Draw();
            }


            c.Draw(Effect);
        }
Ejemplo n.º 2
0
 public override Matrix Render(ref Matrix currentTransformation, BasicEffect effect, object parameter)
 {
     cube.Position = Movable.Position;
     cube.Draw(effect);
     return(currentTransformation);
 }