Объекты произвольной формы (кисти). Часть 2
"...клин клином..."
(для этого понадобятся файлы из Анрила. Или выберите вместо пламени что-то другое)
В первой части мы создали крутой светильник, но пора переходить к более сложным манипуляциям. В этом туториале мы научимся создавать более сложные объекты. Объекты сложной формы
Для целей туториала будем считать что если объект состоит из более, чем одной кисти, то он - сложный. Мы научимся создавать такие объекты и как их группировать в одну фигуру (кисть), которую впоследствии можно сохранить для последующего использования. Т.к. источники света - основа любой карты, начнем с создания светильника с подставкой.
Простая подставка для светильника.
Начнем с обычной комнаты 512x512x512. Наш светильник мы создадим в центре. Это чтобы наши кисти при создании пересечений не пересекались гранями с другими объектами Начнем с простого. ПКМ по Создать Конус. Установим его высоту на 32, внешний радиус на 64. Остальное нам неважно. Жмем Вuild и закрываем окно свойств. Поворачиваем его вершиной вниз. Выбираем для него текстуру, и жмем Добавить. Это основа нашего светильника (сюда мы будем ставить само "пламя"). Давайте сейчас приделаем к него "ручку" для крепления на стену. ПКМ по Создать Куб, и вбиваем в свойствах 16x16x128. Сравняйте полученный куб с конусом как на картинке ниже.
Жмем Добавить. Вроде и всё, но давайте проявим ещё немного креативности. Добавим ещё один конус, высотой в 32 и внешним радиусом 16. Этот конус появиться уже перевернутым (если вы не ресетнули кисть до этого). Так нам и нужно. Подровняйте его тоже, чтоб получилось как на рисунке.
Жмем Добавить. И напоследок добавим основу, которая будет держать ручку. Создадим куб 32x32x16. Подровняем его.
Добавляем. У нас должно получиться что-то похожее на нижний рисунок:
Теперь установим размеры красной кисти такими, чтобы она целиком охватывала наш светильник. Проверьте по всем проекциям, чтобы он был внутри красной кисти. Далее жмем Пересечение, и получаем:
Сейчас эту кисть можно сохранить. Запомните: Сохранение/Загрузка - багнутые, так-что делаем ЭКСПОРТ кисти (как .t3d) а потом ИМПОРТ (при надобности). Дадим ему умное имя, напр. "torchholder". И ещё совет - т.к. нам придется удалить все кисти, то ПОСЛЕ того как вы поместили объект внутрь КК, но ПРЕЖДЕ чем нажать Пересечение, нажмите кнопку Выделить все Сущности внутри Кисти . Теперь все кисти, использованные для создания нашего светильника выделятся. и вот теперь жмем Пересечение. Убедимся, что КК выглядит, как нужно, и если все ок, можно жать DEL. Теперь переместим КК туда, где бы мы хотели добавить такой светильник и жмем добавить. Делаем Пересчёт (F8). Если окно 3D потемнеет (если кое-кто забыл поставить освещение), смените режим отображения с "Динам. освещение" на "Текстуры". Теперь ставим на светильник пламя. Переходим на Сlasses (если вы все ещё в текстурах), и выбираем Light --> TorchFlame. В окне 3D добавляем с ПКМ пламя на светильник. [Опция добавления ВСЕГДА будет второй по счёту]. Выровняем его в окнах проекций, и снова делаем Пересчёт.
В окне 3D переключимся обратно в режим "Dynamic lighting". Довольно таки темно, верно? Добавим ещё один светильник на стену напротив. Делаем ИМПОРТ прежде сохраненного светильника. Можно и просто переместить КК, но нам нужно было убедиться что мы можем импортировать нашу кисть. После импорта переместим кисть к сене напротив, повернем, чтоб он стоял симметрично, в общем, придаем товарный вид. Теперь в окне вида сверху выделяем пламя, и жмем CTRL-W для его дубликации. Перемещаем новое пламя в центр второго светильника. Пересчёт.
Добавляем РlayerStart, Пересчёт, Тестируем (CTRL+P).
Светильники вышли так себе, слишком высоко и трудно разглядеть. Исправим этот недочёт. В вернем меню выбираем Brush --> Reset. КК должна выровняться и отцентрироваться. КК всё ещё будет иметь форму нашего светильника, но она будет перевернута. Ничего, сейчас исправим. Делаем ПКМ по коричневой кисти, которая есть нашей комнатой. Выбираем Copy Polygons...-->To Brush. Эта операция превратит КК в "клон" выделенной, в нашем случае - нашей комнаты. Сейчас в окне с видом сверху переместим КК так, чтобы одна её грань касалась нашей исходной комнаты и жмем Разность (Subtract) (Помните, что перед тем, как переместить КК нажмите кнопку Снять выделение, либо щелкните где-то на пустом месте в окне 2D, чтоб снять выделение с начальной комнаты).
Теперь добавим свет в окно 3D. В окнах 2D разместим свет так, чтобы он находился меж светильников, и чуточку ниже. Сделаем Пересчёт. Вот каким должен быть результат:
В окне вида сверху переместим PlayerStart в дальний конец новодобавленной секции (чем подальше от светильников). Делаем Пересчёт, и тестируем. Сейчас у нас есть довольно широкий и длинный коридор с двумя огромными светильниками на другом конце. Пройдитесь, поглядите на светильники. Наверняка они получились на отлично. Но комната выглядит довольно скучновато. Но давайте что-то в нем замутим!
Стройплощадка
Если нам нужно создать какой-нибудь объект, лучше всего делать это в обособленной части карты, и уже затем перемещать их в нужное место (наверняка вы замечали следы этого, загружая уровни некоторых игр в их редакторах). Назовем её стройплощадка. Лучше сделать её довольно большой, чтоб не переживать потом о ненужных пересечениях. Зададим размер кисти 1000x1000x1000 и переместим её куда-нибудь в сторону.
Жмем Разность (Subtract) и получаем большую пустую комнату. Обычно лучше затекстурить её чем-то светлым (дефолтная текстура), чтобы лучше видеть предметы внутри. В этой комнате строим всё что нам нужно, мутить всякие фишки, и уже отсюда тащим куда надо. Если вам некогда возится с освещением, просто включите режим вида "Textures" во время работы в этой комнате. А теперь давайте тут кой-чего замутим крутого для нашей комнаты.
Колонна обыкновенная
Как насчёт добавить сюда несколько колонн? Делаем на КК ресет и зададим ей размер 512x64x64. Получим высокий красный столб. Выберем красивую текстуру и нажмем Добавить. Выглядит невзрачно Давайте добавим деталей. Создадим конус размерами 32 (выс) и 64 (внеш. радиус). Подровняем конус к колонне.
Теперь перевернем конус вверх тормашками и поставим его с верхего конца. жмем Добавить. Уюедимся что на колонне нужные текстуры, и что они выровнены Теперь увеличиваем КК так, чтобы она охватывала всю колонну (с конусами) и делаем Пересечение. После операции пересечения наша кисть примет форму колонны. Если нужно - сохраните её (ЭКСПОРТ!!) и затем переместим кисть в нашу комнату. Потащим её в какой-то угол и нажмем Добавить. Повторим, пока у нас не получится следующая картина:
После окончания делаем Пересчёт и тестирование.
Вернемся на стройплощадку и удалим все кисти, составлявшие колонну. Сделаем Пересчёт, чтоб они не мозолили нам глаза. Сейчас нужно добавить источник света на место появления игрока. Конечно можно бы просто поставить тут стандартный объект света. Но лучше что-то более реальное так-что давайте создадим иной источник. На сей раз замутим что-то особое. Сделаем напольную лампу. Конечно можно тупо пойти и кинуть на уровень дефолтный фонарь, но мы же ищем лёгких путей! Да и так мы ничему не научимся!
Напольная лампа
Перейдем на стройплощадку и создадим лампу на пьедестале, с металлическим каемкой. Начнем с более сложной части, металлической каемки. Начнем с куба размерами 64x64x64, выберем текстуру, и добавим его. Теперь создадим пару отрицательных кистей и вырежем нашу "клетку". Зададим кубу размеры, чтоб он выходил за предыдущий куб но не пересекался с верхом либо низом. Скажем 48x48x80. Ровняем его следующим образом.
Делаем операцию Разности (Subtract). На предыдущей кисти появится дыра. Повернем кисть на 180 и проведем снова операцию Разности (Subtract).
Всё уже почти готово, добавим пару мелких проемов. Зададим размеры кисти 48x8x8. Выравниваем её так:
Если вы не можете выровнять кисть, то уменьшите шаг сетки :) Например до 4. Итак ровняем, жмем Добавить. Перемещаем кисть на противоположный конец, и т.д. по всем 4-ем углам. Итак, клетка готова, осталось добавить стойку. Задаем кисти размеры 64x32x32 и центрируем по низу клетки. Добавляем. И наконец основа - размером 16x64x64, выровняем её к низу стойки. Должно получиться такое.
Осталось лишь разместить наше творение в середине КК, и сделать пересечение. Двигаем кисть, принявшую форму напольной лампы и добавляем её. Например на пол посредине между PlayerStart и второй парой колонн.
Теперь добавим источник света посредине металлической клетки напольной лампы. Делаем Пересчёт и убедитесь, что вид 3D окна включен на "Dynamic Lighting." Теперь у нас есть лампа, отбрасывающая прикольную тень! Хотя, вообще-то выглядит она не как источник света, а как нечто сверхъестественное Так-что добавим-ка в середину "клетки" пламя (TorchFlame) Охохо! Слишком большое оно для нашего светильника. Но это не беда. Выделяем TorchFlame, жмём по нему ПКМ. В окне его свойств на вкладке Display переходим на пункт DrawScale. Там должна быть единичка (1). Введем сюда число в районе 0.2. Так-то! Делаем Пересчёт. Итог:
ЧСВ +120.