Toribash Lua Tutorial 4 – Рисование
В этом туториале я расскажу вам как рисовать в 2D и 3D
В конце этого туториала ты сможеш :
1.Рисовать текст я динамическим размером и задним фоном
2.Рисовать шарики.
Рисование в 2D
Все рисование в lua происходит благодоря хукам.Чтобы рисовать в 2d тебе нужно использовать draw2d хук и для рисования в 3d тебе нужно использовать хук draw3d .Так давайте рассматривать рисование в двух измерениях.
Это draw2d хук , давайте рассмотрим основные функции.
Для рисования чего либо ты долженг выбрать цвет r=красный g=зеленый b=синий и a=альфа(прозраный).Номера должны находиться в диапазоне от 0-1. (0,0,0,1) для черного и (1,1,1,0.5) для белого цвета.
Теперь попробуем нарисовать прямоугольник в Lua. х = х координат, у = у-координата, W = ширина, Н = высота и опция текстуры, которую я возможно рассмотрю позже.
Это код многоугольника x-x кооддината, inner-расстояние с внутреннего радиуса, y-у координата,outer-расстояние с внешнего радиуса.slices-кол-во углов(3-треугольник 4-четырехугольник).
Это код рисования текста.text=текст который будет нарисован , x= координата x , y=y координата.Шрифт выбирается цифрой 0-5 пример шрифтов вы увидите ниже
Важныя заметка:
Координаты (0,0) обозначают что текст находится в верхнем левом углу, тем выше значение "х", правее вы рисуете, тем больше "у" значение, тем более в нижней части экрана вы рисуете. Пример: 100, 300 будет 100px справа от верхнего левого угла и 300px вниз.
Так давайте начнем рисовать наш первый прямоугольник!
Этот скрипт рисует прямоугольник с (10,300) до (110,500).
Давайте нарисуем немного более продвинутей и попродуем добавить какой-либо текст и динамическую форму прямоугольника.
Так чтот я написал много вам непонятного так что давайте все рассмотрим.
Это текст который мы выводим на дисплей.
Это определяет где текст будет отображаться по оси x, в данном случае 200px сверху вниз .
ScreenWidth-ширина окна в котором будет отображаться текст ScreenHeight-высота окна в котором будет отображаться текст.
Размер шрифта (я предпочитаю именно этот размер потомучто это самый оптимальный вариант на мой взгляд)
Расположение по оси y.
Рисование в 3D
Как я уже говорил рисование в 3d нужнается в draw3d хуке
Для рисования сферы в 3D нужно использовать :
Сейчас если мы хотим нарисовать сферу над головой у тори мы должны узнать позицию нашей головы , для этого мы можем использовать :
Здесь x,y, и z являються x,y, и z координатами джоинта шеи нашего тори также можно сделать так :
список джоинтов здесь
А теперь можно и нарисовать что-то
Я нарисовал вот так
На этом туториал кончаеться.Спасибо за прочтение.Я расскажу вам более про 3D в следущих туториалах.