SFML и C++ Уроки \ Разработка игр › Форумы › SFML Начало работы (подключение и настройка) › Проблема после компиляции SFML
В этой теме 10 ответов, 5 участников, последнее обновление Heisenberg 8 года/лет, 9 мес. назад.
-
АвторСообщения
-
В общем, всегда работал с sfml без проблем, но тут решил скомпилировать свои проекты и sfml перестал подгружать файлы. Сама проверка проводилась на шаблоне.
C++1234567891011121314151617181920212223242526272829303132#include <SFML/Graphics.hpp>using namespace sf;int main(){RenderWindow window(sf::VideoMode(640, 480), "Lesson 3. kychka-pc.ru"); //увеличили для удобства размер окнаTexture herotexture;//создаем объект Texture (текстура)herotexture.loadFromFile("hero.png");//загружаем картинкуSprite herosprite;//создаем объект Sprite(спрайт)herosprite.setTexture(herotexture);//передаём в него объект Texture (текстуры)herosprite.setPosition(50, 25);//задаем начальные координаты появления спрайтаwhile (window.isOpen()){sf::Event event;while (window.pollEvent(event)){if (event.type == sf::Event::Closed)window.close();}window.clear();window.draw(herosprite);//выводим спрайт на экранwindow.display();}return 0;}Все должно работать, но возникает проблема (на картинке):
Пути указаны верно.
Вложения:
You must be logged in to view attached files.попробуй переименовать файл изображения в цифру 1, например.
попробуй запустить тестовый код без подгрузки текстуры и спрайта (тот код с оф сайта с зеленым кругом)
посмотри что с правами доступа на этот файл и эту папку в целом
Зелёный круг работает.
Может я кодировку файлов изменил в Vs, библиотека работает, но не понимает когда передают строку.
ага, по симптомам похоже на проблемы с кодировкой
Проверил кодировку файлов, все правильно UTF-8. Будем искать причину дальше.
скинь мне свой проект полностью. попробую у себя запустить
Здравствуйте!
А если попробовать так?
C++1herotexture.loadFromFile(L"hero.png");Попробуйте так:
C++123456Image heroImage;heroImage.loadFromFile("hero.png");Texture heroTexture;heroTexture.loadFromImage(heroImage);Sprite hero_s;hero_s.setTexture(heroTexture);давай проект, будем у себя запускать. )
по идее, надо же сначала загружать изображение :
C++123Image image;image.loadFromFile("hero.png");Потом изображение передавать в текстурку:
C++123Texture texture;texture.loadFromImage(image);потом только передавать текстурку в спрайт:
C++123Sprite sprite;sprite.setTexture(texture);Я могу, конечно ошибаться)
Необязательно. У изображения есть встроенные функции, которых нет у текстуры.
К примеру маска, не отображать определённые цвета. Это было оговорено в одном из первых уроков. -
АвторСообщения
Для ответа в этой теме необходимо авторизоваться.