Собственный HUD
Предисловие: Кхм..Кхм... Как всем известно, то мне часто приходят сообщения, вконтакте.ру или в асе... А как я сделал то, а как я сделал это... Показывая всем одно да по тому-же я немного 13/14.ся. И по этому я ставлю туторы сюда с очень сложными процедурами, так как например проигрывать анимацию, поместить свой контент в движок я уже не рассматриваю, но я показываю очень интересные фишки и скриптинг. Вот например часто задаваемые вопросы: Вид от 3го лица я уже поместил, а вот хад... НЕТ! Вот я и помещу. Пользуйтесь!
Поехали!
Я начну с упоминания, что я знаю Scaleform. Так как, там никогда не было ничего плохого в изучении некоторых UnrealScript. Таким образом, я буду помещать рисунок пользовательский HUD с использованием Canvas.DrawText и Canvas.DrawTile функций.
Мы начнем с создания нашей HUD класса:
Quote
class MyHUD extends UTHUD;
defaultproperties
{
}
Это, в сущности, является основной шаблон для любого класса. Затем мы будем рисовать основной: "Hello World". Таким образом, мы будем использовать этот код, и подчеркну, в разделе будет иметь соответствующие описания:
Quote
class MyHUD extends UTHUD;
function DrawMyText()
{
Canvas.SetPos(100,100);
Canvas.SetDrawColor(255,255,255,255);
Canvas.Font = class'Engine'.static.GetMediumFont();
Canvas.DrawText("Hello World");
}
defaultproperties
{
}
В этом разделе функция указывает, где мы хотим поместить текст обращается. Координаты расположены с левого верхнего угла экрана. Так вот 100 пикселей по горизонтали и 100 пикселей вниз.
В этом разделе функции указывает цвет, который мы хотели бы перекрасить текст в формате RGBA (красный, зеленый, синий, Alpha / Непрозрачность). +255255255255Так будет: белым с не непрозрачностью и 0,0,0,200 будет черным с небольшой непрозрачностью.
В этом разделе просто указывает текст, который мы хотели бы привлечь, будь то небольшой фразы или полное предложение.
Теперь, просто добавив это вовсе не означает, что текст будет отображаться на экране, как только мы все вместе собрали. Вам необходимо добавить одни заключительный функции в класс, так мы добавим следующее:
Quote
function DrawGameHud()
{
DrawText();
}
Этот раздел должен быть всегда последней функцией в вашем классе интерфейса, также отметить, что все перечисленные там обращается именно в таком порядке и, следовательно, будет сделан на экран в том же порядке.
Окончательный код должен выглядеть следующим образом:
Quote
class MyHUD extends UTHUD;
function DrawMyText()
{
Canvas.SetPos(100,100);
Canvas.SetDrawColor(255,255,255,255);
Canvas.Font = class'Engine'.static.GetMediumFont();
Canvas.DrawText("Hello World");
}
function DrawGameHud()
{
DrawMyText();
}
defaultproperties
{
}
Все, теперь все готово!!!