public Model3D(Game game, Model model, Camera camera) : base(game) { this.model = model; this.camera = camera; orientation = Matrix.Identity; position = new Vector3(); scales = Vector3.One; }
public FPSCam(Game game, Camera camera) : base(game) { this.camara = camera; camera.setViewMatrix(Vector3.Zero, Vector3.Zero, Vector3.Up); float aspectRadio = game.GraphicsDevice.Viewport.AspectRatio; camera.setProjectionMatrix(MathHelper.ToRadians(45), aspectRadio, 0.3f, 100000); }
public virtual void DrawModel(Model model, Camera Cam, Matrix Orientation, Vector3 Position) { Matrix[] boneTransforms = new Matrix[model.Bones.Count]; model.CopyAbsoluteBoneTransformsTo(boneTransforms); Matrix worldMatrix = Matrix.CreateScale(scales) * Orientation * Matrix.CreateTranslation(Position); foreach (ModelMesh mesh in model.Meshes) { foreach (BasicEffect effect in mesh.Effects) { effect.World = boneTransforms[mesh.ParentBone.Index] * worldMatrix; effect.View = Cam.ViewMatrix; effect.Projection = Cam.ProjectionMatrix; } mesh.Draw(); } }