Итак, я написал игру тральщика и сделал GUI с SFML, просто возникла проблема с отображением картины выигрыша / проигрыша, когда игрок заканчивает игру или проигрывает. Состояния игры установлены правильно, и они запускаются в нужные моменты, проблема в том, что изображения, которые я хочу отобразить, кажутся слишком большими, и в окне я вижу только их фон (например, верхний левый угол изображения). Есть ли способ масштабировать изображение до окна и полностью отобразить его в окне?
Конструктор:
minesweeperBoard* board;
sf::Texture t;
MSSFMLView::MSSFMLView(minesweeperBoard& board) {
this->board = &board;
t.loadFromFile("src/images/tiles.jpg");
window.create(sf::VideoMode(32*this->board->getBoardWidth(), 32*this->board->getBoardHeight()), "Minesweeper");
}
Состояние игры, если триггер в игре l oop:
if(board->state == GameState::FINISHED_WIN){
t.loadFromFile("src/images/win.jpg");
sf::Sprite s(t);
s.scale(32*this->board->getBoardWidth(),32*this->board->getBoardHeight());
window.draw(s);
Sleep(1000);
window.clear();
}else if(board->state == GameState::FINISHED_LOSS){
t.loadFromFile("src/images/lose.jpg");
sf::Sprite s(t);
s.scale(32*this->board->getBoardWidth(),32*this->board->getBoardHeight());
window.draw(s);
Sleep(1000);
window.clear();
}
Вот фотографии, которые я использую: https://imgur.com/a/KVCuyab 256x256 размер