Форум администраторов игровых серверов

Форум администраторов игровых серверов (https://forum.zone-game.info/TT.php)
-   Обучающие статьи (https://forum.zone-game.info/forumdisplay.php?f=180)
-   -   Создание своего UTX файла (https://forum.zone-game.info/showthread.php?t=34822)

OneThunder 19.04.2014 22:54

Создание своего UTX файла
 
Напишу детальный гайд по добавление любой картинки любого типа в игру.

Нам понадобится

Photoshop
DDS Plugin от NVidia
UT 2004
L2EncDec http://rghost.ru/54413780
все это можно найти в гугле.

Буду максимально краток

0)Устанавиваем все програмки, плагины


1)Находим свою картинку
1.1)Открываем в Фотошопе


3)Создаем новый документ с размерами Power of Two
Примеры размеров:
32x32 ; 64x64; 512x512; 1024x1024


4)Нужную картинку подстраиваем под созданный в шаге [3] документ.



5)Сохраняем в формат DDS





NOTE:Есть 3 Основных Варианта сохранение .DDS файла, в зависимости от изображение.


В Краце DXT1 Обычный без альфа канала - остальные с альфа каналом но разным типом сжатия и свойств

http://imghost.in/img/2014-04/20/8ih...svl6nk7foq.jpg

1) DXT1 Стандартный No Alpha



2) DXT3 Стандартный Explicit Alpha



3) DXT5 Стандартный Interpolated Alpha

*Почитать подробнее про эти свойства можно тут


6)Импортируем в UT 2004

http://imghost.in/img/2014-04/19/dig...katbq0mpu8.jpg
http://imghost.in/img/2014-04/19/jwv...vibi2mjlnz.jpg

Выбрали файл и Импортируем...

http://imghost.in/img/2014-04/19/lze...odxh2d40ec.jpg

При желании изменяем параметры картинки

7)Сохраняем файл


Далее нам надо дать понять клиенту что это вроде как его родной файл и убедить его что он свой))


8)Кодируем файл
Сохраненный файл кидаем в корень EncDec'a
Заходим в L2EncDec и открываем текстовым редактором encode.cmd
http://imghost.in/img/2014-04/19/mpk...rn5i8rkp4x.jpg

И запускаем батник. После нам должен появится файл Enc-Filename.utx вот он то нам и нужен

http://imghost.in/img/2014-04/19/pg3...80i7rv2zty.jpg

Удаляем приставку файла Enc- и суем его в D:/GameFolder/LineageFolder/SySTextures


Далее заходим в страничку с комюнити. И где нам надо пишем такой код.

Код:

<html noscrollbar>
<!--Заголовок окна-->
<title>Community</title>
<body><br>
<table width=800 height=500 background="ZoneGameImg.BackgroundImage">
        <tr>
                <td>
                <center>
               
                        <table width=202 cellspacing="1" >
                                <tr >
                                <td align="center" background="L2UI_CT1.Windows_DF_Drawer_Bg"><center><button value="Моя Кнопка" action="bypass _bbsmultisell:111444;_bbspage:shop" width=202 height=34 back="L2UI_CT1.OlympiadWnd_DF_HeroConfirm_Down"  fore="L2UI_CT1.OlympiadWnd_DF_HeroConfirm" ></center>
                                </td>
       
                                </tr>
                        </table>
                </center>
                </td>
        </tr>
</table>
</body></html>

Где http://imghost.in/img/2014-04/20/03i...ydcgjva2nd.jpg

ZoneGameImg - Название UTX Файла.
BackgroundImage - Название картинки в самом UTX паке (который указывается при импорте)


Вуаля!

http://imghost.in/img/2014-04/20/h85...6nup4xu2b9.jpg


Импорт множество текстур в 1 пак
NOTE 2: При желании в 1 пак UTX. Можно импортировать множество текстур как на примере ниже

Импорт


Настройка пакета

PROOFIT!11
http://imghost.in/img/2014-04/20/a43...nbaep6lvmi.jpg

Скачать данный тектур пак.




Вот еще маленькая ремарка, Вкладка Group, где я указал Texture2D это больше для удобства использования именно в редакторе, обычно в UDK если используются ножество типов файлов, текстуры, материалы ротейторы и прочее юзается примерно такая иерархия
Структура:
Свернуть ↑Развернуть ↓



И вызываем так как и выше.

Код:

<table width=800 height=500 background="ZoneGameImg.Image1">

<table width=800 height=500 background="ZoneGameImg.Image2">

<table width=800 height=500 background="ZoneGameImg.Image3">




Писал на скорую руку, если что надо пишите поменяю, за граматические и прочее ошЫбки поправлю на днях.

Retribution 20.04.2014 00:34

Re: Создание своего UTX файла
 
Спасибо большое, очень пригодится.

Pretus 20.04.2014 00:36

Re: Создание своего UTX файла
 
да очень, уже проверил и работает отлично, единственное что пока не понял, ты задал размер картинки, и он выставился четко, у меня все равно не хочет выставлять нормально, выглядит код так:

PHP код:

<table width=770 height=480 cellspacing=0 cellpadding=0 background="kb.front1"


OneThunder 20.04.2014 00:45

Re: Создание своего UTX файла
 
Чтоб сделать размеры Per Pixel вам надо при создание имаги соблюсти некоторые правила

как тут

http://imghost.in/img/2014-04/20/ges...14gdwn3a5f.jpg


Либо же я не понял сути вашей проблемы :redlol:

скрин бы и я бы понял лучше)


Pretus 20.04.2014 01:01

Re: Создание своего UTX файла
 
[/QUOTE]

о_О у меня этого нет :eo:


а про картинку в точку, в этом и была проблема.

OneThunder 20.04.2014 01:06

Re: Создание своего UTX файла
 
Цитата:

Сообщение от Pretus (Сообщение 360369)

о_О у меня этого нет :eo:

Нажми на мою аватарку)

Pretus 20.04.2014 01:16

Re: Создание своего UTX файла
 
Цитата:

Сообщение от Temptation (Сообщение 360370)
о_О у меня этого нет :eo:

Нажми на мою аватарку)

ппц аж стыдно :Olen'::Olen':

Добавлено через 53 минуты
еще было бы не плохо добавить к мануалу, как создать группу текстур, скажем 2-3 и более картинок в одном файле.

Зы я уже догадался и сделал, просто будущему поколению

OneThunder 20.04.2014 12:22

Re: Создание своего UTX файла
 
Добавлено через 20 часов 29 минут


Создание текстуры с альфа каналом, или делаем кнопку с прозрачным фоном.

0)Краткое вступление

Для начало надо понять как работают картинки с альфа каналом (прозрачностью) в UT2004. К примеру, Есть Кнопка.
http://imghost.in/img/2014-04/21/asq...2qxcn47sdu.jpg

и в документе во вкладке "каналы", по мимо Red Green Blue есть дополнительный канал, Alpha, и значения в нем устанавливают только черными и белыми цветами где 100% белый это 100% непрозрачность, а 100% черный это 100% прозрачность, все градации между ними можно использовать как плавный переход (мягкие тени etc.)

http://imghost.in/img/2014-04/21/2vs...rc47i6xys1.jpg

1) Создаем документ
NOTE:
Как и в уроке выше используем создание документа используя правило Power of Two.
Но тут делаем немного иначе.
Использовать можно и значение не только одинаковые по Ширине и Высоте(64х64,512x512 etc) К примеру допустимое значение еще это 256х64 512х256 и так далее.


http://imghost.in/img/2014-04/21/tz0...lk4xaisg8v.jpg

2) Играемся с дизайном кнопки, убираем фон, делаем иконку.
После некоторых манипуляций получаем желаемый результат основной кнопки - Normal State:

http://imghost.in/img/2014-04/21/2es...em4r2x56ra.jpg

как делать дизайны научитесь сами, благо есть много тематических форумов на данную тему (но этот я просто слепил:loltt0:)


3) Создаем альфа канал
В основном тут все просто, объеденяем все слои в 1 слой. Нажимаем ктрл клик на эту иконку чтобы сделать выделение слоя.
http://imghost.in/img/2014-04/21/xo8...o5wv1kjtpr.jpg

С выделенным слоем заходим в каналы и создаем новый.
http://imghost.in/img/2014-04/21/ui0...382dtg8g3y.jpg
Заливаем выделение белым цветом.
http://imghost.in/img/2014-04/21/7c8...hf7irmboef.jpg

DONE.

3)Создаем состояния кнопки.

Тут тоже все просто, есть 3 состояние кнопки, как в вебе, Normal, OnHover, OnPressed, только в L2 структуре немного по другому.

Normal - Картинка оригинальная не имеет суффиксов в название.
OnHover (в L2 - Over) - Имеет суффикс _Over
OnPressed (в L2 - Down) - Имеет в л2 суффикс _Down

Пример

http://imghost.in/img/2014-04/21/8l4...dx5x4n2j7i.jpg

+ я юзал данный тип компресии при сейве

http://imghost.in/img/2014-04/21/4db...tdqsqpmw9x.jpg


4)Импорт в UT2004

Сохраненныe ддски импортируем как всегда. только с пометкой ALPHA.

http://imghost.in/img/2014-04/21/mu3...n1ohsa7y6a.jpg

http://imghost.in/img/2014-04/21/1lo...trlz1wt4a1.jpg

И как в уроке выше...

1)Сохраняем UTX
2)Кодируем в 121 EncDec'oM
3)Ставим текстуру в SysTextures


5)Кнопка.


Код:

<button value="" action="bypass _bbsmultisell:111444;_bbspage:shop" width=202 height=34 back="ZoneGameImg.CraftButton_Down"  fore="ZoneGameImg.CraftButton" >

Рассмотрим все параметры тэга Button
В коде кнопки меняем данные значения.
Так как мы написали сам текст кнопки прямо на самой кнопки ХД (Кнопкосепшин) мы в поле

value="" не пишем ничего
action="" то что будет выполнять наша кнопка
width=202 height=34 ширина и высота
back="ZoneGameImg.CraftButton_Down" Когда на кнопку нажимают
fore="ZoneGameImg.CraftButton" Стандартное состояние кнопки

Имейте в виду что состояние при наведение курсора на кнопку генерируется через клиент както я хз ХД

В общем :D

http://imghost.in/img/2014-04/21/wsw...d2x148kdo7.jpg
5)профит

Pretus 29.04.2014 11:03

Re: Создание своего UTX файла
 
вопрос, а копни надо рисовать 3? под каждое состояние?

OneThunder 29.04.2014 11:07

Re: Создание своего UTX файла
 
да, если делаете полную функциональную кнопку надо 3 состояние

Normal State - Обычное состояние, когда на кнопку не навели мышкой, или не нажали на нее

onHover (Over) - Когда на кнопку навели курсор мыши

onPressed (Down) - Когда на кнопку нажали


После упаковки всех трех картинок с приставками

JoraCartinka
JoraCartinka_Over
JoraCartinka_Down

В коде кнопки надо только указать 2 состояния

back="ZoneGameImg.CraftButton_Down" Когда на кнопку нажимают
fore="ZoneGameImg.CraftButton" Стандартное состояние кнопки

Состояние Over берет сам движок с вашего UTX пака


Текущее время: 02:40. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot