Bonjour
En fait j'ai réalisé un jeu (ou plutôt le début) sans profiter pleinement de la POO ca s’apparente plus au C donc j'ai revu mon code pour utiliser des class ect...
Donc ca marchait avant, et maintenant j'arrive plus a afficher une image je vous montre le code.
(Le soucis n'est pas l'image en elle même)
PS: Je précise que j'ai enlever tout le surplus de code pour isoler le problème
En fait ca fait 3 heures que je suis dessus j'ai essayé pleins de choses, je voulais pas vous embeter mais la je peux plus avancer
MAIN.CPP#include "menu.h"
#include "graphics.h"
#include <SFML/Graphics.hpp>
const int Window_Width = 1024;
const int Window_Height = 768;
const int sizeDalle_x = 65;
const int sizeDalle_y = 33;
int main()
{ //Create Objets
Graphics graphics;
//Create Window & Vsync to limitate Frames
sf::RenderWindow window(sf::VideoMode(Window_Width,Window_Height),"TEST");
window.setVerticalSyncEnabled(true);
Menu_Loader(&graphics,&window);
}
menu.h
#ifndef MENU_INCLUDED
#define MENU_INCLUDED
#include "graphics.h"
void Menu_Loader(Graphics::Graphics *graphics,sf::RenderWindow *window);
#endif
menu.cpp#include "menu.h"
using namespace std;
void Menu_Loader(Graphics::Graphics *graphics,sf::RenderWindow *window)
{
sf::Event event;
while(window->isOpen()) // Boucle principale
{
while (window->pollEvent(event)) // Boucle des évènements
{
if (event.type == sf::Event::Closed) // Croix en haut à droite
window->close(); // Fermeture du programme
}
window->clear();
window->draw(graphics->background());
window->display();
}
}
Graphics.h#ifndef GRAPHICS_INCLUDE
#define GRAPHICS_INCLUDE
#include <SFML/Graphics.hpp>
class Graphics
{
public:
Graphics(); //Constructor
void loadMenu();
sf::Sprite background();
private:
sf::Sprite fond;
sf::Texture texture;
};
#endif
Graphics.cpp
#include "graphics.h"
#include <iostream>
const int Rectangle_Witdh = 250;
const int Rectangle_Height= 60;
Graphics::Graphics()
{
if(!texture.loadFromFile("data/ressources/menu_fond.png"))
{
std::cout << "Error Import Sprite menu_fond.png" << std::endl;
}
sf::Sprite fond(texture);
}
sf::Sprite Graphics::background()
{
return fond;
}