Миграция существующего проекта Unity на новый компьютер - PullRequest
0 голосов
/ 23 мая 2019

Я хочу скопировать свой существующий проект Unity в новый пустой проект Unity.Похоже, что все ссылки на объекты и многие сценарии не настроены должным образом / присутствуют в Иерархии в моих сценах.

Я только скопировал папку с активами / package.json в новый проект Unity, потому что остальные файлызагрязнены и содержат в себе много бесполезной информации.

Где находятся файлы с подробным описанием данных сцен? Я хочу скопировать это, чтобы я мог запускать свои сцены со всеми объектамиссылки и сценарии, установленные на правильные игровые объекты.

1 Ответ

5 голосов
/ 23 мая 2019

В общем случае вам всегда понадобятся папки Assets и ProjectSettings.

Все остальное, что вы можете удалить, и Unity воссоздает / перекомпилирует их при повторном открытии проекта.

Также см. За кулисами

При резервном копировании проекта или добавлении проекта в репозиторий управления версиями вы должны включить основную папку проекта Unity, содержащую обе папки Assets и ProjectSettings . Вся информация в этих папках имеет решающее значение для работы Unity .

Для меня также некоторые файлы Library/*.asset имеют смысл сохранить ... они хранят, например, сборкунастройки, целевая платформа и т. д., поэтому мне не нужно настраивать их / переключать платформу с нуля каждый раз, когда я «сбрасываю».


Я всегда использую git для своих проектов,Поэтому, когда я хочу очистить хранилище перед копированием, я обычно использую его как *.gitignore (есть также более полная версия, например , от Github ).Все перечисленное здесь может быть в основном удалено и будет перекомпилировано при следующем открытии проекта в Unity.(Строки, начинающиеся с !, являются исключениями, которые я добавил, потому что, как я уже сказал, это также имело смысл сохранить.)

/.out/
/[Ll]ibrary/*
/[Tt]emp/
/[Oo]bj/
/[Bb]uild/
/[Bb]uilds/
/Assets/AssetStoreTools*
/UWP/

# Visual Studio cache directory
/.vs/

# Autogenerated VS solution and project files
/ExportedObj/
.consulo/
*.csproj
*.unityproj
*.sln
*.suo
*.tmp
*.user
*.userprefs
*.pidb
*.booproj
*.svd
*.pdb

# Unity3D generated meta files
*.pidb.meta
*.pdb.meta

# Unity3D Generated File On Crash Reports
**/sysinfo.txt

# keep the *.asset files from Library
!/[Ll]ibrary/*.asset

Лучше всего сначала запустить репозиторий, работающий

cd your/project/root/path
git init
git add *

Это покажет некоторые предупреждения для каждого файла, который указан в .gitignore, но вы можете игнорировать эти предупреждения.Он говорит только что-то похожее на

Вы пытаетесь добавить игнорируемый файл в коммит, и он будет пропущен

, чем при запуске

git commit -m "Initial commit"

чтобы сделать ваш первый коммит.

Теперь, наконец, вы можете запустить

git clean -xfd

, который удаляет все файлы, которые не отслеживаются (поэтому убедитесь, что всегда есть все файлыВы хотите, чтобы оставался хотя бы поэтапным (git add) или лучше коммитом первым), или *.gitignore будет проигнорировано.

-f
Если для переменной конфигурации Git clean.requireForce не задано значение false, git clean откажется от удаления файлов или каталогов, если не указано -f, -nили -i.Git откажется удалять каталоги с подкаталогом или файлом .git, если не указан второй ключ -f.

-d
Удалите неотслеживаемые каталоги в дополнение к неотслеживаемых файлов.Если неотслеживаемый каталог управляется другим Git-репозиторием, по умолчанию он не удаляется.Используйте параметр -f дважды, если вы действительно хотите удалить такой каталог.

-x
Не используйте стандартные правила игнорирования, считанные из .gitignore (для каждого каталога) и $GIT_DIR / info / exclude, но все равно используйте правила игнорирования, заданные с опциями -e.Это позволяет удалить все неотслеживаемые файлы, включая продукты сборки.Это можно использовать (возможно, в сочетании с git reset), чтобы создать чистый рабочий каталог для тестирования чистой сборки.


Другой вариант для перемещения сцен или частей ресурсов между двумя различными проектами.использует UnityPackage

Из вашего текущего проекта экспорт UnityPackage

  1. Откройте проектВы хотите экспортировать активы из.

  2. Выберите Assets> Export Package… в меню, чтобы вызвать диалоговое окно Экспорт пакета.

  3. В диалоговом окне выберите Активы, которые вы хотите включить в пакет, нажав на флажки, чтобы они были отмечены.

  4. Оставьте флажок include dependencies установленным для автоматического выбора любогоАктивы , используемые теми, кого вы выбрали .

  5. Нажмите Export, чтобы открыть Проводник (Windows) или Finder (Mac) и выбрать, где выхотите сохранить файл пакета.

  6. Назовите и сохраните упаковкуge куда угодно.

Импортируйте UnityPackage в новый проект

  1. ОткройтеПроект, в который вы хотите импортировать активы.

  2. Выберите Assets> Import Package> Custom Package…, чтобы открыть Проводник (Windows) или Finder (Mac).

  3. Выберите нужный пакет из Explorer или Finder, и откроется диалоговое окно Import Unity Package со всеми предварительно проверенными элементами пакета, готовыми к установке.

  4. Выберите Import, и Unity поместит содержимое пакета в папку Assets, доступ к которой можно получить из представления проекта.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...