Какие standalone приложение unity может собрать из списка
Приветствую всех друзья! В прошлой статье были рассмотрены типичные проблемы и способы их решения при работе с кроссплатформенными приложениями, создаваемыми на Unity. Сегодня мы рассмотрим окно создания билда. Билд – это собранная из ресурсов вашего проекта готовая игра, ее конечное представление зависит от платформы, на которую вы его собираете. Например для Android это будет файл с расширением .apk , а для ПК (персонального компьютера) это будет папка с файлами в корне которой будет лежать файл с названием вашей игры и расширением .exe . Но помимо этого также будут рассмотрены такие вещи как уменьшение размера билда, и конвейер создания билда (крайне кратко).
Картинка для привлечения внимания из открытых источников Картинка для привлечения внимания из открытых источниковОкно настройки сборки содержит все настройки и параметры, необходимые для создания билда на различные платформы. Из этого окна можно создать билд разработчика ( development build ) чтобы протестировать ваше приложение, а также сделать финальный билд который можно будет публиковать в магазины приложений. Чтобы настроить параметры билда вашего приложения перейдите в контекстное меню File\Build Settings .
Используйте панель Scenes in Build для управления тем, какие сцены попадут в ваш билд. Просто поставьте галочку напротив сцены, которая должна попасть в билд. В разделе Platform вы можете выбрать на какую платформу вы хотите сделать билд, а также здесь можно настроить параметры билда, например, выбрать метод сжатия данных ( Compression Method ). Ниже я кратко раскрою для чего нужны остальные параметры сверху вниз:
- Target Platform – это платформа на которую будет сделан билд
- Architecture – как вы знаете существуют 32х разрядные и 64х разрядные процессоры, так вот с помощью этой настройки мы можем выбрать на какую разрядность делать билд
- Server Build – при переключении данного чекбокса Unity создаст билд для сервера, который не имеет графики, а также будет использовать платформозависимый определитель UNITY_SERVER для кода. Если мы с такой галочкой сделаем билд для Windows он будет работать как консольное приложение.
- Copy PDB files – при включении данного чекбокса Unity при билде на ПК включит в него PDB файлы. Файлы PDB содержат информацию об отладке приложения, которая полезна для отладки, но при этом она увеличивает размер вашего билда.
- Create Visual Studio Solution – данный чекбокс при включении создаст файлы решения для вашего проекта, чтобы вы могли создать окончательный исполняемый файл в Visual Studio .
- Development Build – данный чекбокс при включении активирует отладку и профилировку в билде. Используйте этот параметр, когда хотите протестировать свое приложение.
- Autoconnect Profiler – этот чекбокс можно включить только при включенном Development Build . Когда этот параметр активирован профайлер Unity (о нем еще будет статья, если вкратце то нужен для просмотра и отладки работы приложения) будет автоматически подключаться к билду и профилировать его.
- Deep Profiling – этот чекбокс также можно включить только при активном Development Build . Он автоматически подключает глубокую профилировку в профайлере. Эта функция позволяет более глубоко исследовать ваше приложение, но при этом работа всех скриптов и всего приложения будет замедленна.
- Script Debugging – этот чекбокс также можно включить только при активном Development Build . Это позволяет вам отлаживать свой код. Эта функция не доступна на WebGL .
- Scripts Only Build – Запустите сборку билда чтобы проверить изменились ли скрипты. Для этого проект уже должен быть собран хотя бы один раз.
- Compression Method – Выше я уже писал об этом – позволяет выбрать метод компрессии (сжатия) игровых ресурсов.
Для создания билда нажмите на кнопку Build – после чего Unity предложит выбрать место хранения и имя билда (хранить билд в папке Assets нельзя), затем начнется процесс сборки билда. Кнопка Build And Run создаст билд после чего сразу запустит его на платформе (то есть если у вас, например, билд на Android , то телефон должен быть подключен к компьютеру, после того как билд будет собран Unity установит его на устройство).
Важно свести размер файла билда к минимуму, особенно для мобильных устройств, так как обычно магазины приложений для мобильных накладывают ограничения на размер билда. Первым шагом в уменьшении размера является определение того, какие ресурсы вносят в него наибольший вклад, поскольку именно эти ресурсы являются наиболее вероятными кандидатами на оптимизацию. Эта информация доступна в логе редактора сразу после выполнения сборки билда. Перейдите в окно консоли (если оно у вас не открыто, то откройте его по следующему пути в контекстном меню Window\General\Console ), нажмите на небольшой выпадающий список в правом верхнем углу и выберите пункт Open Editor Log .
Журнал редактора показанный выше предоставляет сводку ассетов по категориям, а также показывает какое процентное соотношение по памяти занимает тот или иной тип. После чего он начинает в порядке убывания перечислять от самого большого к самому маленькому ресурсы в игре. Обычно текстуры/звуки/анимации весят много в то время как скрипты/уровни/шейдера мало. Также не забывайте, что все ресурсы игры, хранящиеся в папке Resources (что это за папка, для чего она нужна и как с ней работать я еще опишу в своей будущей статье) будут добавлены в итоговый билд.
Журнал редактора поможет вам определить какие именно ресурсы необходимо оптимизировать или удалить, но перед началом работы вам следует помнить о следующем:
- Во время сборки билда Unity кодирует импортированные ресурсы (например, текстуры) в свои внутренние форматы, поэтому для работы выбирайте формат файла, с которым вам удобно работать (например, png ).
- Unity удаляет большинство неиспользуемых ресурсов во время сборки, поэтому вы ничего не получите вручную, удалив их из проекта. Единственные ресурсы, которые Unity удалить не может это скрипты и файлы, хранящиеся в папке Resources (потому как Unity не знает какие файлы из этой папки будут использованы вами во время работы игры, а какие нет). Имея это ввиду вы всегда должны держать ресурсы в папке Resources имеющие отношение к самой игре – остальные смело удаляйте. Также можно подумать о замене ассетов (они же ресурсы) из папки Resources на AssetBundles – это означает что такие ассеты будут загружаться динамически, тем самым уменьшая размер билда. О AssetBundles будет отдельная статья.
Предложения по уменьшению размера билда.
Обычно текстуры занимают большую часть размера билда. Первым решением уменьшающим их является компрессия (она настраивается при импорте текстур в инспекторе, как всегда в будущем я напишу подробную статью об этом). Если это не уменьшает размер файла достаточно, попробуйте уменьшить физический размер текстуры (в пикселях). Чтобы сделать это без изменений исходного файла, выберите текстуру в окне проекта и в окне инспектора измените параметр Max Size . Чтобы увидеть, как это выглядит в игре, увеличьте масштаб игрового объекта, который использует эту текстуру, а затем отрегулируйте Max Size , пока он не начнет выглядеть в окне сцены хуже. Изменение параметра Max Size никак не влияет на ваш ассет текстуры, только на его разрешение в игре.
По умолчанию Unity сжимает все текстуры при импорте. Для ускорения рабочего процесса в редакторе перейдите по пути Edit\Preferences и во вкладке General уберите галочку напротив пункта Compress Assets on Import . Все текстуры сжимаются при сборке билда независимо от этого параметра.
Вы также можете сжимать сетки и клипы анимации при импорте (опять же для уменьшения веса итогового билда). Чтобы включить компрессию сетки ( Mesh compression ), выберите в окне проекта необходимую вам сетку, и в окне инспектора установите напротив пункта Mesh compression один из трех параметров: Low, Medium или High . Помните, что сжатие сеток и анимаций вносит в них неточность, поэтому с этими параметрами нужно поэкспериментировать чтобы подобрать нужные для себя значения.
Также обратите внимание что сжатие сетки уменьшает занимаемую ей память только на жестком диске, в оперативной памяти она имеет все тот же изначальный вес. Также нужно знать, что сокращение ключевых кадров в анимации уменьшает вес файла как на жестком диске, так и в оперативной памяти.
При создании билда иногда требуется каким-то образом изменить ход сборки. Например сделать так, чтобы Unity собрал не только билд на ПК, а также добавил установщик к нему. Чтобы сделать это нужно воспользоваться скриптом редактора, используя BuildPipeline.BuildPlayer , он нужен для запуска сборки, а затем запустить код постобработки который вам нужен:
Этот код запускает сборку билда для ПК, а также копирует в конечную папку билда файл Readme.txt из ресурсов игры. Этот код запускает сборку билда для ПК, а также копирует в конечную папку билда файл Readme.txt из ресурсов игры.Выше самый простой из примеров того как можно сделать свой сборщик билдов. О возможностях BuildPipeline я более подробно расскажу в своих будущих статьях.
На сегодня это все. В следующей статье я расскажу о некоторых известных проблемах и способах их решения в Unity. Спасибо всем, кто дочитал эту статью до конца, подписывайтесь на канал, ставьте лайки, а для тех, у кого появились вопросы - спрашивайте в комментариях! А если вы хотите помочь данному каналу в развитии – делитесь этой статьей с друзьями в социальных сетях!
В любой момент разработки игры можете захотеть посмотреть на то, как она выглядит вне редактора, при сборке в качестве самостоятельного приложения или веб-проигрывателя. В этом разделе рассказано, как вызвать и использовать окно Build Settings (настройки сборки) для создания разных сборок ваших игр.
File > Build Settings… is the menu item to access the Build Settings window. It pops up an editable list of the scenes that will be included when you build your game.
The Build Settings window
Список будет пуст при первом открытии этого окна в проекте. В таком случае, при сборке, в игру будет включена только текущая открытая сцена. Если вы желаете быстро собрать тестовый плеер с единственной текущей сценой, просто соберите плеер с пустым списком сцен.
Для создания сборки с несколькими сценами можно довольно просто добавить нужные сцены в этот список. Первый способ заключается в нажатии кнопки Add Current. Вы увидите, что текущая сцена появилась в списке. Второй способ предполагает перетаскивание в список сцены из окна Project View.
At this point, notice that each of your scenes has a different index value. Scene 0 is the first scene that will be loaded when you build the game. When you want to load a new scene, use SceneManager.LoadScene inside your scripts.
Если вы добавили более одной сцены и хотите изменить их порядок, просто перетаскивайте сцены в списке до тех пор, пока не добьётесь необходимого вам порядка.
Чтобы удалить сцену из списка, достаточно выбрать её в списке и нажать Command-Delete (на Mac) или Delete (на Win). Сцена пропадёт из списка и не будет включена в сборку.
Когда вы будете готовы к публикации своей сборки, выберите нужную платформу в списке Platform и удостоверьтесь, что напротив неё находится логотип Unity; если это не так, тогда нажмите кнопку Switch Platform, чтобы сообщить Unity о том, под какую платформу вы желаете совершать сборку. После этого, нажмите кнопку Build. Откроется стандартное диалоговое окно сохранения файла, в котором вы можете выбрать имя и расположение для игры. После нажатия кнопки Сохранить Unity соберёт ваше приложение, и готово! Довольно просто, не так ли? Если вы не уверены, куда лучше сохранять сборку, сохраняйте её в корневую папку проектов. Вы не можете сохранять сборку в папку Assets.
Enabling the Development Build checkbox on a player will enable Profiler functionality and also make the Autoconnect Profiler and Script Debugging options available.
Further information about the Build Settings window can be found on the Build Settings page.
Сборка standalone плееров
With Unity you can build standalone applications for Windows, Mac and Linux. It’s simply a matter of choosing the build target in the build settings dialog, and hitting the ‘Build’ button. When building standalone players, the resulting files will vary depending on the build target. For the Windows build target, an executable file (.exe) will be built, along with a Data folder which contains all the resources for your application. For the Mac build target, an app bundle will be built which contains the file needed to run the application as well as the resources.
Распространение standalone приложения на Mac заключается в передаче “app bundle” (в него упаковано всё необходимое). На Windows необходимо предоставить .exe-файл и папку Data, чтобы другие могли запустить приложение. То есть, чтобы другие пользователи могли запустить у себя ваши приложения, на их компьютерах должны быть файлы, которые для вас собрал Unity.
В недрах процесса сборки
Сперва процесс сборки разместит пустую копию игры там, где вы указали. Затем он начнёт прорабатывать список сцен в настройках сборки: открывать в редакторе одну из них за раз, оптимизировать их и интегрировать их в пакет приложения. Он также подсчитает все ассеты, необходимые включенным в сборку сценам и сохранит эти данные в отдельном файле внутри пакета приложения.
Любой GameObject в сцене с тэгом ‘EditorOnly’ не будет включён в собираемый пакет. Это удобно для отладки скриптов, которые не должны оказаться в финальной игре.
Все объекты в текущем уровне уничтожаются при загрузке нового уровня. Чтобы это предотвратить, используйте DontDestroyOnLoad() на любых объектах, которые вы желаете уберечь от уничтожения. Обычно это используют для проигрываемой при загрузке уровня музыки, или для скриптов игровых контроллеров, которых хранят состояние и прогресс игры.
Use SceneManager.sceneLoaded to define the message sent to all active GameObjects after the loading of a new level is finished.
For more information on creating a game with multiple Scenes, see our Tutorials.
Предварительная загрузка (далее - прелоадинг)
Опубликованные сборки автоматически осуществляют прелоадинг всех ассетов в сцене при её загрузке. Исключением является сцена 0, так как она, как правило, используется в качестве загрузочного экрана, который нужно отобразить как можно быстрее.
Если вы желаете, чтобы прелоадинг осуществлялся для всего содержимого, достаточно просто создать пустую сцену, в которой будет вызываться Application.LoadLevel(1), и в окне настроек сборки сделать её первой в списке сцен (чтобы индекс был 0). Все последующие уровни будут загружаться с прелоадингом.
Вы готовы собирать игры
На данный момент вы изучили, как использовать интерфейс Unity, как использовать ассеты, как создавать сцены и как публиковать ваши сборки. Теперь вас ничто не останавливает от создания игры вашей мечты. Мы уверены, что по пути вам ещё предстоит многое узнать, и мы всегда рядом, чтобы помочь вам во всём разобраться.
Для дополнительной информации о том, как создавать игровые уровни, см. раздел Построение сцен.
Для дополнительной информации о написании скриптов для вашей игры, см. раздел Скриптинг.
Для дополнительной информации о создании графических ассетов, см. раздел Импорт и создание ассетов данного руководства.
To interact with the community of Unity users and developers, visit the Unity Forums. You can ask questions, share projects, build a team, anything you want to do. Definitely visit the forums at least once, to showcase the games you make and find support from other developers.
Папка "Ресурсы" - это папка, которая автоматически распознается в Unity. Ее можно создать в окне "Проект" редактора Unity, и в нее помещаются ресурсы. Независимо от того, полезны ли ресурсы в папке «Ресурсы» или нет, все они будут упакованы в .apk или .ipa, а ресурсы внутри будут сжаты. Метод загрузки - Resources.Load (имя файла). Примечание. Имя файла не включает расширение. Содержимое ресурсов в разделе «Ресурсы» не может быть изменено после упаковки, но ресурсы, загруженные из папки «Ресурсы», могут быть изменены.
2. Путь Application.dataPath
Это свойство возвращает путь к папке, в которой находится файл данных программы. Например, в редакторе это путь к папке Assets проекта. По этому пути вы можете получить доступ к ресурсам в любой папке в проекте, но он полностью недоступен в мобильном терминале. использовать.
3. Путь Application.streamingAssetsPath
Этот атрибут используется для возврата каталога кэша потоковых данных.Путь возврата - это относительный путь, который подходит для установки пути к некоторым внешним файлам данных. Просто запустите папку с именем StreamingAssets в каталоге Assets проекта Unity, а затем используйте Application.streamingAssetsPath для доступа к ней. Ресурсы в этой папке будут упакованы без изменений, когда они будут упакованы. Они не будут сжиматься и обычно размещаются Некоторые данные о ресурсах. В ПК / MAC могут быть реализованы такие операции, как «добавление, удаление, изменение и проверка» файлов, но на мобильном терминале это путь только для чтения.
4. Путь Application.persistentDataPath (рекомендуется)
Это свойство возвращает путь к каталогу постоянного хранения данных, в котором могут храниться некоторые файлы постоянных данных. Этот путь доступен для чтения и записи, но он может быть прочитан и записан только во время работы программы, и данные не могут быть помещены в этот путь заранее. Это песочница приложения на IOS, для которой iCloud может автоматически создавать резервные копии, а файлы можно извлекать напрямую с помощью помощника, такого как синхронный push; расположение на Android основано на пути доступа для записи, установленном в настройках проекта, который может быть установлен как программная песочница. Это все еще SD-карта. Примечание. Если настройки Android сохранены в песочнице, вы должны быть рутированы, прежде чем вы сможете использовать компьютер для извлечения файлов, поэтому рекомендуется записывать на SD-карту. Как правило, по этому пути рекомендуется сохранять полученные файлы, например двоичные файлы, которые можно читать из StreamingAsset, или файлы, считываемые из AssetBundle и записываемые в PersistentDatapath.
5. Путь Application. ContemporaryCachePath
Это свойство возвращает каталог кэша временных данных, аналогичный Application.persistentDataPath, но не может быть автоматически скопирован в IOS.
6. / sdcard / .. путь
Указывает корневой каталог SD-карты телефона Android.
7. / storage / emulated / 0 / .. путь (давно искал этот путь . )
Представляет корневой каталог встроенной памяти телефона Android.
Примечание:
Все методы загрузки ресурсов в указанных выше путях могут быть загружены с помощью класса WWW, но обратите внимание на имена доступа, которые необходимо добавить к пути каждой платформы. Например, путь платформы Android должен быть добавлен «jar: file: //», а другие платформы используют «file:». // ".
Интеллектуальная рекомендация
Замена персонажа
Пожалуйста, реализуйте функцию для преобразованияЗаменить каждый пробел"% 20". Например, когда строка We We Happy. Строка после замены - We% 20Are% 20Happy. Встроенные функции для строк Pyth.
Подсистема ввода Android - Itreader EventHub :: GetEvents Mneedtscandevices Переменные Подробный анализ
EventHub :: MeetEvents Method, Mneedtscandevices Переменная процесса вызова подробный анализ . if (mNeedToScanDevices.
Базовые знания Python3: List
Просто поймите: 1. Типы элементов в списке могут быть разными, он поддерживает числа, строки и даже списки (так называемая вложенность). 2. Список представляет собой список элементов, заключенн.
NOIP 2017 Улучшенное сокровище группы ___ государственное давление dp + dfs
Главная идея: ответ: Этот вопрос найти несложно, f [i] указывает, что состояние выбранной точки равно i, это минимальная стоимость, а dis [i] указывает количество сокровищ от начальной точки до i. , а.
HYSBZ-2002: Bounce Bouncing Sheep (алгоритм блокировки)
Отскок летающей овцы Однажды Лостмонки изобрел сверхэластичное устройство и, чтобы похвастаться перед своими друзьями-овцами, пригласил маленькую овечку поиграть в игру. В начале игры Lostmonkey разме.
Опишем процесс сборки проекта под платформу Android, которая поддерживается большинством смартфонов.
Для начала сборки необходимо открыть окно Build Settings из пункта меню File -> Build Settings… (или нажать комбинацию клавиш Ctrl + Shift + B):
Окно Build Settings
Шаг 1. Выбор платформы
В окне Build Settings выбрать платформу Android и нажать на кнопку Switch Platform:
Выбор платформы Android
Шаг 2. Проверить и отредактировать (если надо) настройки в в окне Project Settings, в разделе Player:
1) заполнить поля:
Company Name (писать по-английски и лучше без знаков препинания и пробелов),
Product Name (аналогично – по-английски и без специальных символов и пробелов),
Version (можно оставить значение по умолчанию, но если приложение собирается повторно, то значение надо менять на большее; тогда при установке новой версии приложения на смартфон существующее приложение обновится. Если это число оставить прежним, потребуется сначала удалить установленное ранее приложение).
2) задать изображение для иконки приложения, добавив его в Default Icon.
3) если необходимо, в разделе Resolution and Presentation можно зафиксировать ориентацию приложения: горизонтальное (Landscape) или вертикальное (Portrait):
Ориентация приложения
4) в разделе Other Settings проверить правильность сформированного идентификатора в поле Package Name:
Это минимальный набор настроек, которые стоит отредактировать. После этого окно Project Settings можно закрыть.
Шаг 3. Перечислить в окне Build Settings сцены, которые должны попасть в сборку (build) проекта:
Если сцена всего одна, и она открыта в редакторе, можно просто нажать на кнопку Add Open Scenes.
Дополнительные сцены можно перетащить мышью из нужной папки окна Project.
Если в окне Scenes in Build указана не та сцена, её можно выделить мышью и удалить, нажав на клавишу Delete на клавиатуре компьютера.
Шаг 4. Нажать на кнопку Build в правом нижнем углу окна Build Settings, указать папку и имя собираемого файла в формате .apk и нажать на кнопку Сохранить (Save):
Собранный файл .apk переписать на смартфон, открыть его на смартфоне и установить приложение. После этого можно начать тестировать свою мобильную игру или приложение на смартфоне.
Читайте также: