PDA

Просмотр полной версии : База - хитрости и трюки


TEST

Olеg75
05.11.2014, 20:02
Здесь буду делиться некоторыми хитростями, касающимися работы с базой мира, а также с группами объектов. Предполагается, что человек уже знаком с базой мира, и умеет как минимум заливать туда объекты, текстуры и группы.

Olеg75
05.11.2014, 20:34
1. Переводим названия всех объектов и текстур в нижний регистр.

Если в базе встречается объект или текстура, название или расширение которых содержит хоть одну заглавную букву, то такой объект или текстура вообще не будут отображаться в 3d-пространстве. Предположим, у нас базе несколько тысяч объектов и текстур, и среди них есть сотня-другая, которая имеет такие некорректные названия. Чтобы вручную всё это "богатство" не переименовывать, воспользуемся программой Advanced Renamer.

Обойдёмся тут без скринов.
1. Сначала выкачиваем из базы на сервере в компьютер все имеющиеся объекты и текстуры.
2. Распаковываем все объекты, а также запакованные текстуры. Проще говоря в папках models и textures теперь должны аккуратно лежать разархивированные модели и текстуры. Все архивы удаляем с компьютера. Чтобы массово распаковать всё имеющиеся в папке файлы, при живом (то бишь установленном на компе) винраре, выделяем всё, что запаковано, кликаем правой кнопкой мыши, и тыкаем в команду "Извлечь в текущую папку".
3. В программе Advanced Renamer жмём кнопки Добавить > Файлы...
4. Выбираем (Ctrl+A) все распакованные модели (а позже и текстуры), и щёлкаем Открыть. Следует учесть, что количество файлов, открываемых за один раз программе, не должно превышать 10000.
5. В левом нижнем углу программы под заголовком Добавить метод, находим команду Новый регистр. Обратите внимание, что в появившемся окне выбранного метода нужно выставить применить к Имя и расширение, а переключатель установить на Нижний регистр.
6. В верхнем меню нажимаем Старт. Через непродолжительное время все файлы будут в названии иметь только строчные (маленькие) буквы.

Надеюсь не надо напоминать, что перед любой манипуляцией с файлами, необходимо позаботиться о создании их резервной копии.

Olеg75
05.11.2014, 20:44
2. Пакетная архивация файлов.

Чтобы запаковать в отдельные .zip - архивы большую группу файлов, будь то объекты, текстуры, или что-то другое, не нужно вручную каждый из них по отдельности сжимать. Просто воспользуемся программой FSArchiver (Fast Serial Archiver).

http://i.imgur.com/4IZMlRI.png

Как видим - там всё очень просто. В верхнее поле вводим путь к папке с незапакованными файлами, в нижнее - путь, куда будут складываться получившиеся архивы. Формат архива должен быть zip. Жмём Выполнить.

Olеg75
13.11.2014, 02:02
3. Сортировка объектов

Задача - достаточно быстро произвести сортировку всех находящихся в базе объектов по категориям, например, растения, мебель, стены, окна и так далее.

1. Для этого распаковываем все скачанные с сервера объекты, скидываем их в одну папку с текстурами, также предварительно скачанными. Запакованные текстуры тоже следует распаковать.
2. Запускаем Аккутранс (но не открываем в нём пока никаких объектов)
3. Меню File > Batch Create Thumbnails. Появится диалоговое окно и фигура некоего персонажа

http://i.imgur.com/u2NkWw9.jpg

4. В поле Rotate Camera находим красную букву С с круговыми стрелками. Подводим к ней курсор и двигаем мышью, вращая таким образом персонажа. В итоге персонаж должен установиться примерно в такое положение:

http://i.imgur.com/uFzlWOu.jpg

5. В поле Import Folder указываем путь к папке, куда были сброшены все распакованные файлы объектов и текстур. В поле Export Folder - путь к папке, куда будут сбрасываться скриншоты всех объектов. Остальные настройки выставляем как показано на скрине выше, и жмём Ок. Время создания "фотографий" объектов будет зависеть от количества имеющихся в исходной папке файлов с моделями. Если объектов очень много, то создание скринов может занять даже больше часа.

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

7. Приступаем к сортировке скринов. Можно всё делать вручную, создавать нужные папки, имеющие такие названия как окна, двери и т. д., и перебрасывать туда соответствующие скриншоты. А можно воспользоваться программой FastStone Image Viewer. Сначала нужно будет вручную создать папки с нужными категориями, потом открыть папку со скринами в это программе, выглядеть это будет примерно так:

http://i.imgur.com/5RtMhPV.jpg

Заметили, что названия скринов совпадают с названиями объектов? В дальнейшем это нам очень пригодится...

8. Открытые в программе ещё неотсортированные скрины сортируются таким образом:
Выделяются все файлы, например, с растениями. Жмём потом букву М (в английской раскладке). Появится окно:

http://i.imgur.com/MQqKTuy.jpg

В поле Обзор указываем путь к той папке, куда хотим переместить скрины с растениями. Снова жмём М. Впоследствии этот путь будет отображён в списке ниже, и уже не придётся при найденных дополнительных скринах растений жать обзор и искать нужную папку. Достаточно выбрать путь из списка. Также поступаем и с другими категориями. В результате список путей будет расти. И нам останется только выделять нужные скрины, жать М, потом выбирать нужный путь и снова жать М.

9. После создания тематических каталогов со скринами, можно пойти тремя путями (по отдельности или в каком-либо сочетании).
--а. С помощью программы Image Uploader залить все скрины на какой-то фотохостинг и выложить на форум или залить скрины на гугл-яндекс-маил или какойто другой диск.
--b. Залить скрины в отдельную папку на сервер с базой мира, и выложить эти скрины в самом мире на стендах, в качестве альтернативной выставки объектов.
--c. Сформировать из названий скринов группы объектов, и сделать базу наподобии базы Дипа или Стройбата.

О последних двух вариантах поговорим в следующих постах.

Olеg75
14.11.2014, 02:34
4. Выставка объектов в мире в виде скринов

Альтернативный способ выставки объектов в мире - выкладывать не сами объекты, как в Стройбате, например, а только их скрины. Вот ниже и опишу относительно быстрый способ такого выкладывания. Этот пункт является продолжением предыдущего, касающегося сортировки объектов. Итак:

1. Создаём списки отсортированных по категориям скринов. Для этого запускаем программу Advanced Renamer. Жмём Добавить, и выбираем Файлы...

http://i.imgur.com/mDHFsd4.jpg

2. Открываем все файлы, находящиеся в первой выбранной категории недавно рассортированных объектов. Жмём на кнопку рядом: Список > Сохранить...

3. Список запишется в текстовый файл, все файлы списков располагаем рядом с категориями под теми же названиями, чтобы не запутаться. Списки создаём для каждой категории. Перед добавлением в программу новых файлов, удаляем предыдущие.

4. Теперь каждый список надо обработать. Открываем каждый файл со списком и удаляем оттуда все пути, оставляя только названия скринов с расширениями. Делается это обень просто, выделяем просто первый путь, оставляя название скрина невыделенным. Если список открыт в блокноте - то жмём Правка > Заменить. Путь вставляем в поле Что, а поле Чем оставляем пустым и жмём Заменить всё.

http://i.imgur.com/xMs3TpH.jpg

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

Продолжение будет позже.

Olеg75
15.11.2014, 09:36
4. Выставка объектов в мире в виде скринов (продолжение)

Сейчас необходимо использовать полученные списки для вывешивания скринов объектов на стенды в виртуальном мире.

5. Создаём папку с именем, к примеру, screen, и копируем туда все получившиеся скриншоты. Причём сбрасываем всё в кучу, без категорий.

6. Теперь нужно уменьшить качество скриншотов, чтобы вся папка занимала меньше места на диске. Качество jpg файлов можно уменьшить без проблем до 20%. Для этого запускаем программу FastStone Image Viewer, открываем меню Сервис > Пакетное преобразование/переименование, и в открывшемся окне в левой колонке находим и выделяем все сброшенные в кучу скрины, и добавляем их в правую колонку. Потом выбираем путь к выходной папке. Выходной формат должен быть jpg. Жмём на кнопку Установки, и в ещё одном открывшемся окне выставляем качество 20%. Оk.

http://i.imgur.com/2giKJSY.jpg

7. Далее папку со сброшенными в кучу и уменьшенными в качестве скринами заливаем на сервер, где находится база мира, рядом с папками textures, models и т. д. Учитываем, что в названии папки русские буквы применять нельзя.

8. Выбираем в базе мира подходящий стенд, способный адекватно воспринять команду create picture. Также пропорции стенда должны соответствовать пропорциям получившихся скринов, чтобы не использовать команду масштабирования на каждом объекте, иначе разозлим итак нервного прораба. Ещё обращаем на такие параметры стенда, как простота - в идеале это должен быть простой односторонний прямоугольник, и не слишком мелкий размер.

9. Теперь произведём несложную математическую операцию. Общее число скринов поделим на количество созданных категорий. Например, у меня получились 21022 скрина, и 113 категорий. Делим - получается 186. Это будет среднее количество находящихся в каждой категории скринов. Округляем - будет 200. Разумеется там есть папки и со считанными единицами, и с тысячами файлов, но как увидим дальше, именно среднее количество подойдёт лучше всего для создания группы стендов.

10. На следующем этапе создаём в мире стену из стендов. У меня получилась стена длиной 10 и высотой 20 стендов. Прежде чем копировать стенды, вписываем в первый стенд команду create picture, и обязательно клеим к этой команде ссылку на какую-нибудь картинку. В противном случае, просто команда без ссылки в дальнейшем может дать глюки. Ссылку дайте на внешний хостинг, чтобы вначале было http://
После ссылки через пробел ставим команду mip=off

http://i.imgur.com/FFW5xwK.jpg

11. Выделяем теперь всю нашу стену и сохраняем в группу. Помним, что для названия групп тоже нельзя применять русские буквы?

Продолжение следует...

TAG.Hosting — Хостинг сайтов и Регистрация Доменов