Quantcast
Channel: Форум программистов и сисадминов Киберфорум
Viewing all articles
Browse latest Browse all 518344

Одну текстуру вывести несколько раз, при этом другие не должны пропадать - SFML

$
0
0
Вообщем, немного покопался в этой библиотеке, вывел текстурки на экран и все такое.
Но у меня вопрос: есть одна текстурка, которую мне нужно вывести на экран в нескольких местах, как это сделать?
Если подробнее, то делаю простую игрушку. Сейчас работает консольный вариант. Состоит из матрицы 4*4. Матрица изначально инициируется нулями. Затем рандомно определяются две две ячейки, куда я записываю цифру 2. Далее по циклу вводится в рандомное место новая двойка. Ну, это только часть игры, но получается, что один и тот же объект, одну и ту же текстурку нужно вывести несколько раз так, что бы все предыдущие текстуры не исчезли после обновления экрана. Так как текстурка одна, выводить все элементы копипастом не очень красиво.

Код:

Texture t2, t4;
        t2.loadFromFile("G-pictures/2.png");
        t4.loadFromFile("G-pictures/4.png");
        Sprite s2(t2), s3(t2);

/////много всякого кода, пропустим
//здесь на месте знач1 и знач2 вставляю элементы массива, которые хранять точку, куда надо вставлять объект
s2.setPosition(знач1, знач2);
s3.setPosition(знач3, знач4);
window.draw(s2);
window.draw(s3);
window.display();

Получается много копипаста. А если мне придется вывести 5 таких текстурок?
Еще, если в матрице стоят рядом две одинаковые цифр, то они складываются, например:
Начальная матрица:
0022
0000
0000
0000

Матрица после движения вправо:
0004
0000
0000
0000

Нужно заменять объект.
думаю создать массив объектов, и выводить его содержимое на экран, но я слегка запутался что и как делать, вообщеп рошу небольшой помощи...

Viewing all articles
Browse latest Browse all 518344

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>