Как и текст, на экран можно вывести текстуры. Прежде всего нужно помнить, что загружать текстуры можно только те, что находятся в папке X:GTA SA\MODELS\TXD\. Поэтому кидайте свои текстуры в эту папку а потом загружайте их.

Итак, первый делом, нужно загрузить TXD-файл, в котором есть текстуры. Делается это опкодом:
  • 0390: load_txd_dictionary 'LD_POKE'
Здесь:
'LD_POKE' — имя тестуры. Обратите внимание, что расширение указывать не нужно. Так же нет необходимости проверять на загруженность, так она 100% будет загружена(даже проверки такой нету  ;)  )

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

Что бы мы могли выводить нужные текстуры, нужно указать им номер(номера начинаются от 1 до +∞):
  • 038F: load_texture "cd10c" as 1
Здесь:
"cd10c" - имя картинки(см. Картинка 1)
1 - присваиваем ей номер



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

Есть два опкода для рисования текстур:
  • 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:
Code
:TEXTURE
thread 'TEXTURE'
wait 0    
if
0AB0:  key_pressed 49
jf @TEXTURE
0390: load_txd_dictionary 'LD_DUAL'
038F: load_texture "light" as 1
wait 250

:TEXTURE_1
wait 0
03f0: enable_text_draw 1
03E3: set_texture_to_be_drawn_antialiased 1  
038D: draw_texture 1 position 150.0 150.0 scale 25.0 25.0 RGBA 255 255 255 255    
if
0AB0:  key_pressed 49
then
0391: release_txd_dictionary
wait 250
jump @TEXTURE
end         
jump @TEXTURE_1
Результат говорит сам за себя:


Yurko_UA   (29.08.12 20:25)
как сделать чтоб текстура мигала?

FOXMAN   (29.10.12 18:19)
UP! Апнул статью, тоже хочу узнать, можно ли сделать, что бы текстура мигала?
Вход на сайт

Поиск
Категории раздела
Мини-чат
Пожалуйста, все вопросы по скриптингу задавать на форуме!
Наш опрос
Как Вы относитесь к ситуации с OpenIV?
Всего ответов: 1
Активность на сайте
Пожертвования
Кошельки WebMoney:
U859420971000
R407741810602
Z331072372430
E314272616890
Друзья сайта
Полезные ресурсы
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Сегодня нас посетили:
wmysterio
Реклама