Ru/Creating a working mini-map: Difference between revisions

From Valve Developer Community
< Ru
Jump to navigation Jump to search
No edit summary
Line 23: Line 23:
== Создание заготовки изображения уровня ==
== Создание заготовки изображения уровня ==
[[Image:Dust2_Overview_CSGO.png|200px|thumb|Изображение уровня de_dust2]]
[[Image:Dust2_Overview_CSGO.png|200px|thumb|Изображение уровня de_dust2]]
# Start the game. Click '''Options''' and switch to the '''Video''' tab. Change '''Resolution''' to "1280x1024" pixels and the '''Aspect Ratio''' to "Normal".
# Запустите CS:GO. Откройте '''НАСТРОЙКИ''''''НАСТРОЙКИ ВИДЕО'''. Установите '''Разрешение''' равным "1280 x 1024" при '''Формате экрана''' равным "Обычный, 4:3".
# Load the new level with the map <code><mapname></code> [[console command]] and enable <code>"sv_cheats 1"</code>.
# Загрузите карту у которой хотите сделать мини-карту с помощью консольной команды (далее просто команды) <code>map ''<имякарты>''</code>.<br />{{note:ru|Для включения консоли, активируйте её в '''НАСТРОЙКИ'''→'''ПАРАМЕТРЫ ИГРЫ''', '''Включить консоль разработчика (~)'''}}
# Join a team.
# Выберете команду.
# Turn off bots in the map.<code>"bot_quota 1"</code> using the [[console]].
# Включите использование чит-команд с помощью команды <code>sv_cheats 1</code>.
# Bind the "[[screenshot]]" command to a key, etc. <code>"bind p screenshot"</code> using the [[console]]. This is important, as using the default screenshot key (F5) will take a compressed [[JPEG]] rather than a raw [[TGA]].
# Отключите ботов командой <code>bot_quota 1</code>.
# Remove any HUD elements with console commands <code>"cl_drawhud 0"</code>, <code>"r_drawviewmodel 0"</code> and <code>"hidepanel all"</code>.
# Запрограммируйте (забиндите) команду <code>[[screenshot]]</code> на клавишу, используя команду <code>bind ''<клавиша>'' screenshot</code>. (рекомендовано ''<клавиша>'' = P)<br />{{note:ru|Важно использовать команду <code>screenshot</code>, т.к. при нажатии {{key|F5}}, изображение сохраняется сжатым в формате JPEG, вместо несжатого TGA.}}
# Remove disturbing world effects like skyboxes (<code>"r_skybox 0"</code>), fog (<code>"fog_override 1"</code> and <code>"fog_enable 0"</code>), props (''optional:'' <code>"r_drawstaticprops 0"</code>), etc.
# Отключите элементы интерфейса командами <code>cl_drawhud 0</code>, <code>r_drawviewmodel 0</code>, <code>hidepanel all</code>.
# Turn off player clipping.<code>"noclip"</code> using the [[console]]. Then move to a position where you can see the whole level from above.
# Отключите эффекты карты, такие как дым и небо, командами <code>r_skybox 0</code>, <code>fog_override 1</code>, <code>fog_enable 0</code>, так же вы можете отключить prop_static объекты командой <code>r_drawstaticprops 0</code>, если это требуется.
# Switch to orthographic mode with the console command <code>"cl_leveloverview ''x''"</code>, where ''x'' is the scale factor.
# Включите прохождение сквозь стены командой <code>noclip</code> и переместитесь над картой так, чтобы видеть всю карту.
# Set <code>"cl_leveloverviewmarker 1024"</code> to show a red helper line on the right. You will need to briefly toggle <code>cl_drawhud 1</code>, line it up, and then toggle the HUD off again.
# Переключить метод отображения командой <code>cl_leveloverview ''<масштаб>''</code>. (Попробуйте начать со ''<масштаб>'' = 4-5, так же можно использовать дробные числа, к примеру 3.4)
# You can move around while ''cl_leveloverview'' mode is on. You are still in spectator mode and moving, so move the arrow keys to change the position. Now change scale so the map fits into the square defined by the red line. The right edge of your map should be on the left of the red line, anything to the right of the red line will be chopped off in a later step. Check the attached screenshot  to see how this step looks in <code>de_dust2</code>.
# Используйте команду <code>cl_leveloverviewmarker 1024</code>, чтобы включить линию-помощника.<br />{{note:ru|Если линия не появилась, переключите <code>cl_drawhud 1</code>, что бы линия появилась, а потом снова отключите интерфейс <code>cl_drawhud 0</code>.}}
# The current projection data (position and scale) will be updated in the console, eg "Overview: <code>scale 6.00, pos_x -2651, pos_y 4027</code>".
# Вы можете перемещать камеру с помощью стрелок на клавиатуре. Теперь передвигая камеру и меняя ''<масштаб>'' сделайте так что бы карта была в квадрате ограниченным красной линией. Все что находится левее красной линии будет позже убрано. Для проверки можете посмотреть на изображение справа, на нём видно как выглядит этот шаг на de_dust2.
# Once everything is perfect, take a screenshot (using the key you bound to "screenshot") and '''write down''' the projection data values. You will need them in a later step.
# При перемещении в консоли будут обновляться данные о позиции (pos x, pos y) и масштабе (scale). Это выглядит как: "Overview: scale 6.00, pos_x -2651, pos_y 4027".
# Убедитесь что все хорошо и сделайте скриншот, используя ранее запрограммированную ''<клавишу>'', а так же сохраните последние данные "Overview:" из консоли. Они понадобятся позже.


== Создание .DDS ==
== Создание .DDS ==

Revision as of 04:28, 29 October 2014

Template:Otherlang2

Template:Finishtranslation:ru

В статье описывается процесс создания мики-карты для Counter-Strike: Global Offensive Counter-Strike: Global Offensive, для создания мини-карт к другим играм читайте English Level Overviews.

Вступление и основы

Некоторые игры, к примеру Counter-Strike: Source и Day of Defeat: Source, имеют мини-карту, на которой изображены карта, игроки и объекты. An overview map is an image made from in-game screenshots and must be created once a new map is finished.

В Counter-Strike: Global Offensive есть мини-карта, так же как и в прошлых играх серии. С точки зрения игрока мини-карта не изменилась, но вот с точки зрения разработчиков процесс создания мини-карты отличается от Counter-Strike: Source.

Основные различия:

  • В CS:GO мини-карта является радаром.
  • CS:GO не использует VTF и VMT файлы.
  • В CS:GO мини-карта сохраняется в ".DDS" файл.
  • Требуется только два основных файла для работы мини-карты, ".DDS" и ".txt". ".DDS" содержит изображение уровня, а ".txt" основные настройки отображения изображения.

Для сравнения, вы можете прочитать Level Overviews и увидеть как создать мини-карту для Counter-Strike: Source.

Создание заготовки изображения уровня

Изображение уровня de_dust2
  1. Запустите CS:GO. Откройте НАСТРОЙКИНАСТРОЙКИ ВИДЕО. Установите Разрешение равным "1280 x 1024" при Формате экрана равным "Обычный, 4:3".
  2. Загрузите карту у которой хотите сделать мини-карту с помощью консольной команды (далее просто команды) map <имякарты>.
    Template:Note:ru
  3. Выберете команду.
  4. Включите использование чит-команд с помощью команды sv_cheats 1.
  5. Отключите ботов командой bot_quota 1.
  6. Запрограммируйте (забиндите) команду screenshot на клавишу, используя команду bind <клавиша> screenshot. (рекомендовано <клавиша> = P)
    Template:Note:ru
  7. Отключите элементы интерфейса командами cl_drawhud 0, r_drawviewmodel 0, hidepanel all.
  8. Отключите эффекты карты, такие как дым и небо, командами r_skybox 0, fog_override 1, fog_enable 0, так же вы можете отключить prop_static объекты командой r_drawstaticprops 0, если это требуется.
  9. Включите прохождение сквозь стены командой noclip и переместитесь над картой так, чтобы видеть всю карту.
  10. Переключить метод отображения командой cl_leveloverview <масштаб>. (Попробуйте начать со <масштаб> = 4-5, так же можно использовать дробные числа, к примеру 3.4)
  11. Используйте команду cl_leveloverviewmarker 1024, чтобы включить линию-помощника.
    Template:Note:ru
  12. Вы можете перемещать камеру с помощью стрелок на клавиатуре. Теперь передвигая камеру и меняя <масштаб> сделайте так что бы карта была в квадрате ограниченным красной линией. Все что находится левее красной линии будет позже убрано. Для проверки можете посмотреть на изображение справа, на нём видно как выглядит этот шаг на de_dust2.
  13. При перемещении в консоли будут обновляться данные о позиции (pos x, pos y) и масштабе (scale). Это выглядит как: "Overview: scale 6.00, pos_x -2651, pos_y 4027".
  14. Убедитесь что все хорошо и сделайте скриншот, используя ранее запрограммированную <клавишу>, а так же сохраните последние данные "Overview:" из консоли. Они понадобятся позже.

Создание .DDS

Используя Photoshop

Template:Tip:ru

  1. Запустите Photoshop и откройте скриншот сделанный ранее. Он должен располагаться в "%STEAMINSTALL%\SteamApps\common\Counter-Strike Global Offensive\csgo\screenshots". Где "%STEAMINSTALL%" директория куда у вас установлен Steam. Обычно "C:\Program Files (x86)\Steam".
  2. Выберете ИзображениеРазмер холста... (Alt+Ctrl+C) установите ширину равной 1024 пикселя. В окне расположение нажмите на верхний левый угол, после чего нажмите ОК. Должно получиться как на изображении ниже.
    PhotoshopScaleImage.PNG
  3. В окне слои слева снизу дважды нажмите на слой с названием "Фон". В открывшемся окне нажмите ОК.
  4. Некоторые любят добавлять на изображение обозначения, самое время это сделать сейчас. (К примеру зоны выделение зон покупки и мест закладки бомб)
  5. Сохраните .DDS файл. (ФайлСохранить как...). Имя файла должно соответствовать имени карты с припиской "_radar". (Пример: de_dust_radar.dds) Тип файла — D3D/DDS.
    Template:Note:ru
  6. В DDS окне в выпадающем меню сверху смените "DXT1 RGB 4 bpp | no alpha" на "DXT1 ARGB 4 bpp | 1 bit alpha", как на изображении ниже.
    Photoshop ddssavedialog.PNG
  7. После сохранения переместите файл в "%STEAMINSTALL%\SteamApps\common\Counter-Strike Global Offensive\csgo\resource\overviews".
  8. Вы успешно создали .DDS файл вашей карты.

Используя GIMP

Template:Todo:ru

Создание файла настроек

В завершении требуется создать файл с названием <mapname>.txt в директории <game dir>\resource\overviews\. (Пример: C:\Program Files (x86)\Steam\SteamApps\common\Counter-Strike Global Offensive\csgo\resource\overviews) Данный файл содержит данные для выравнивания изображения уровня. Для примера рассмотрим такой файл для карты de_dust2:

Используйте данные которые вы запоминали в пункте 12 создания заготовки изображения уровня.

// HLTV overview description file for de_dust2.bsp
"de_dust2"
{
	"material"	"overviews/de_dust2"	// Путь к файлу с изображением уровня без указания формата относительно csgo директории
	"pos_x"		"-2400"                 // Данные, которые вы запомнили
	"pos_y"		"3383"                  // Данные, которые вы запомнили
	"scale"		"4.4"                   // Данные, которые вы запомнили
	"rotate"	"1"                     // Вращение изображения
	"zoom"		"1.1"	                // Увелечение

	// Позиции значков на экране загрузке уровня
	"CTSpawn_x"	"0.60"
	"CTSpawn_y"	"0.22"
	"TSpawn_x"	"0.36"
	"TSpawn_y"	"0.93"

	"bombA_x"	"0.80"
	"bombA_y"	"0.20"
	"bombB_x"	"0.20"
	"bombB_y"	"0.15"
}

Template:Todo:ru

Для значков заложников используйте:

	"Hostage1_x"	"0.56"
	"Hostage1_y"	"0.83"
	"Hostage2_x"	"0.48"
	"Hostage2_y"	"0.64"
	"Hostage3_x"	"0.47"
	"Hostage3_y"	"0.78"
	"Hostage4_x"	"0.30"
	"Hostage4_y"	"0.88"
	// и так далее...

А так же для одиночного места закладки бомбы:

	"bomb_x"	"0.37"
	"bomb_y"	"0.42"

Заключение

Если вы сделали все правильно, у вас должно получится что-то подобное изображению ниже.

CSGO Example Radar.png

Ресурсы

Место закладки бомбы Bombsite clear.png Место закладки бомбы A Bombsite a.png Место закладки бомбы B Bombsite b.png

Знак спецназа Ct.png Знак террористов T.png Знак заложника Hostage.png