SFML и C++ Уроки \ Разработка игр › Форумы › SFML Graphics › Не могу загрузить изображения
В этой теме 3 ответа, 2 участника, последнее обновление Serob 6 года/лет, 9 мес. назад.
-
АвторСообщения
-
Я до этого пробовал загрузить в текстуру тестовое изображение из интернета, оно работает, а как попробовал другие- вылазит ошибка. Делал в VS 13, на Win 10. Вот проект: https://www.dropbox.com/s/pwkvpclahfffh9y/%D0%9F%D1%80%D0%BE%D0%B5%D0%BA%D1%82.rar?dl=0
Вложения:
You must be logged in to view attached files.C++12345678Block* DIM1[20];for (int i = 0; i < 20; i++) {DIM1[i] = new Block("images/blocks/grass.png", 100 * i, 100);}window.clear();for (int i = 0; i < 20; i++) {window.draw(DIM1[i]->sprt);а зачем 2 раза одно и тоже писать?
я очень умный) А в чем проблема то с ним?
Я только начинаю учиться и поэтому задаю глупые вопросы и как говориться если смог объяснить проблему ребёнку и он тебя понял, значит проблемы нет.
В вашем коде есть два класса
C++12345678910111213141516171819202122232425class Player {public:Image img;Texture txt;Sprite sprt;Player(String pth, int x, int y){img.loadFromFile(pth);txt.loadFromImage(img);sprt.setTexture(txt);sprt.setPosition(x,y);}};class Block {public:Image img;Texture txt;Sprite sprt;Block(String pth, int x, int y){img.loadFromFile(pth);txt.loadFromImage(img);sprt.setTexture(txt);sprt.setTextureRect(IntRect(0, 0, 32, 32));sprt.setPosition(x, y);}};и как понимаю они сами по себе и ни на кого не ссылаются и не наследуются и используют одни и те же переменные? или это неизвестный мне способ наследования?
а по моему вопросу тут вы закидываете в конструктор Block параметры
C++123for (int i = 0; i < 20; i++) {DIM1[i] = new Block("images/blocks/grass.png", 100 * i, 100);}а потом просите отрисовать опять в цикле со ссылкой на sprt
C++123for (int i = 0; i < 20; i++) {window.draw(DIM1[i]->sprt);}почему нельзя так
C++1window.draw(DIM1[i]);все данные в массив выше уже закинуты или я не прав?
-
АвторСообщения
Для ответа в этой теме необходимо авторизоваться.