Показать сообщение отдельно
Старый 01.04.2009, 04:31   #71
Dad
Местный
 
Аватар для Dad
 
Регистрация: 25.06.2008
Адрес: г.Губкин
Сообщений: 191
По умолчанию

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

Цитата:
Сообщение от Matador Посмотреть сообщение
Работаю над этим. Из Финского залива центр с Питером (Ленинградом) вырвал, все подогнал норм, в редакторе все края смотрятся отлично. А вот со статикой проблемы. Кусок нужный вырезаю в 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.
Иначе текстуры не лягут на свои места, соответственно домики не встанут куда положено, даже если правильно переместить их в акторсе...
недоумённо пожал плечами...
__________________
В обход идти, понятно, не очень-то легко,
Не очень-то приятно, и очень далеко!
Айболит-66 (с)

Последний раз редактировалось Dad; 01.04.2009 в 05:00.
Dad вне форума   Ответить с цитированием