Добавлен , опубликован

Основы UnrealScript: Учимся на практике

Содержание:

UDK

Итак, начнем мы с того, без чего не обойдется создание проекта на UDK - кокаина и тюленей самого UDK. Скачать его можно на официальном сайте, и тут, в отличии от предыдущей статьи, нет никаких нюансов - вы можете сразу смело качать последнюю версию. Правда, есть нюанс использования самого UDK - на каждую игру желательно использовать отдельно установленный "экземпляр" редактора, так как окончательный проект, по сути, и займет собой папку UDK (конфиги такие, что поделать).
А чтобы было более понятно, что к чему в самом устройстве UDK, краткий гайд по директориям редактора (не буду углубляться в поддиректории).
  • Binaries - тут размещены все экзешники редактора: универсальный экзешник UDK.exe (сам по себе запускает вашу текущую "игру", по умолчанию идет демка; с определенными параметрами может запускаться как сам редактор, как компилятор и т.д.), проигрыватель flash-файлов ScaleForm, генератор растительности и прочая дребедень. В общем, ее вам трогать почти не придется.
  • Development - тут находятся файлы разработки: исходники скриптов и файлов того же ScaleForm. В общем, именно в этой папке, верней, в ее поддиректории Src, мы и будем проводить время, в основном (при этом очень не рекомендую изменять стандартные исходники, так как компилируются все измененные файлы, и можно напартачить).
  • Engine - собственно, сам движок. Это папку я настоятельно рекомендую не трогать.
  • UDKGame - файлы, посвященные непосредственно вашей игре. В соответственных папках тут хранятся скомпилированные скрипты, конфиги, непосредственно сам контент (карты, модели, текстуры), видеоролики и т.д.. Нам эта папка понадобится исключительно для манипуляций с тестовой картой (мы ведь не собираемся делать настоящую игру, а так, плюшками балуемся).
А мегасложный процесс создания нового проекта состоит из двух этапов: первый - создайте в папке Development\Src папку с названием вашего мегапроекта (например, некая TestGame), в ней - папку Classes (все новые скрипты нужно создавать именно там), второй - в папке UDKGame\Config, в файле DefaultEngine.ini найдите фрагмент
[UnrealEd.EditorEngine]
+EditPackages=UTGame
+EditPackages=UTGameContent
и добавьте туда строчку +EditPackages=<название вашей игры>, в нашем случае, это +EditPackages=TestGame. Это скажет компилятору заглянуть в соответственную папку в исходниках и скомпилировать тамошние файлы. Подмечу, что новую строчку, отвечающую за новый ресурс, всегда нужно добавлять в конец списка, так как UDK компилирует их по очереди, и если ваша игра использует что-то из UTGame (а она будет использовать, и не мало), то UTGame должна скомпилироваться раньше.
Остается создать пробный уровень для всех наших опытов. Если вы знаете, как это делается - просто сделайте достаточно широкую площадку, добавьте старт для игрока и освещение. Нам этого хватит. Если же вы не можете создать уровень, или вам просто лень, можете скачать предоставленный в статье мой (кидать в UDKGame\Content\Maps\<папка с вашими картами>)

Редактор скриптов

Теперь нам нужен непосредственно текстовый редактор, чтобы писать эти самые скрипты. Есть много вариантов, например, весьма неплохим является комбинация Visual Studio и плагина nFringe, который, собственно, включает в себя полный референс с соответственными подсветками, и т.д.. Но для коммерческого использования его необходимо купить, так что, с мыслью "а вдруг" я вам советую бесплатный редактор, которым сам пользуюсь - ConTEXT. Скачать его можно на официальном сайте. Установите, язык используйте английский, так как я буду давать настройки на английском. Запускайте прогу и заходите в настройки (Options\Environment Options). Итак, по вкладкам:
  • General - проверьте, стоит ли галочка возле Remember editing positions, это поможет нам запоминать, где мы закончили работать с файлом. Также выставьте параметр When started на Open last file/project, тоже немало сэкономит времени.
  • Editor уберите галочку с Allow cursor after end of line, дабы не было кучи лишних пробелов после конца строчек в коде. Уберите галочку с Smart tabs, эта функция будет портить нам красивое выравнивание кода. Обязательно ставьте галочку возле Line numbers, для программирования жизненно важно знать, в какой конкретной строчке у нас ошибка. И по конец выставьте значения параметров Block indent и C/Java Block Indent на 4. Это отступ отдельных блоков кода от смежных частей. В общем, кто не понял, увидите на практике. Вообще, число индивидуальное, мне нравится 4, вы можете подобрать более подходящее для вас.
  • Execute Keys - нажмите на Add, чтобы добавить новое расширение, в появившемся поле введите "uc". В появившемся маленьком древе выберите F9, в строчке Execute поставьте путь к вашему файлу UDK.exe. В строчке Start in - то же самое, только без имени самого экзешника, только директория. В поле Parameters введите "make". Это все указывает на то, что мы хотим при нажатии F9 запускать этот файл, причем с параметром "make", и это значит, что редактор запустится в режиме компиляции. Смените Save на All Files Before Execution, чтобы при компиляции файлы сохранялись. Для пущего удобства поставьте галочки на Capture Console Output и Scroll Console to the Last Line.
Ну и в Assotiations можете добавить ".uc".
Последний шаг - скачайте со статьи файл-хайлайтер, и поместите его в папку Highlighters, в директории, куда вы поставили ConTEXT. Эта штука будет подсвечивать основные элементы кода (стандартные типы данных и команды, строчки, цифры и т.д.). Выставляется сверху.

UnCodeX

В нашем туторе иногда будет полезно заглядывать в "родительские" классы наших собственных классов (пока не спрашивайте, расскажу когда придет время), чтобы увидеть, что да как там устроено.Для этого можно использовать такую удобную прогу как UnCodeX. Она автоматически преобразит все существующие исходники движка в удобное древо наследственности, каждый класс которого можно просматривать и открывать во внешнем редакторе.
В общем, установить эту вещь можно отсюда, при установке выбирайте Full Installation, не помешает. После установки запустите программу, она автоматически определит, что запускается впервые, и предложит установить настройки. Соглашайтесь. Попадете в окошко настроек, сразу с выбранным подпунктом Source Paths. Нажмите Add, укажите путь до Development\Src и жмите Ок. Дальше просто соглашаетесь с предложением программы просканировать директорию. Итого, у вас есть структурированные исходники. В левом окне проги - пакеты ресурсов с соответственными классами, по средине - иерархия всех классов, начиная с абстрактного Object, справа - сам код исходника, снизу - лог и результаты поиска (если вы им пользуетесь).

Итог

Пока все, все приготовления завершены, мы готовы заниматься программированием, что и сделаем в следующей подстатье.