Bonjour,
Je suis en train d'essayer de développer mon premier petit jeu en XNA C#.
Mon problème se situe au niveau du chargement du fond.
J'ai ma classe principale Game1.cs qui contient toutes les fonctions de bases.
Ma fonction Initialize est vide, et voici LoadContent() :
Je crée et charge mon fond.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 protected override void LoadContent() { // Create a new SpriteBatch, which can be used to draw textures. spriteBatch = new SpriteBatch(GraphicsDevice); background = new Background(this, graphics); this.Components.Add(background); }
Dans Background.cs j'ai mon constructeur :
et deux méthodes pour charger et dessiner le fond :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 public Background(Game game, GraphicsDeviceManager graphics) : base(game) { this.graphics = graphics; this.textureName = "fond"; base.DrawOrder = 1; }
La fonction LoadContent() dans Background.cs n'est pas appelée, et donc lorsque la fonction Draw() agit, le spritebatch n'arrive donc pas à charger la texture...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 protected override void LoadContent() { texture = Game.Content.Load<Texture2D>(textureName); base.LoadContent(); } public override void Draw(GameTime gameTime) { Game1.SpriteBatch.Begin(); Game1.SpriteBatch.Draw(texture, new Rectangle((int)Location.X, (int)Location.Y, (int)Size.X, (int)Size.Y), null, Color.White, rotation, new Vector2(), SpriteEffects.None, 1f); Game1.SpriteBatch.End(); base.Draw(gameTime); }
Si quelqu'un a une idée
Merci d'avance...
Partager