[Tutorial][RUS] Создание вашей первой карты

User avatar
fromkms
Posts: 18
Joined: Mon Feb 27, 2012 11:46 pm
Location: Russia

[Tutorial][RUS] Создание вашей первой карты

Post by fromkms » Sun Jul 14, 2013 7:36 am

Hello guys! My name is Sergey and i'm admin of Overgrowth Russian community
http://overgrowth.ru/
http://vk.com/overgrowthclub
Here is my first topic. I'd like to share "Creating your first map tutorial" translated into Russian which i made for our community. Original is here. Thanks to SteelRaven7 for creating this awesome tutorial and Roman for help in translation.
Already finished 3 parts like in original. You can find translated tutorial on our site.
If you have any suggestion - post feedback.

PS: I'll finish design of article in near future
Last edited by fromkms on Sun Jul 14, 2013 9:01 pm, edited 5 times in total.

User avatar
fromkms
Posts: 18
Joined: Mon Feb 27, 2012 11:46 pm
Location: Russia

Re: [Tutorial][RUS] Создание вашей первой карты

Post by fromkms » Sun Jul 14, 2013 7:36 am

1. Создание карты и описание ландшафта

В Overgrowth каждая карта состоит из ландшафта и статических объектов, добавленных на него. В этой части обучения мы узнаем, как создать карту с выбранным нами ландшафтом.

1.1 Создание вашей первой карты

Карты в Overgrowth хранятся в .xml файлах. Эти файлы расположены в папке Overgrowth/Data/Levels/ — и для каждой карты в Overgrowth имеется свой уникальный xml файл. Содержание xml файла: информация о ландшафте, объектах, которые находятся на карте, когда вы изменяете карту во внутри-игровом редакторе, то изменяется именно этот xml файл. Его так же можно открыть любым текстовым редактором. Приступим!

Давайте создадим вашу первую карту!

Наиболее простой путь создания карты — это копировать уже завершенную карту. Попробуйте выбрать, к примеру, Overgrowth/Data/Levels/Project60/2_impressive_mountains.xml. Чтобы создать новую карту просто скопируйте этот файл в Overgrowth/Data/Levels/. Переименуйте его, например, в «my_map.xml». Так держать! Теперь вы можете загрузить вашу карту, введя my_map.xml в главном меню и нажав Load.

1.2 Содержимое XML файла, или «Стойте! Что только что случилось?»

Только что вы создали точную копию уже имеющийся карты. Давайте посмотрим, из чего состоит xml файл. Откройте xml файл любым текстовым редактором (Notepad++ подойдет), среди строчек, найдите следующие:

Code: Select all

<Heightmap>Data/Textures/Terrain/impressive_mountains/impressive_mountains_hm.png</Heightmap>
<DetailMap>Data/Textures/ground_normal.tga</DetailMap>
<ColorMap>Data/Textures/Terrain/impressive_mountains/impressive_mountains_c.tga</ColorMap>
В этих строках указаны файлы,придающие ландшафту нужный вид. Давайте пока что не будем трогать эти строки, более подробнее мы разберем редактирование ландшафта в следующей части.

1.3 Краеугольный камень ландшафта Overgrowth

Чтобы редактировать ландшафт, вам необходимо понимать, как он устроен непосредственно в движке. Следующие файлы необходимы движку для создания полноценного ландшафта:
Image

Heightmap (Карта высот) — Определяет высоту ландшафта, чем светлее — тем больше высота, и чем темнее — тем ниже высота ландшафта.

Normal Map (Карта нормалей) — Хранит отклонение нормалей поверхности, используется для придания рельефа.

Color Map (Карта цвета) — Содержит цвет ландшафта.

Weightmap (Карта деталей ландшафта) — Определяет местонахождение деталей ландшафта. Подробнее смотри часть 2.2.

1.4 Добавление вашего уровня в меню для быстрого доступа.

1.Создайте превью (миниатюру) для вашей карты с параметрами 267×150, или используйте эту:
Image

(Правой кнопкой мыши по изображению -> Сохранить картинку как)
Сохраните изображение с именем «my_map.png» в папке Overgrowth/Data/UI/mainmenu/images/

2.Создайте резервную копию файла Overgrowth/Data/UI/mainmenu/menu.html Если что-то пойдет не так, то вы всегда сможете восстановить изначальное состояние файла.

3.Откройте Overgrowth/Data/UI/mainmenu/menu.html используя Notepad++ или другой текстовый редактор.

4.Найдите следующие строки в menu.html, где-то на 200 строчке:

Code: Select all

var levels = [
	{
	label:'Grass Beach',
	src:'images/grassbeach.png',
	level:'Project60/22_grass_beach.xml',
	},
	{
	label:'Aubrey - Lugaru Challenge 1',
	src:'images/lugaru_snow.png',
	level:'lugaru_snow_huts.xml',
	},
	{
	label:'Seaside Cliffs',
	src:'images/sea_cliffs.png',
	level:'sea_cliffs.xml',
	},
	...
5.Вставьте следующие строки:

Code: Select all

{
label:'My first map',
src:'images/my_map.png',
level:'my_map.xml',
},
Сохраните файл и зайдите в игру. Как вы могли заметить, в главном меню появилась ваша превьюшка, при нажатии на которую, будет загружаться ваша карта.
Image

Часть 1. Подведем итоги

Мы изучили основы, необходимые для создания вашей первой карты. Более детальный разбор содержания xml файла будет доступен в части 2.
Last edited by fromkms on Sun Jul 14, 2013 7:56 am, edited 2 times in total.

User avatar
fromkms
Posts: 18
Joined: Mon Feb 27, 2012 11:46 pm
Location: Russia

Re: [Tutorial][RUS] Создание вашей первой карты

Post by fromkms » Sun Jul 14, 2013 7:36 am

2: Разбор содержимого .xml файла и дополнительные настройки ландшафта

В этой части мы более подробно изучим содержимое xml файла.

2.1 Удалить все объекты на карте легко или «путь кувалды»

Когда вы создаете свою карту из уже существующей, вы хотите удалить все существующие объекты на ней. Есть два способа сделать это. Первый — непосредственно в самом редакторе карт, выделить все объекты на сцене «Ctrl + A» и затем нажать «Delete». Второй способ подходит, если карта «сломана» и не загружается в движке, вы можете удалить все или отдельные объекты используя .xml файл карты. Вот, как это сделать:

Все объекты,которые загружаются в карту выглядят так:

Code: Select all

<ActorObjects>
*определение персонажей, которые будут загружены на карту*
*определение оружия, которое будет создаваться на карте*
*определение ключевых точек, находящихся на карте*
</ActorObjects>

<EnvObjects>
*определение статичных объектов (окружения), загружаемого на карту*
</EnvObjects>

<Decals>
*определение декалей, которые располагаются на карте*
</Decals>

<Hotspots>
*определение триггеров на карте*
</Hotspots> (или  <Hotspots />, если пусто.)
И так, чтобы полностью очистить карту, удалите все данные, находящиеся в тегах. Код примет такой вид:

Code: Select all

<ActorObjects>
</ActorObjects>

<EnvObjects>
</EnvObjects>

<Decals>
</Decals>

<Hotspots>
</Hotspots>
Сохраните ваш .xml файл, затем загрузите вашу карту, она должна быть пустой (кроме ландшафта). Когда на карте не определена точка спауна (появления) игрока, вы будете появляться в случайном месте карты. Чтобы исправить это, разместите на сцене нового персонажа, затем нажмите «Ctrl + P» чтобы сделать его управляемым игроком. Сохраните вашу карту, нажав «Ctrl + S», перезапустите Overgrowth и снова загрузите вашу карту. Теперь вы появляетесь в выбранной вами точке.

Теперь у вас есть абсолютно пустая карта и вы можете работать с ней!

2.2 Детали карты (DETAIL MAPS)

Image
Детали карты (Detail maps) это текстуры, которые отображаются на ландшафте непосредственно в игре. Они указаны в .xml файле карты и располагаются согласно карте деталей ландшафта. Существует ограничение в 4 детали карты на уровень. Сами же детали карт описываются в .xml файле следующим образом:

Code: Select all

<DetailMaps>
   <DetailMap colorpath="Data/Textures/Terrain/DetailTextures/snow.tga" normalpath="Data/Textures/Terrain/DetailTextures/snow_normal.tga" materialpath="Data/Materials/snow.xml" />
   <DetailMap colorpath="Data/Textures/Terrain/DetailTextures/glacial.tga" normalpath="Data/Textures/Terrain/DetailTextures/glacial_normal.tga" materialpath="Data/Materials/ice.xml" />
   <DetailMap colorpath="Data/Textures/Terrain/DetailTextures/pebbles.tga" normalpath="Data/Textures/Terrain/DetailTextures/pebbles_normal.tga" materialpath="Data/Materials/gravel.xml" />
   <DetailMap colorpath="Data/Textures/Terrain/DetailTextures/dark_round_rocks.tga" normalpath="Data/Textures/Terrain/DetailTextures/dark_round_rocks_normal.tga" materialpath="Data/Materials/rocks.xml" />
</DetailMaps>
(Пример из 2_impressive_mountains.xml)

Тэг <detail map> указывает путь до отображаемой текстуры, карты нормалей, и путь до материала, который задает параметры, одними из которых являются частицы и звуки шагов по заданному ландшафту. Простейший путь изменить детали карт для своей карты — это скопировать уже готовые из другой карты и использовать в своей карте.
Image
(Вот пример деталей карты используемой в карте impressive mountains.)

Детали, применяемые на ландшафте основаны на карте деталей ландшафта, указанной в xml файле карты (Смотри часть 1.3). Карта деталей ландшафта состоит из следующих цветов, которые определяют, какая деталь будет накладываться в месте указанного цвета:

Красный — Деталь карты #1
Синий — Деталь карты #2
Зеленый — Деталь карты #3
Черный — Деталь карты #4

Они могут быть смешаны для создания плавных переходов между текстурами ландшафта. Цвет деталей карты совмещается с картой цвета (подробнее в части 1.3) чтобы создать цвет, отображаемый в игре.

Более подробно о воздействии карты цвета на детали карты можно посмотреть здесь (на английском)

2.3 DETAIL OBJECTS(Объекты ландшафта)

Detail objects (объекты ландшафта) используются чтобы быстро расположить мелкие статичные объекты, такие как трава и небольшую растительность на вашей карте. Эти объекты заключены в <DetailObjects> — тэг:

Code: Select all

<DetailObjects>
*Пример объекта ландшафта:*
<DetailObject obj_path="Data/Objects/Plants/Groundcover/Grass/WildGrass.xml" weight_path="Data/Textures/Terrain/sea_cliffs/sea_cliffs_grass_w.tga" density="10.000000" />
*Конец примера*
</DetailObjects>
Тэг <DetailObjects> — определяет путь до используемого объекта, и этот объект применяется согласно изображению, указанному в переменной «weight_path». Параметр density (плотность) определяет с какой частотой будут располагаться объекты на карте, чем больше значение — тем плотнее будут располагаться выбранные объекты.
Image
Внутриигровой пример. Желтые линии показывают место на скриншоте.

2.3 Небо
Параметры неба заключены в тег <Sky>. Обычно небо выглядит так:

Code: Select all

<Sky>
    <DomeTexture>Data/Textures/skies/blue4.tga</DomeTexture>
    <SunAngularRad>0.147508</SunAngularRad>
    <SunColorAngle>348.177</SunColorAngle>
    <RayToSun r0="0.823090" r1="0.310594" r2="-0.475451" />
    <ExtraAO>0</ExtraAO>
</Sky>
Единственные параметры, которые вы пока что не можете изменять во внутриигровом редакторе, это <DomeTexture> и <ExtraAO>. Тэг <DomeTexture> указывает изображение, которое будет использоваться в качестве фона для неба. Тэг <ExtraAO> почти всегда имеет значение 0, но если вы захотите сделать его меньше, то это увеличит затемненность в не освещаемых частях карты. Установка этого параметра на ~50 даст приличное затемнение.

Часть 2. Заключение

Вы изучили подробное редактирование карты используя .xml файл карты. Все остальное создается непосредственно во внутриигровом редакторе, о котором мы узнаем в следующей части.
Last edited by fromkms on Mon Jul 15, 2013 10:29 pm, edited 2 times in total.

User avatar
fromkms
Posts: 18
Joined: Mon Feb 27, 2012 11:46 pm
Location: Russia

Re: [Tutorial][RUS] Создание вашей первой карты

Post by fromkms » Sun Jul 14, 2013 7:37 am

3. Основы внутриигрового редактора

Основные функции редактора показаны в официальном видео:

Видео очень старое, поэтому вот список вещей, которые не были затронуты в видео:

3.2 Палитра цветов

Image

Чтобы вызвать палитру цветов, необходимо выделить необходимый объект, а затем нажать «Ctrl + P». С помощью палитры вы можете изменить цвет и яркость любого объекта на сцене. Чтобы изменять цвет персонажей, необходимо выделить его и нажать «Ctrl + Shift + P». Эта палитра отличается от палитры объектов тем, что вы можете изменять цвет различных частей тела персонажа.

3.3 Редактор параметров

Image
С помощью редактора параметров вы можете изменить различные характеристики персонажа. Чтобы открыть редактор параметров, выделите нужного персонажа и нажмите «U». Редактор параметров так же подходит для моддеров, допустим, вы можете сделать различное поведение персонажей. Так же редактор параметров может быть вызван для других объектов, например, триггеров.

3.4 Редактор солнца

Image

Двойное нажатие на солнце позволит вам свободно перемещать его по небу, изменять яркость и цвет солнца. Изменение размеров окружности позволяет изменять яркость солнца, перемещение точки на окружности изменяет цвет солнца. Яркость солнца так же влияет на качество «запеченных» теней.

3.5 Декали

Image

Декали используются для совмещения объектов на сцене более естественным образом. Чтобы разместить декаль, выберите нужную в браузере объектов, а затем разместите её в нужном месте, нажав левой кнопкой мыши. Декаль может быть перемещена, повернута, изменена в масштабах как и любой другой объект. Так же вы можете назначить объекты, на которые не будет накладываться декаль, для этого выделите декаль и удерживая «O» нажмите на объект, он будет подсвечен и на него не будет накладываться декаль. Следует помнить, что все объекты, которые будут добавлены на уровень после того, как будет размещена декаль, будут игнорироваться декалью.
Last edited by fromkms on Sun Jul 14, 2013 8:19 am, edited 1 time in total.

User avatar
fromkms
Posts: 18
Joined: Mon Feb 27, 2012 11:46 pm
Location: Russia

Re: [Tutorial][RUS] Создание вашей первой карты

Post by fromkms » Sun Jul 14, 2013 7:37 am

reserved

User avatar
fromkms
Posts: 18
Joined: Mon Feb 27, 2012 11:46 pm
Location: Russia

Re: [Tutorial][RUS] Создание вашей первой карты

Post by fromkms » Sun Jul 14, 2013 7:37 am

reserved

User avatar
fromkms
Posts: 18
Joined: Mon Feb 27, 2012 11:46 pm
Location: Russia

Re: [Tutorial][RUS] Создание вашей первой карты

Post by fromkms » Sun Jul 14, 2013 7:37 am

reserved

User avatar
fromkms
Posts: 18
Joined: Mon Feb 27, 2012 11:46 pm
Location: Russia

Re: [Tutorial][RUS] Создание вашей первой карты

Post by fromkms » Sun Jul 14, 2013 7:37 am

reserved

User avatar
Endoperez
Posts: 5668
Joined: Sun Jan 11, 2009 7:41 am
Location: cold and dark and lovely Finland

Re: [Tutorial][RUS] Создание вашей первой карты

Post by Endoperez » Sun Jul 14, 2013 2:43 pm

Thanks for posting this here, too. It's cool to see these tutorials translated into other languages.

User avatar
SteelRaven7
Posts: 681
Joined: Sat Sep 26, 2009 4:02 pm
Location: Sweden

Re: [Tutorial][RUS] Создание вашей первой карты

Post by SteelRaven7 » Mon Jul 15, 2013 3:11 pm

Man, that's really cool that you translated it! I should probably revise it at some point when I have the time which sadly probably won't be in a while.

EDIT: Added a link from the stickied thread for now. I think the forum admins should consider sticking this thread.

User avatar
fromkms
Posts: 18
Joined: Mon Feb 27, 2012 11:46 pm
Location: Russia

Re: [Tutorial][RUS] Создание вашей первой карты

Post by fromkms » Mon Jul 15, 2013 10:37 pm

SteelRaven7 , thank you for creating so amazing tutorial. It will be cool if you will finish it,and then i can finish translation. Also new video-tutorial from our community (english and russian version) on the way. And nice art will be available in near future :)

User avatar
Anton
pretty cool guy
Posts: 3328
Joined: Fri Oct 17, 2008 10:16 pm
Location: Los Angeles
Contact:

Re: [Tutorial][RUS] Создание вашей первой карты

Post by Anton » Tue Jul 16, 2013 4:54 pm

Привет Сергей!
Glad to see this translation happening! I hope it goes well.

Converting the thread to a sticky now...

Renesi
Posts: 1
Joined: Mon Oct 29, 2012 9:41 am

Re: [Tutorial][RUS] Создание вашей первой карты

Post by Renesi » Thu Nov 14, 2013 6:29 pm

Не просто перевод, а очень даже точный и понятный. Спасибо, если будет свободное время - будет что опробовать.

RuRabbit
Posts: 1
Joined: Sat Mar 29, 2014 11:08 am

Re: [Tutorial][RUS] Создание вашей первой карты

Post by RuRabbit » Sun Mar 30, 2014 1:30 am

Very nice translation!
Thank you.

User avatar
RavenTheFirst
Posts: 1
Joined: Tue Dec 30, 2014 1:02 am
Location: Russia

Re: [Tutorial][RUS] Создание вашей первой карты

Post by RavenTheFirst » Thu Jan 08, 2015 3:36 am

Спасибо за перевод, но это не совсем то, что мне нужно. Дело в том, что я пытался создать собственную местность с помощью программы L3DT по этому туториалу. Всё шло хорошо , пока не выскочила ошибка "Problem loading file: Data/Models/ui/map_objects/map_quad.obj". Есть ли способ это исправить? Буду признателен за помощь.

Post Reply