Вам необходимо выделить память для хранения unique_ptr
. Прямо сейчас у вас есть 8 unique_ptr
с, на которые нечего указывать.
Resources::Resources()
{
vector<unique_ptr<sf::Texture>> m_textureVec;
m_textureVec.resize(8);
m_textureVec.push_back(std::unique_ptr<sf::Texture>(new sf::Texture()));
m_textureVec[0]->loadFromFile("digger.png");
//etc
}
Кроме того, вы потеряете m_textureVec
, когда ваша функция Resources()
завершится. Лучше всего создавать эту переменную в более продолжительной среде.