Here I'll just post all the files i typed so far. Everything Ran Perfect Until ObjectComponents.cs.

Game.cs:
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Graphics;
using Microsoft.Xna.Framework.Input;
namespace Engine
{
public class EGame : Game
{
GraphicsDeviceManager graphics;
public EGame()
{
graphics = new GraphicsDeviceManager(this);
Window.AllowUserResizing = true;
Window.ClientSizeChanged += new System.EventHandler(Window_ClientSizeChanged);
}
void Window_ClientSizeChanged(object sender,System.EventArgs e)
{
graphics.PreferredBackBufferWidth = Window.ClientBounds.Width;
graphics.PreferredBackBufferHeight = Window.ClientBounds.Height;
}
protected override void Update(GameTime gameTime)
{
KeyboardState kState = Keyboard.GetState();
if (kState.IsKeyDown(Keys.F))
{
graphics.ToggleFullScreen();
}
base.Update(gameTime);
}
protected override void Draw(GameTime gametime)
{
graphics.GraphicsDevice.Clear(Color.CornflowerBlue);
base.Draw(gametime);
}
}
}
ObjectComponents.cs:
using Microsoft.Xna.Framework.Graphics;
namespace Engine.Objects.ObjectComponents
{
interface IRenderable : IObjectComponent
{
void Render(GraphicsDevice device);
}
}
Objects.cs:
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Graphics;
using Engine.Objects.ObjectComponents;
namespace Engine.Objects
{
public class Object
{
protected Vector3 Position;
protected Vector3 Scaling;
protected Quaternion Rotation;
public Object()
{
Position = new Vector3(0, 0, 0);
Scaling = new Vector3(1, 1, 1);
Rotation = new Quaternion(0, 0, 0, 1);
}
public void Draw(GraphicsDevice device)
{
if (this is IRenderable)
{
((IRenderable)this).Render(device);
}
}
}
}
The errors are in the first post. once i get this solved i will continue.