DOOMer
1590 постов
Карма: 103
#1 19 января 2012 в 15:23
Итак, этом туториале я попробую объяснить основы работы с кривыми при создании Q3-уровней. Для работы понадобится (как впрочем и всегда) редактор GtkRadiant и сама третьеквака – для тестирования карт. Ну что ж, приступим.<br /><br />Создание простой арки<br /><br />Одной из основных областей применения кривых в Quake3-картострое, является создание арок готического стиля. Вот и мы сейчас будем сооружать именно этот архитектурный элемент.<br /><br />Для начала создаём средних размеров комнату. И тут же клонируем её, отодвигая клон от предка примерно на 192 юнита. <br /><br />После этого нам потребуется соединить эти комнаты между собой небольшим коридором. Как уж вы там это будете делать, сколько и каких брашей используете – не суть важно. Главное чтобы у вас получилось нечто, напоминающее такой вариант.<br /><br />
<br /><br />Вот в этом коридоре мы и сделаем несложную арку. Арочные текстуры (среди стандартного набора) можно найти в каталоге gothic - gothic_door. Хотя конечно же можно использовать и любые другие текстуры.<br /><br />В верхней части коридора создаём браш, который впоследствии станет нашей аркой.<br /><br />
<br /><br />Теперь шелчком в меню Curve - End cap превращаем наш браш в кривую.&nbsp; Для создания арки с половиной свода необходимо выбрать&nbsp; Curve - Bevel, но этот вариант чаще применяется&nbsp; для получения закругления коридорных стен.<br /><br />
<br /><br />И тут же видим что наша “арка” лежит на боку. Поставить её в нормальное положение можно командами из меню Rotate. <br /><br />
<br /><br />После этого возможно потребуется изменить размеры арки, чтобы она плотно прилегала к соседним брашам.&nbsp; Это достигается путём работы с контрольными точками кривой Безье - меню Modify - Components - Vertex (или просто нажатие калвиши [V] на клавиатуре).<br /><br />
<br /><br />Путём несложных перемещений вертексов, заготовка для арки приняла вот такой вид:<br /><br />Далее при помощи меню Curve - Cap selection вызываем окно выбора вида кривых и придаём нашей арочной заготовке требуемый вид - Inverted End Cap.&nbsp; <br /><br />
<br /><br />Но получилось так, что видимые поверхности оказались развёрнуты внутрь арки. Исправляем это при помощи меню Curve - Matrix - Invert.<br /><br />После этого текстурируем нашу арку. Состоит она теперь из трёх плоскостей – двух фронтальных и собственно кривой. Какие текстуры использовать для их «раскраски» - это уже дело десятое.<br /><br />А закруглённые стены создаются по тем же принципам. Только переворачиваний заготовки с кривой кроме как по оси Z практически не требуется.<br /><br />Колонны и прочая мелочь<br /><br />Ну а сейчас мы рассмотрим чуть менее сложные (на мой взгляд) приёмы работы с криыми. А именно создание колонн и конусов. Перыве опять же подойдут для готических карт, а последние – для чего-нить органического.. вдруг кому-то захочется создать уровень во внутренностях гигантского червя =)<br /><br />Колонны в GtkRadiant создаются не просто, а очень просто. Добавляем на уровень браш необходимой высоты и толщины, и потом просто применяем к нему команду меню Curve - Cylinder. Вуаля – наша колонна готова!<br /><br />
<br /><br />Клыки на уровне Arena Gate - это всего лишь конусы, немного изогнутые в разные стороны. И ничего более =) Создаются они легко. Берём браш нужной толщины и высоты и обрабатываем его командой меню Curve - Cone. И всё.<br /><br />
<br /><br />Искривление же конусов происходит следующим образом. Переходим в режим редактирования вершин (aka вертексов) клавишей [V], и после этого двигаем цветные точки в окнке 2D-редактирования. Добавление и удаления вершин производится через меню Curve - Insert\Delete - Colums\Rows. Таким же образом искривляют и цилиндры, превращая их тем самым в трубы и прочие нестандартные элементы интерьеров.<br /><br />Замазывание глюков<br /><br />Ну и напоследок скажу пару слов о том как избавиться от визуальных глюков, иногда производимых кривыми. Касается это только Bevel’ов и Cap’ов, конусы и цилиндры тут не причём<br /><br />Глюк заключается в том что если лежащий за кривой браш «одет» в текстуру отличающуюся от текстуры кривой поверхности, то этот браш имеет свойство просвечивать на местах его соприкосновения с кривой.<br /><br />Чтобы этого не происходило, на грани, соприкасающиеся с кривой обычно накладывают текстуру common/caulk, которая сообщает движку о том чтоданный полигон не требуется отображать в игре.<br /><br />Скачать демонстрационную карту (curvez_demo.map)<br /><br />
<br /><br /><br /><br />
<br /><br />[right]автор - DOOMer[/right]
Вертексы должны образовывать конвексный браш
My Quake Maps

Core i7 8700 3.3 Ghz, 32 Gb RAM, GeForce RTX2060s
Gentoo Linux [amd64] | Windows 10 Home



сохранись перед дверью...два раза =)
Берсеркер
2296 постов
Карма: 214
#2 21 января 2012 в 12:40
работая с кривыми, столкнулся с проблемой текстурирования.<br />Создал Inverted EndCap и получил жуткий текстур-маппинг на боковых стенках:<br /><br />Погуглив, нашел простое решение:<br />вызываем surface inspector (S), в нижнем разделе Texturing для Patch есть кнопка CAP.<br />Надо просто нажать несколько раз на неё, пока не получим желаемый маппинг:<br /><br />Сорри, если в туториалах это где то было, но я читал подробно только текущий тутор про curves, и тут про это не было сказано.<br />Я сам не смог допереть до этого, т.к. нажимал на ту кнопку, но получал каку&nbsp; :D&nbsp; Надо было просто нажать три раза.<br /><br />Кстати, ещё лучше использовать Patch properties (Shift-S).<br />Бывает нужно инвертировать текстуру на курве, тут поможет: Curve - Matrix - Transpose&nbsp; (Shift-Ctrl-M) в сочетании с Invert (Ctrl-I) и Shift-Ctrl-I.
Машина несла меня через неведомые районы Галактики сквозь пространство математической реальности быстрее скорости света. (C) Фред Саберхаген.