00039. Рисование на экране (Часть 2 - Текстуры)

Рисование на экране (Часть 2 - Текстуры)|В этом уроке Вы узнаете как выводить текстуры на экран.|wmysterio|wmysterio||||Прежде всего нужно помнить, что загружать текстуры можно только те, что находятся в папке "Игра\MODELS\TXD\". Поэтому кидайте свои текстуры в эту папку, а только потом загружайте их.

Итак, первый делом, нужно загрузить TXD-файл, в котором есть текстуры. Делается это опкодом:

0390: load_txd_dictionary 'LD_POKE'

Здесь: 'LD_POKE' — имя тестуры. Обратите внимание, что расширение указывать не нужно. Также нет необходимости проверять на её загруженность ( даже проверки такой нету )

Что бы выгрузить текстуры с памяти используйте опкод:

0391: release_txd_dictionary

Следует помнить, что выгружаются абсолютно все загруженные ранее текстуры! Что бы мы могли выводить нужные текстуры, нужно указать им номер:

038F: load_texture "cd10c" as 1

Здесь: "cd10c" - имя картинки ( см. Картинку ниже ) 1 - присваиваем ей номер × **Примечание:** номера текстур должны быть больше 0!

Так же обратите внимание на размер картинки ( в нашем случаи: 128x128 ). Он нам ещё пригодится!

Есть два опкода для рисования текстур:

038D: draw_texture 1 position 200.0 150.0 size 128 128 RGBA 255 255 255 255
074B: draw_texture 1 position 200.0 150.0 scale 128 128 angle 0.0 color_RGBA 255 255 255 255

Здесь: 1 - номер картинки 200.0 150.0 - координаты экрана где должна размещаться картинка 128 128 - размер картинки 0.0 - угол поворота картинки 255 255 255 255 здесь указываются цвета и прозрачность. Обычно так и оставляют, но если написать так: "0 255 255 255", то в картинке пропадёт весь красный цвет и вообще картинка поменяется ( это только в игре, с самой картинкой ничего не случаться )

Так же есть полезный опкод:

03E3: set_texture_to_be_drawn_antialiased 1

Он сглаживает картинку, то есть не видно жесткой пикселизации.

Как видите, опкодов для работы с текстурами немного, но их достаточно, что бы сделать отличную модификацию, например того же спидометра. Но спидометра мы делать пока не будем, а просто выведем текстуру на экран. Так же, как и текст, текстуры рисовать нужно в цикле и с использованием опкода 03F0.

Давайте напишем простой скрипт с использованием текстур. Немного усложним скрипт, сделаем что бы картинка появлялась, когда игрок нажмёт клавишу 1`:

Результат говорит сам за себя:

|2054|1|0|08727525`png`895`656`400`293``\|30804637`png`783`482`400`246``\||risovanie_na_ehkrane_chast_2_tekstury|1498916749

Last updated