Форум программистов, компьютерный форум, киберфорум
Наши страницы
SFML
Войти
Регистрация
Восстановить пароль
 
StanSmith
0 / 0 / 0
Регистрация: 26.07.2015
Сообщений: 149
1

С++ и SFML

05.04.2018, 18:53. Просмотров 311. Ответов 9
Метки нет (Все метки)

Всем доброго времени суток!Я использую граф.библиотеку SFML.
Хотел бы у вас поинтересоваться, почему не корректно выполняется программа,когда отрисовывается танк.То есть я меняю ему аргументы в функции setPosition(), но когда запускаю программу - он не меняет своей позиции.Или же бывает через какое-то время меняет.В чем могут заключаться ошибки?

C++
1
2
3
4
5
    Sprite tank,barrel;
    tank.setTexture(texture_tank);
    tank.setTextureRect(IntRect(0,0,64,32));
    tank.setOrigin(32.f, 16.f);
    tank.setPosition(300.f, 300.f);
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.04.2018, 18:53
Ответы с готовыми решениями:

SFML в C::B пытается что-то найти в D:\sfml-release\ которого нет
Добрый день, вторые сутки пытаюсь подключить SFML библиотеку к C::B. При...

Создание релиза exe файла SFML C++ на VS 2017 (не удается открыть входной файл "sfml-graphics-s.lib")
не могу собрать решение релиз версии, не пойму что я делаю не так постоянно...

Qt + SFML
Вообщем скачал сорсы sfml собрал их cmake'om (в этот адресс "F:\sfmllib\build")...

Qt + SFML
Подключил библиотеку SFML к Qt, но при компиляции выдает ошибки: (Файл .pro...

Виртуоз SFML!
Как считаете, это реально круто то что делает этот парень? Я от некоторых...

9
Croessmah
++Ͻ
14934 / 8527 / 1627
Регистрация: 27.09.2012
Сообщений: 21,001
Записей в блоге: 2
Завершенные тесты: 1
05.04.2018, 19:00 2
Цитата Сообщение от StanSmith Посмотреть сообщение
В чем могут заключаться ошибки?
В коде.
0
StanSmith
0 / 0 / 0
Регистрация: 26.07.2015
Сообщений: 149
05.04.2018, 22:29  [ТС] 3
Да ладно,никогда бы не догадался...Ну а если честно,есть ли какие-нибудь предположения из-за чего могут быть такие баги?
0
Croessmah
++Ͻ
14934 / 8527 / 1627
Регистрация: 27.09.2012
Сообщений: 21,001
Записей в блоге: 2
Завершенные тесты: 1
05.04.2018, 22:34 4
StanSmith, скорее всего, какие-то ошибки в логике работы или в использовании SFML.
0
Antikl
с++
313 / 303 / 157
Регистрация: 15.07.2015
Сообщений: 1,610
Завершенные тесты: 6
07.04.2018, 21:53 5
//ТО?
C++
1
2
3
4
5
6
7
8
9
10
sf::Texture texture;
texture.loadFromFile("texture.png");
 
sf::Sprite sprite;
sprite.setTexture(texture);
sprite.setTextureRect(sf::IntRect(10, 10, 50, 30));
sprite.setColor(sf::Color(255, 255, 255, 200));
sprite.setPosition(100, 25);
 
window.draw(sprite);
0
Croessmah
++Ͻ
14934 / 8527 / 1627
Регистрация: 27.09.2012
Сообщений: 21,001
Записей в блоге: 2
Завершенные тесты: 1
07.04.2018, 22:25 6
Минимальный компилируемый пример, демонстрирующий проблему надо, чтобы посмотреть что не так и, если что, собрать и попробовать у себя.
0
StanSmith
0 / 0 / 0
Регистрация: 26.07.2015
Сообщений: 149
08.04.2018, 00:33  [ТС] 7
А тут тоже картинка немного глючит?То есть не появляется на своем месте, а потом через определенное количество запусков отображается?
0
Croessmah
++Ͻ
14934 / 8527 / 1627
Регистрация: 27.09.2012
Сообщений: 21,001
Записей в блоге: 2
Завершенные тесты: 1
08.04.2018, 05:57 8
StanSmith, а где этот код расположен?
window.draw() должен быть в основном цикле, а все эти загрузки текстур - до цикла.
Также необходим цикл обработки событий окна. Поэтому и спрашиваю код.
0
StanSmith
0 / 0 / 0
Регистрация: 26.07.2015
Сообщений: 149
08.04.2018, 19:53  [ТС] 9
Вот,держите:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
#include <SFML\Graphics.hpp>
 
using namespace sf;
 
int main() {
    
 
    RenderWindow window(VideoMode(700, 700 ), "SFML-Project");
 
 
    Image image;
    image.loadFromFile("res/Sprite.jpg");
    //image.createMaskFromColor(Color(255,255,255));
 
 
 
    Texture t;
    t.loadFromImage(image);
 
 
    float currentFrame = 0;
 
    Sprite player;
    player.setTexture(t);
    player.setTextureRect(IntRect(90,60,120,220));
    player.setPosition(400, 400);
 
    
 
    while (window.isOpen()) {
        Event event;
 
        while (window.pollEvent(event)) {
            if (event.type == Event::Closed)
                window.close();
        }
 
        if (Keyboard::isKeyPressed(Keyboard::Left)) {
            player.move(-0.1, 0);
 
        }
        if (Keyboard::isKeyPressed(Keyboard::Right)) {
 
            player.move(0.1, 0);
            
            currentFrame += 0.005;
            if (currentFrame > 6) currentFrame -= 6;
 
            player.setTextureRect(IntRect(90*int(currentFrame), 350, 130, 220));
            
            
        }
        if (Keyboard::isKeyPressed(Keyboard::Up)) {
            player.move(0, 0.1);
        }
 
        window.clear(Color::White);
        window.draw(player);
        window.display();
    }
    return 0;
 
}
0
mrden777
5 / 13 / 12
Регистрация: 20.03.2018
Сообщений: 405
Завершенные тесты: 2
11.04.2018, 21:22 10
Ты должен координаты привязать к окну сначала - окно то подвижное у тебя и имеет другие координаты.
Чувачки напишите пожалуйса как это сделать я тоже мучаюсь.
Задача хотя бы зафиксировать окно чтоб оно не двигалось =)
0
11.04.2018, 21:22
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.04.2018, 21:22

Calculator SFML
ПОМОГИТЕ!!! Нужно написать калькулятор вычисления зароботной платы на C++ c...

Коллизия С++ SFML
Помогите. Не знаю, как в моем случае сделать коллизию. Вот код.Если не сложно,...

Графика в C++. SFML
Здаров, ребята. Скиньте плз ссылочку, где есть все что нужно для изучения 2д...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru