AviaSkins.Forums

AviaSkins.Forums (http://forum.aviaskins.com/index.php)
-   Карты, страны, континенты (http://forum.aviaskins.com/forumdisplay.php?f=19)
-   -   Раскройка стандартых карт (http://forum.aviaskins.com/showthread.php?t=607)

Dad 23.03.2009 09:25

Цитата:

Сообщение от GreyL (Сообщение 23218)
И даже это не дает гарантии результата, я как раз на карте Финского залива пытался сделать вырезание куска. После получения граблей в результате искажений береговой линии, тоже пришел к выводу о попадании в сетку 8/32. В итоге вырезал по сетке, внутри квадратов 32/32 теперь все ровно, но по границам склейки идут приличные искажения...


Вырезать можно, и склеить можно. Видимо все же придется выложить объединённую карту Крым+Кубань. Еще я поправил карту Alley_B29, на которой автор не смог корректно разместить Иво Джиму.
А на Иво Джиме использованы специальные текстуры филдов с нарисованными ВПП и естественно филды у него встали сикось накось. Он не стал разбираться и залил остров простой тектурой.
Но надо признать, что в обоих случаях граница склейки карт проходила по морю - может быть по этому я не сталкивался с искажениями.

GreyL 23.03.2009 09:45

Цитата:

Сообщение от mr N (Сообщение 23220)
ОЧЕНЬ странно. Если вы всё правильно делали, искажения по границам склейки должны быть в точности такими же как на оригинальной карте. Не большими и не меньшими.

В том-то и дело, что странно, я уже всю голову сломал. Чем дальше копаю, тем меньше понимаю :(

Кстати с map_c есть некоторые непонятки, например:
расстояние между пикселями - не 50 метров как ожидалось, а приблизительно 51,62 метра...

Dad 23.03.2009 10:16

Цитата:

Сообщение от GreyL (Сообщение 23224)
В том-то и дело, что странно, я уже всю голову сломал. Чем дальше копаю, тем меньше понимаю :(

Кстати с map_c есть некоторые непонятки, например:
расстояние между пикселями - не 50 метров как ожидалось, а приблизительно 51,62 метра...

То есть? Откуда дровишки? Чем меряли?

Если вы про MicroDem, то там может быть, что задаёшь параметр 50.0 а на выходе что-нибудь вроде 51.62, но это по-моему чисто условность. Будет в Иловской карте от Парижа до Находки на 200км дальше, чем на самом деле.
Я так понимаю.

mr N 23.03.2009 10:20

Цитата:

Сообщение от GreyL (Сообщение 23224)
Кстати с map_c есть некоторые непонятки, например:
расстояние между пикселями - не 50 метров как ожидалось, а приблизительно 51,62 метра...

Не вполне соглашусь. Думаю что это то самое Иловское искажение о котором много говорилось. Я в корректирующих скриптах использовал коэффициент ~103.2258 :), как раз даёт примерно те же 51,62.
Думаю что смотря между какими точками мерить.
Если замерить между точками в центрах квадратов - будет как раз 50 метров.
Если между точками возле границ квадратов - конечно получится существенно меньше.
Выложите карту над которой работает - может вместе быстрее разберемся.

GreyL 23.03.2009 10:38

Цитата:

Сообщение от mr N (Сообщение 23229)
Не вполне соглашусь. Думаю что это то самое Иловское искажение о котором много говорилось. Я в корректирующих скриптах использовал коэффициент ~103.2258 :), как раз даёт примерно те же 51,62.
Думаю что смотря между какими точками мерить.
Если замерить между точками в центрах квадратов - будет как раз 50 метров.
Если между точками возле границ квадратов - конечно получится существенно меньше.
Выложите карту над которой работает - может вместе быстрее разберемся.

Карту сделал тестовую - 64х64 (map_c).
Далее нарисовал гребенку. В FMB расставил ориентиры на получившиеся мыски. По эти объектам и мерил - расстояние везде одинаковое, что на границах квадратов, что внутри. Сейчас попробую восстановить, то что было когда мерил. Я эту карту постоянно мучаю - сейчас задался целью более точно определиться с переводом координат в редакторе на соответствующие map_t, map_h и map_c


ЗЫ. Я кажется понял, как это работает. Попробую описать как я это вижу, только мысли в кучу соберу :)

mr N 23.03.2009 10:46

Цитата:

Сообщение от GreyL (Сообщение 23231)
Я эту карту постоянно мучаю - сейчас задался целью более точно определиться с переводом координат в редакторе на соответствующие map_t, map_h и map_c

Там ещё учитывать нужно что при сборке в 3D ландшафт они смещаются относительно друг друга (по крайней мере результаты своих эксперименов я понял именно так).

GreyL 23.03.2009 10:56

Цитата:

Сообщение от GreyL (Сообщение 23231)
расстояние везде одинаковое, что на границах квадратов, что внутри.

Поправочка - не НА ГРАНИЦАХ квадратов, а У ГРАНИЦ квадратов, на самих границах происходит "съедание расстояния". Как раз из-за этого эффекта и пришел к определенным выводам. Вот только сами выводы надо как то оформить из смутных ощущений в реальное описание....

mr N 23.03.2009 11:07

Цитата:

Сообщение от GreyL (Сообщение 23233)
Поправочка - не НА ГРАНИЦАХ квадратов, а У ГРАНИЦ квадратов, на самих границах происходит "съедание расстояния". Как раз из-за этого эффекта и пришел к определенным выводам. Вот только сами выводы надо как то оформить из смутных ощущений в реальное описание....

Т.е. такое не вполне точно описывает твои ощущения:
Центральная часть квадратов 32х32 пикселя (размером примерно 31х31 пиксель) растягивается до размеров полного квадрата 32х32 пикселя :)

GreyL 23.03.2009 11:37

Цитата:

Сообщение от mr N (Сообщение 23234)
Т.е. такое не вполне точно описывает твои ощущения:
Центральная часть квадратов 32х32 пикселя (размером примерно 31х31 пиксель) растягивается до размеров полного квадрата 32х32 пикселя :)

Ну типа того, только немного не так.

Обрабатываются не сами пиксели 32х32, точки между ними, как раз 31х31.
Для каждой этой точки берется 4 окружающих пикселя, по ним строится поверхность. Соответственно, для того, чтобы эти поверхности стыковались ровно и нужно чтобы пиксели на границах квадратов совпадали с пикселями на границах соседних квадратов.

А для построения более точного изображения береговой линии нужно в map_c вырезать по одному пикселю на границах квадратов (вот только масштаб получится неудобный)...

Da_Don 23.03.2009 11:55

Для каждой этой точки берется 4 окружающих пикселя, по ним строится поверхность. Соответственно, для того, чтобы эти поверхности стыковались ровно и нужно чтобы пиксели на границах квадратов совпадали с пикселями на границах соседних квадратов.
Это из-за низкого разрешения ландшафтной сетки, 200 м/пиксель это вчерашний день ((
окружающие пиксели можно делать промежуточного, среднего цвета, я так делал, когда нужно было Пага-хилл в Морсби отрисовать, он шириной 3 пикселя, из которых центральный - вершина высоты, а прилегающие уже содержат берег, пришлось сглаживать по цвету и блюром до среднего значения между высотой холма и RGB=0 (вода)

Matador 23.03.2009 12:05

Цитата:

Сообщение от mr N (Сообщение 23213)
Т.е. инструкцию как вырезать кусок из карты уже не писать ? А то я собирался...

Писать писать писать!:) Я об этом с первого поста прошу, просто залезу то в одни дебри, то в другие.
А попытка моя, то только теория была перед сном, я уже щас и не пойму как я это хотел сделать.

З.Ы: тонны бесконечных страниц, могут давать и обратный эфект.

GreyL 23.03.2009 12:57

Демонстрация.

Что сделал.

Вырезал кусочек map_c (Ленинград). Далее сдвинул последовательно каждый квадрат на 1 пиксель в области склейки (сдвигал влево и вверх, по идее можно наоборот). Далее полученный кусочек масштабировал сначала на 103,225% (32/31) потом еще раз увеличили в четыре раза. Выделил черный цвет с порогом 128 (получилась береговая линия). В следующий слой наложил снимок этой области из редактора. Снимок масштабировал по сетке 32/32 и слегка сдвинул по диагонали.. Результат на снимке:

http://s54.radikal.ru/i144/0903/49/67fd83f33691t.jpg

mr N 24.03.2009 15:28

Начал делать карту - кусочек Финского, чтобы попутно детально документировать процесс (для написания мануала).
И оказалось всё не так просто :)
1. map_R. Она в IMF формате, а TgaConverter с Аркад как водится не работает (хотя раньше вроде работал, почему перестал - одному ему ведомо...), но это дело поправимое - втечение недели выложу другой конвертер.
2. map_M. Не могу найти. Остальные файлы по Финскому лежат в fb_maps.SFS и fb_maps03.SFS, но мап_м в них похоже нету (в filelist к экстрактору естественно прописал его). Пробовал и все нераспознанные файлы достать из этих двух архивов, посмотрел что в них есть (в т.ч. и те что в IMF) - похоже что тоже нету :(. Помогите кто может, пожалуйста. И вообще, что он собой представляет то хоть и какие функции выполняет ?

GreyL 24.03.2009 17:13

Цитата:

Сообщение от mr N (Сообщение 23327)
2. map_M. Не могу найти. Остальные файлы по Финскому лежат в ?

map_m есть точно для Берлина (в остальных не искал). По виду похож на map_f только размером 256х256

Dad 24.03.2009 21:38

Вложений: 2
Часть карт содержит map_M , другая часть прекрасно без него обходится.
Зависимость от размера не просматривается.
Есть маленькие карты без map_M z.B. empty1a; net8islands; Net5Summer;
Есть большие без map_M - FinsGulf; Manchuria;
Точно так же и наоборот - map_M есть как в больших, так и в совсем маленьких картах.

В карте Крыма map_M присутствует в странном виде с искажёнными пропорциями, навроде файлов background.

Для чего нужен не совсем понятно. На Аркадах видел мнение, что дублирует файл map_F в "идеальном" режиме. Сомнительно. Скорее есть какие-то настройки графики хуже, чем "превосходный" - вот там и используется map_M (так как реально хуже выглядит:) )
См.вложения

map_R вполне успешно конвертица TgaConverter-ом
но в 90% карт (в том числе и в Финском заливе) там нечего смотреть - белый квадрат; даже выкладывать не буду.
Малевич отдыхает.
Лишь пару раз видел map_R с бледно-серым контуром. Судя по названию отвечает за отражение чего-то там.
It should be about sea reflections in perfect settings. (с) Аркады

mr N 24.03.2009 22:22

Цитата:

Сообщение от Dad (Сообщение 23362)
Есть большие без map_M - FinsGulf; Manchuria;

Но в FinsGulf в ini файле map_M упомянут. Ты хочешь сказать что он хоть и упомянут но не обязателен ?
Цитата:

Сообщение от Dad (Сообщение 23362)
В карте Крыма map_M присутствует в странном виде с искажёнными пропорциями, навроде файлов background.

Повидимому он (как похоже и map_R) имеет фиксированный размер.
Цитата:

Сообщение от Dad (Сообщение 23362)
map_R вполне успешно конвертица TgaConverter-ом

Охотно верю. Раньше и у меня получалось. Но теперь Конвертер падает при запуске - видимо в системе что то изменилось.
Цитата:

Сообщение от Dad (Сообщение 23362)
но в 90% карт (в том числе и в Финском заливе) там нечего смотреть - белый квадрат; даже выкладывать не буду.
Малевич отдыхает.

А ты в альфа канал к ним посмотри. Хотя бы просто из любопытства :)
Повидимому в альфа-канале нарисовано где больше отражает где меньше.

deSAD 24.03.2009 22:39

Цитата:

Сообщение от Dad (Сообщение 23362)
... Лишь пару раз видел map_R с бледно-серым контуром. Судя по названию отвечает за отражение чего-то там.
It should be about sea reflections in perfect settings. (с) Аркады

Судя по (с), это блики на воде в превосходном режиме :rolleyes:
Цитата:

Сообщение от mr N (Сообщение 23366)
Но в FinsGulf в ini файле map_M упомянут. Ты хочешь сказать что он хоть и упомянут но не обязателен ?

А он, походу, везде упомянут ... по крайней мере, в .ini тех карт, что лично мну ковырял - Бессарабия, Крым, пустыня, Халгин-Гол, Киев, Кубань, Прибалтика, Москва, Мурманск, Западная Европа, Уэйк - упоминается. Наверное, "родимые пятна" еще со времен СПШ :D

Dad 24.03.2009 23:22

Цитата:

Сообщение от mr N (Сообщение 23366)

Охотно верю. Раньше и у меня получалось. Но теперь Конвертер падает при запуске - видимо в системе что то изменилось..

Вспомнил... была такая фигня. Переустановкой DirectX правилась.


Цитата:

А ты в альфа канал к ним посмотри. Хотя бы просто из любопытства :)
Повидимому в альфа-канале нарисовано где больше отражает где меньше.
В альфа-канале там вода похоже вырезана, как и в map_F
только пропорции сильно искажены

Matador 28.03.2009 01:58

Цитата:

Сообщение от mr N (Сообщение 23327)
...2. map_M. Не могу найти. Остальные файлы по Финскому лежат в fb_maps.SFS и fb_maps03.SFS, но мап_м в них похоже нету (в filelist к экстрактору естественно прописал его). Пробовал и все нераспознанные файлы достать из этих двух архивов, посмотрел что в них есть (в т.ч. и те что в IMF) - похоже что тоже нету :(. Помогите кто может, пожалуйста. И вообще, что он собой представляет то хоть и какие функции выполняет ?...

Видимо пошел я похожим путем, перекроил все карты Ф.залива (кроме зимних), пишет в логе что нужен map_M!!!
-Я из ини строчку снес эту, один фиг. Заменил ini на другой, на половине загрузки стоит и все.
Вот запара!:cry:
Еще, после обрезки статики, почему то пропали все мосты, там где не надо, хотя домики и прочая фигень стоит. Чистил actors, SimpleCutterом.

mr N 28.03.2009 07:29

Цитата:

Сообщение от Matador (Сообщение 23595)
Видимо пошел я похожим путем, перекроил все карты Ф.залива (кроме зимних), пишет в логе что нужен map_M!!!
-Я из ини строчку снес эту, один фиг. Заменил ini на другой, на половине загрузки стоит и все.

Странно, у меня копия Финского грузится без map_M
Цитата:

Сообщение от Matador (Сообщение 23595)
Еще, после обрезки статики, почему то пропали все мосты, там где не надо, хотя домики и прочая фигень стоит. Чистил actors, SimpleCutterом.

А какими командами чистил ? параметр -mh <высота карты> указывал ?
Если размеры карты меняются (вырезаешь кусок из карты или собираешь одну большую карту из нескольких) то мосты нужно обрабатывать отдельно от всего остального - у них координаты отсчитываются подругому, поэтому сдвиг нужно другой указывать.

Matador 28.03.2009 14:44

Вложений: 1
С мостами пока отложу.
Карту обрезал по другому варианту. Взял за образец карту Москвы и просто перенес все на готовые размеры, все кроме статики пока.
Вот еще один косяк вылез. Как с ним бороться, или это глюк редактора?

Matador 28.03.2009 20:25

Еще интересный момент, ни в зимнем ни летнем actors.static, нет мостов в списках! Эта финляндия доканает меня! :(

Dad 28.03.2009 23:04

Цитата:

Сообщение от Matador (Сообщение 23625)
Еще интересный момент, ни в зимнем ни летнем actors.static, нет мостов в списках! Эта финляндия доканает меня! :(

Там много чего нет в списках.
Под своими реальными именами там значатся только объекты типа зданий, палаток, бочек всяких.
А вот например аэродромные точки - маршруты рулежек, места стоянок - обозначены как, не соврать бы, маршруты движения ГАЗ-АА, или что-то в этом роде.
А мосты обозначены как маршруты движения самолетов В-17, А-20...
Ну это, так, навскидку... влом смотреть.
Ну там типа, файл миссии с маршрутом движения самолета от левого берега на правый, потом к следующему мосту и опять леый берег - правый берег и так пока мосты не кончатся.
Для каждого типа моста свой самолет.
Если раздел по картостроению покуришь внимательнее, то найдешь.
Писали уже по этой теме.
А чтоб наглядно - вырежи мосты с какой-нить карты, только выходням файлом поставь не *.static а *.mis, и потом загрузи его в редактор и полюбуйся...

Matador 29.03.2009 04:13

Цитата:

Сообщение от Dad (Сообщение 23634)
Там много чего нет в списках.
...

Спасибо, а то я уже в ауте почти, от этих всех фишек.

GreyL 30.03.2009 08:37

Цитата:

Сообщение от GreyL (Сообщение 23224)
В том-то и дело, что странно, я уже всю голову сломал. Чем дальше копаю, тем меньше понимаю :(

Разобрался со склейкой - сам дурак, запутался в копиях map_c и в итоге подсовывал не тот :). Все нормально склеивается.

Заодно, кажется, разобрался окончательно с построением береговой линии.
Теперь могу довольно-таки точно по четырем точкам из map_c построить отображение квадрата внутри них. По крайней мере как этот квадрат выглядит у меня в FMB при максимальном приближении.

Сейчас ломаю голову над обратной задачкой - по требуемой береговой линии получить 4 точки map_c...

Dad 30.03.2009 16:15

Чёрное море
 
Вложений: 2
Ну вот, я тут понакроил, понасшивал...

РидМи:

Карта собрана из двух дефолтных - Крым и Кубань.
Изменения минимальные. Текстуры и объекты дефолтные для 4.09, использован load.ini карты Крыма.
В Крыму, в районе Севастополя удален бетонный аэродром, построены аэродром на п-ове Херсонес, аэродром Куликово поле, аэродром Юхарина Балка. Первый и второй самодельные, последний типовой.
Построена пара гидродромов в Северной и Камышовой бухтах.
На Керченском п-ове добавлен населенный пункт Марфовка и рядом типовой аэродром, как упоминающийся в мемуарах.
Рядом с Керчью оставлены оба аэродрома - и с карты Крыма, и с карты Кубани.
На Кубани для симметрии дорисована территория севернее дефолтной.
Станица Калининская переименована в Поповичевскую, т.к. кто-то сетовал, что на Кубани нет аэродрома 55-го ИАПа (16 ГИАП) т.Покрышкина. А вот он как раз там и был.
Основной населенный пункт дорисованной территории станица Тимашевская.
В районе Тимашевской построены два аэродрома и железнодородный узел.
Всё практически от фонаря. Известно лишь, что на аэродроме авиация базировалась еще до войны, и что фрицы использовали его для снабжения окружённой группировки в 43-м году.
Соответственно авибазу сделал из расчета принимать до двух десятков четырёх-шестимоторных транспортных самолётов.
Историчность, как и географичность близки к нулю.
В превосходном режиме почти не тестировал, т.к давно уже пользуюсь только идеальным.
Населенные пункты новых территорий незастроены, т.к. влом ...
При желании можете вносить любые дополнения и изменения:
например, использовать файлы лоад.ини от других карт.
А я лично для себя обязательно поставлю новый белоснежный Херсонесский маяк, хотя реально, он всю войну был разрушенным.:)

Желаю удачи!

Da_Don 30.03.2009 17:02

здорово, давнишнее чаяние комьюнити реализовал.:ok:
Кстати, если действительно получится реализовать создание новых динамических кампаний ("с нуля"), то я эту карту попробую использовать для кампании "Морской торпедоносной авиации"

Da_Don 30.03.2009 17:48

Вложений: 1
Кстати, вот вопрос был по правке карты, ответ выложу тут, кому-то еще наверное пригодится

Правильно ли я понял, что нужно править map_H?
Да
Возможно ли это в Фотошопе?
Именно там это и надо делать. Как вариант - Paint.NET, Gimp и пр.
Если да, то прошу указать алгоритм действий для «опускания» берегов

Смотри, map_h содержит слой, отвечающий за высоты. Конкретно отрисовка высот на карте производится по фрактальной методе, т.е. когда определенный RGB цвет рисунка определяется как определенный метраж высоты. Например, RGB=0 (чистый черный) соответствует высоте 0м, RGB=68 соответствует примерно 60-100 метрам высоты и пр. На картах map_c принцип тот же, но только отрисовывается не суша, а оттенки воды, например, RGB=0 соответствует уровню моря (из-за того, что в иле нет дна, в АРМА например этот РГБ соответствует дну, а уровень моря, т.е. нулевая высота RGB=34), RGB=68 соответствует ярко-зеленой окраске рифа, RGB-98-108 соответствует отрисовке пены прибоя и отмелей , а сама чистая твердая суша соответствует RGB=255.

Косяк в виде приподнятых относительно воды берегов существует только по одной причине - когда линия берега не опущена на один с морем уровень, т.е. линия берега в map_h не покрашена RGB=0, двиг ила не умеет делать отвесные обрывы берега в море ( как скалы Дувра или берега Крыма), поэтому ему обязательно надо делать опускание кромки берега к воде, т.е. ставить берег на один уровень с водой. Поэтому требуется косметическая правка руками. Для уравнивания берега с водой достаточно перекрасить береговой отступ от воды шириной всего 1 пикселль ( в соответствии с разрешением движка ила это составит целых 200 м берега вглубь от моря, так что не увлекайтесь выкрашиванием широких полос берега).
Каким образом правим. Открываем графический редактор, открываем map_h, берем пипеткой пробу с моря ( RGB=0) или ставим в панельке цветов все три RGB на ноль ( как вам удобнее), далее выбираем обычную кисть (не историческую, а обычную, она там же, где и карандаш), слева вверху под кнопками file и edit будет панель настройки кисти - там регулируем размер кисти (диаметр в пикселях ) до нужного нам (если нужен диаметр всего 1 пиксель - лучше взять карандаш) и линию кромки берега подкрашиваем немного вглубь суши чистым черным ( RGB=0). Сохраняем, проверяя перед выходом, чтобы файл остался greyscale 8 bit (серый 8-битный) и на этом все.

Samurai999 31.03.2009 17:47

Народ! А как ПРОСТО из уже существующей карты Иловской кусок вырезать!? Вон Skvorez должен знать точно! У него Бессарабия урезана в румынской компахе!

Matador 31.03.2009 23:04

Цитата:

Сообщение от Samurai999 (Сообщение 23812)
Народ! А как ПРОСТО из уже существующей карты Иловской кусок вырезать!? Вон Skvorez должен знать точно! У него Бессарабия урезана в румынской компахе!

Работаю над этим. Из Финского залива центр с Питером (Ленинградом) вырвал, все подогнал норм, в редакторе все края смотрятся отлично. А вот со статикой проблемы. Кусок нужный вырезаю в SimpleCutter, но дальше запара.
Порядок моих действий:
В не измененном "Полном Редакторе", запускаю карту Финский залив (стандарт), устанавливаю вагончик в левом верхнем углу и правом нижнем, необходимой мне области со статикой. Затем сохраняю как миссию, смотрю координаты вагончиков и вписываю их СМDшник SimpleCutterа, так же указываю параметр -mh (одновременно сдвинуть, указав там же и требуемое расстояние -Shift, не получается, так как вырезается все за пределами указанной области -cut), затем указываю расстояние на которое нужно сдвинуть обьекты -Shift Х, У. Расстояние это определить просто. Мне нужно сдвинуть вырезаемый квадрат статики, к нулю координат (левый нижний угол карты), потому что вырезанный участок местности (вода-суша), это новая карта со своим нулем. Расстояние я брал от своих вагончиков, которыми определял квадрат статики. Первое по (Х) -200000 левого верхнего вагончика, второе по (У) правого нижнего -50000, примерно такие цифры. Статика сдвинулась куда нужно, наглядно это я увидел на не обрезанном Финском заливе, а вот на обрезанном, не могу никак запустить карту со сдвинутой статикой, не в одном редакторе. Запустил один раз, когда сдвинул от края по (Х) на два км назад, дальше от нужной точки (ориентировка была на остров с филдом). Подвигал по тихоньку, но до нужного места так и не дошел, вылетает, хотя до края оставался запас. С какими бубнами я только не прыгал, перекраивал все по сто раз, уменьшал площадь нужной статики, думал может вылазит чего за карту, отступал от краев по паре квадратов, но так больше запустить и не смог!
-Хотелось бы немного разьяснений от mr N, на счет -mh, какую высоту нужно указывать и в каких операрациях, высоту какой карты, вырезанной, или исходной? я так понял это размер карты в метрах от нуля и до верхнего края. Может имелась ввиду высота над уровнем моря???
-На счет смешения статики -shift.
Я указывал значения с минусом и сдвигал к нулю. Где находится ключевая точка, или за ключевую можно взять любой обьект, весь квадрат? Может есть какие-то особые правила? Может мосты там, или еще чего нужно отдельно двигать? Хотя на необрезанном Ф.З, резаная-двиганая статика, сдвинутая к углу смотрелась норм, там где нужно
Помогите плиз, а то уже устал.

Dad 01.04.2009 04:31

Накатал мануал, потом понял что ошибся, удалил, пишу новый:)

Цитата:

Сообщение от Matador (Сообщение 23829)
Работаю над этим. Из Финского залива центр с Питером (Ленинградом) вырвал, все подогнал норм, в редакторе все края смотрятся отлично. А вот со статикой проблемы. Кусок нужный вырезаю в SimpleCutter, но дальше запара. .

С вырезанием тут у тебя ошибка - либо ты сделал правильно, а пишешь не правильно здесь.

Цитата:

устанавливаю вагончик в левом верхнем углу и правом нижнем.
Координатами вырезаемого куска являются левый нижний и правый верхний углы.

Ну хорошо, допустим у тебя все корректно вырезалось.
SimpleCutter.exe -mh 214400 -inp actors.static -outp my_actors.static -cut Хлн Улн Хпв Упв
Высота карты FinsGolf 2176Х1072 1072*200=214400


Теперь будем двигать. Двинуть одновременно и объекты и мосты не получится, т.к. объекты считают свои координаты с левого нижнего угла, а мосты с левого верхнего. Их надо разъединить.

Вырезаем из my_actors.static мосты.
SimpleCutter.exe -mh 214400 -inp my_actors.static -outp Br.static -cutbr -rest objects.static
Высоту карты указываем прежнюю, т.к. координаты все еще старые.
(сдаётся мне, параметр -mh вообще лишний)


Объекты у нас в файле objects.static, а мосты в файле Br.static

Перемещаем объекты.
SimpleCutter.exe -mh (куска) -inp objects.static -outp shift_object.static -shift -Х -У
(Здесь, думаю, нужно указывать высоту вырезанного куска карты, т.к. координаты объектов будут новые.)
Х и У это координаты левого нижнего угла куска карты. Мы их просто вычитаем из координат каждого объекта на куске карты.

Перемещаем мосты.
SimpleCutter.exe -mh (куска) -inp Br.static -outp shift_Br.static -shift -Х -У
только теперь Х и У координаты левого верхнего угла куска карты, причем теперь уже относительно левого верхнего угла карты донора. По оси Х без изменений, а по У надо из высоты карты-донора вычесть верхнюю координату куска. Это будет наш новый У
Теперь, когда из координат мостов SimpleCutter вычтет Х и У, мосты получат новые корректные координаты.

Теперь объединяем -add shift_Br.static и shift_object.static в новый actors.static

Теоретически все правильно, осталось проверить на практике. Сомнения только по поводу высоты карты - когда какую высоту какой карты указывать. Можно попробовать так и так...:)

Или mr N подскажет:)

P.S.
Вообще-то странно, что у тебя почти всё получилось. Ты ведь вырезал кусок с Ленинградом реально. Тогда какие вагончики? Нужно координаты в метрах высчитывать из реальных координат куска карты в пикселах.
К тому же, координаты должны быть кратны 8-и и 32-м для разных tga.
Иначе текстуры не лягут на свои места, соответственно домики не встанут куда положено, даже если правильно переместить их в акторсе...
недоумённо пожал плечами...

Matador 01.04.2009 07:03

Вложений: 3
Цитата:

Сообщение от Dad (Сообщение 23843)
С вырезанием тут у тебя ошибка - либо ты сделал правильно, а пишешь не правильно здесь.

Не понял:), вроде как делал так и написал.
Цитата:

Сообщение от Dad (Сообщение 23843)
Координатами вырезаемого куска являются левый нижний и правый верхний углы.

Я вырезал наоборот и вроде норм.
Цитата:

Сообщение от Dad (Сообщение 23843)
Ну хорошо, допустим у тебя все корректно вырезалось.
SimpleCutter.exe -mh 214400 -inp actors.static -outp my_actors.static -cut Хлн Улн Хпв Упв
Высота карты FinsGolf 2176Х1072 1072*200=214400

Да, все именно так.

Цитата:

Сообщение от Dad (Сообщение 23843)
Теперь будем двигать. Двинуть одновременно и объекты и мосты не получится, т.к. объекты считают свои координаты с левого нижнего угла, а мосты с левого верхнего. Их надо разъединить.

Двинул, получилось. Вот с высотой -mh, тут нужно четко по основной карте-донар. Если не указывать, или указать высоту обрезка, то мосты уедут, а точнее срежется их часть, или снизу пропадут, ну там у меня много таких вариантов было, разных.


Цитата:

Сообщение от Dad (Сообщение 23843)
Теоретически все правильно, осталось проверить на практике. Сомнения только по поводу высоты карты - когда какую высоту какой карты указывать. Можно попробовать так и так...:)

Тут я понял, что при передвижении нужно высоту оригинала, ведь расчет идет по этой карте и статику двигаем по ней, от (А) до (Б).
Цитата:

Сообщение от Dad (Сообщение 23843)
Или mr N подскажет:)

Очень надеюсь, а то я тут такие пляски уже выделываю, что сам потерялся в последовательности всех действий. Уже вторые сутки почти мучаюсь.
Цитата:

Сообщение от Dad (Сообщение 23843)
P.S.
Вообще-то странно, что у тебя почти всё получилось. Ты ведь вырезал кусок с Ленинградом реально. Тогда какие вагончики? Нужно координаты в метрах высчитывать из реальных координат куска карты в пикселах.
К тому же, координаты должны быть кратны 8-и и 32-м для разных tga.
Иначе текстуры не лягут на свои места, соответственно домики не встанут куда положено, даже если правильно переместить их в акторсе...
недоумённо пожал плечами...

Да просто делаю это все в первой, по вагончикам статику резал, по пикселям метры считал. А вагончики мне было удобно двигать постоянно, когда мутил с размерами статики, уменьшал типа обьемы вырезаемые, думал, что не запускается карта из-за того, что за пределы границ карты могло выйти что-то.
Все соотношения по размерам я учел, карта вся склеилась норм, все текстурки лягли и косяки с map_c поправлял. Правда скрипты не пошли, видимо из-за того, что у меня Фотошоп 11 версии.
Но вот только она голая так и остается пока.:cry:
Самое интересное, что она иногда подгружалась, когда я с -mh мутил, но мосты стояли очень подозрительно, -или половины не было, или натыканы непонятно вобще как. Попробую твой вариант с их отдельной вырезкой.
-Спасибо огромное за помощь!

-Начал страдать уже фигней.
Наложил вырезаную карту, на оригинал Финского залива, в тот самый угол на нуле, покрутил немного -Shift, 200метров сюда, 500 туда и вся статика стала на свои места. По краям большой запас, нифига не вылазит вроде. Кинул даже load.ini с той карты, вместо родного с большой и карта все равно запустилась. А вот вырезанная фиг со статикой идет. Завтра буду пробовать мосты отдельно, хотя крыша едет уже.
Вот на оригинале с вклеиным куском в угол, все стоит норм, мосты все четко по дорогам лежат, даже полетал чуток на А20том. Названия городов, то по родному стоят как и были.

Dad 01.04.2009 08:28

Цитата:

Сообщение от Matador (Сообщение 23845)
Названия городов, то по родному стоят как и были.

Названия городов прописаны в файле texts.txt, их тоже надо править.

Если мосты и статика встали на место, значит actors.static вырезан правильно? Так получается? И мосты вместе с объектами передвинулись корректно?

Короче я уже плохо понимаю, что ты там ваяешь...:)
Щас попробую сам вырезать аналогичный кусок сала....
Потом отпишусь.

mr N 01.04.2009 10:56

Доброго дня.
Я должен извиниться - выпал из контекста - времени совсем нет :(

Высоту карты необходимо указывать очень редко. Обязательно если идет резка по координатам. В остальных случаях вроде можно и не указывать - результат не изменится.

Когда речь про вырезание - можно указать координаты в любом порядке, хоть даже правый нижний потом левый верхний.

Которую высоту карты указывать, вырезанной или исходной - при смещении мостов думаю что вообще без разницы :).
В акторс.статик ведь мост задается его расстоянием от верхнего края карты (при этом не важно какую высоту карта имеет).
Тут просто нужно сообразить, что положительное смещение моста по Y - это сдвиг биже к верхнему краю карты, отрицательное - сдвиг дальше от верхнего края.
Когда вы вырезаете кусок из карты, мосты должны стать ближе к верхнему краю карты, туда и нужно двигать (конечно за исключением случая когда вырезаемый кусок верхней границей лежит на верхней границе карты донора - в таком случае мосты по вертикали вообще двигать не нужно).
Кстати, если обрезанный акторс.статик подкладывать к исходной карте донору - объекты должны кучковаться в нижнем левом углу, а вот мосты - в верхнем левом! Тогда есть надежда что вырезано правильно.
Правда это теория - сам не пробовал :)

Ну и конечно в программе баги могут быть, пишите если что...

Da_Don 01.04.2009 11:00

Matador, а есть возможность добавить Ханко?

ПС по поводу вырезанной карты: акторс.статик по ходу надо переделывать, т.к. он изначально определяет размещение объектов по координатам старой карты, и этих координат на новой карте просто нет - они за краями карты.

Dad 01.04.2009 13:52

Я как и обещал вырезал примерно такой же как у тебя кусок карты ФЗ.

У меня получилась новая карта размером 928х800 пикселов.

Загрузил её на всякий случай с нулевым акторсом, полетал, убедился что без особых косякофф.

Акторс вырезал точно по той методе, что описал в своём посте.
Может, что и через заднее крыльцо, но карта загрузилась с первого пинка...

Докладываю. Высоту карты указал только в первой операции
SimpleCutter.exe -mh 214400 -inp actors.static -outp net_actors.static -cut 204800 54400 390400 214400 -rest rest.static

попробовал потом без параметра -mh , получил на выходе акторс без мостов, т.е. в следующей операции вырезки мостов получил пустой файл Br.static

В последующих операциях высоту карты не указывал.

SimpleCutter.exe -inp net_actors.static -outp Br.static -cutbr -rest objects.static

SimpleCutter.exe -inp objects.static -outp shift_objects.static -shift -204800 -54400

SimpleCutter.exe -inp br.static -outp shift_br.static -shift -204800 0

SimpleCutter.exe -inp shift_br.static -outp new_actors.static -add shift_objects.static

Рассказал бы, как вырезал непосредственно файлы tga, да боюсь фотошопщики засмеют - это более чем через заднее крыльцо.
Например, куски нужного размера из нужного места выделял с помощью направляющих, ибо не...

Matador 01.04.2009 14:40

Цитата:

Сообщение от Dad (Сообщение 23869)
Я как и обещал вырезал примерно такой же как у тебя кусок карты ФЗ...
... карта загрузилась с первого пинка...

А какой load.ini ты использовал, Финского залива, новый создавал, или у тебя есть какой-то заготовленный для таких случаев?

-Просто не охота уже методом тыка - гадкий метод.

Dad 01.04.2009 16:57

Цитата:

Сообщение от Matador (Сообщение 23871)
А какой load.ini ты использовал, Финского залива, новый создавал, или у тебя есть какой-то заготовленный для таких случаев?

-Просто не охота уже методом тыка - гадкий метод.


Load.ini от ФЗ только без секции

[TMAPED]
ed_map_t.tga


на всякий случай.

У меня такой ed_map_t.tga карты нет, да я и не знаю, честно говоря, что это такое...

:cry:

Ладно, пускай смеюца...

Я делаю так:

Файл map_c привожу в читабельный вид прог-ой Map_c Toolbox , сохраняю как map_cR
Гружу в Фотошоп.
Выбираю примерно область вырезания.
Смотрю координаты левого угла. В Фотошопе ноль в левом верхнем углу,а в Иле в левом нижнем. Поэтому отнимаю из высоты карты координату У и делю на 32. Короче подгоняю под ближайшее кратное 32-м значение. Так же поступаю с остальными размерами - все должны быть кратны 32-м. Размеры самого куска в том числе.
Когда все координаты получены, выделяю нужный кусок направляющими, т.к. в них можно задать точное числовое значение. Я подозреваю, что можно как-то по-другому, но не знаю как - всегда юзал PaintShopPro, а на PhotoShop перешёл вынужденно, в связи с неумением PaintShopPro корректно сохранять файлы tga. Он там в них что-то дописывает, типа "made in PaintShopPro" и Ил их не понимает.

Затем по направляющим выделяю кусок инструментом "прямоугльное область", копирую Ctrl+C, создаю новый файл (он создаётся сразу с размерами выделенного куска), вставляю Ctrl+V, сохраняю как map_cR.tga.
Файл сохраняется автоматом с цветовыми параметрами старого файла.
Куда сохранять, дело хозяйское.
Перегоняю обратно в Иловский формат.
Открываю map_h. Делю все размеры на 4. Они должны все оставаться кратны 8-и. Всегда проверяю, потому, что набьёшь где-нить не ту цифирку и карта не загрузится.
Так же с помощью направляющих выделяю и сохраняю другие карты.
Цветные карты - map_F, ed_m02 - запрашивают при сохранении глубину цвета. Ставлю 24 бита и без уплотнения RLE.
Почему ed_m02.tga? - режу этот файл, т.к. оно соответствует размерам остальных файлов tga. Два других создаю увеличением и уменьшением ed_m02.tga, на 200% и на 50%
Так как у меня мышление образное - рисую всё это дело на бумаге, чтоб не запутаца, где какой размер.
Потом перевожу пикселы c карты map_h в Иловские метры и режу Акторс. 1пикел - 200м

По минимуму для загрузки карты тебуются
map_c.tga
map_c.tga_table
map_h.tga
map_T.tga
map_F.tga (надо попробовать без него, выкинув в случае чего, его упоминание из load.ini)
ed_m01.tga, ed_m02.tga, ed_m03.tga - сколько, сколько указано в load.ini (вобщем и одного достататочно)
load.ini - любой, желательно дефолтный без прибамбасов в виде осенних лесов. Читаем его на соответствие имеющимся в наличии файлам.
actors.static - нужен для того, чтоб сохранялись миссии, чтоб сразу полетать. Можно просто создать пустой текстовой файл с расширением static, по идее карта грузится и без него.

Matador 01.04.2009 21:06

Вложений: 1
Цитата:

Сообщение от Dad (Сообщение 23883)
Потом перевожу пикселы c карты map_h в Иловские метры и режу Акторс. 1пикел - 200м

А когда пиксели в метры переводишь, для вырезки статики, ты отступ в 32 делаешь с краев карты, типа для дублируемой зоны, или оно так нормально??

На счет фотошопа, так там как в 3дмаксе, у каждого своя метода, очень много просто способов всяких.
А для вырезки нужного куска, я пользуюсь или Slice Select Tool, или Сrop Tool, кнопка (С) по умолчанию. В Slice Select Tool, когда выбераешь, то по клику правой кнопки открывается окно, где можно указать размер изображения (WH) и (ХУ) координаты свдижки оного, там такая рамка образуется, копируй, вставляй, вырезай и т.д.

mr N 01.04.2009 23:08

Цитата:

Сообщение от Dad (Сообщение 23883)
Цветные карты - map_F, ed_m02 - запрашивают при сохранении глубину цвета. Ставлю 24 бита и без уплотнения RLE.

Мааааленькая поправка. Те файлы, в которых имеется осмысленный альфа-канал (это как минимум map_F) - нужно сохранять как 32 бита.

Есть ещё мысль, как можно порезать map_R (они видимо имеют стандартный размер 512х512 пикселей) - можно сделать ресайз до размеров map_h/t/f, обрезать как все остальные, сделать ресайз до 512х512 пикселей, сохранить.


Текущее время: 09:29. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd. Перевод: zCarot