- Primero lo que hace es copiar el contenido del archivo
Program.csenGame1.cs - Luego borra
Program.cs - Renombra
Game1.csaMain.cs - Crea subcarpetas en Content → 2d,Audio,Fonts
- Crea una carpeta Source → Engine
- Crea una clase dentro de Engine que se llama
Globals.cs - Boton derecho sobre references → Add reference
- Buscamos System.Xml.Linq y seleccionamos su check
En
Globals.csañadir las variablespublic static ContentManager content; public static SpriteBatch spriteBatch;
- En
Main.cscambiar enLoadContentspriteBatch → Globals.spriteBatch - En
LoadContentañadirGlobals.content = this.Content; En
Main.cs→Draw()hacer que pinte los spritesGlobals.spriteBatch.Begin(SpriteSortMode.Deferred, BlendState.AlphaBlend);
Globals.spriteBatch.End();
- Ha metido el archivo Hero.xmb en la carpeta 2d (8:32)
- Dentro de
Source→ Crear la claseWorld.cs World.cs- Añadir este codigo
public class World { public World() { } public virtual void Update() { } public virutal void Draw() { } {
- Source → Engine → Crear la clase
Basic2d.cs Basic2d.cspublic class Basic2d { public Vector2 pos, dims; public Texture2D myModel; public Basic2d(string PATH, Vector2 POS, Vector DIMS) { pos = POS; dims = DIMS; myModel = Globals.content.Load
(PATH); } public virtual void Update() { } public virutal void Draw() { if(myModel != null) { Globals.spriteBatch.Draw(myModel, new Rectangle((int)(pos.X),(int)(pos.Y), (int)dims.X, (int)dism.Y), null, Color.White, 0.0f, new Vector2(myModel.Bounds.Width/2, myModel.Bounds.Height/2), new SpriteEffects(), 0); } } } World.cspublic Basic2d hero; public World() { hero = new Basic2d(“2d\Hero”, new Vector(300, 300), new Vector(48,48)) } public virtual void Update() { hero.Update(); } public virtual void Draw() { hero.Draw(); }
En
Main.cspublic World world; … public void LoadContent() { world = new World(); } … Update() { world.Update(); } … Draw() { …Begin() world.Draw() …End() }
}