Unity позволяет вам установить уровень качества графики, на котором будет производится попытка рендеринга. В общем случае, высокое качество снижает частоту кадров, таким образом, иногда лучше не устанавливать наивысший уровень качества на мобильных устройствах или старом оборудовании, так как это будет отрицательно влиять на игровой процесс. Инспектор Quality Settings (в меню: Edit->Project Settings->Quality) используется для установки уровня качества для выбранных устройств в редакторе. Он разделен на две основные области: в верхней расположена следующая матрица:
Для быстрой ориентации в настройках качества, Unity позволяет вам назначать своим комбинациям настроек уникальные имена. Строки матрицы позволяют вам настроить какой уровень качества будет применён для той или иной платформы. Самая нижняя строчка матрицы не является уровнем качества как таковым, но она позволяет задать стандартный уровень качества для всех платформ (зелёный чекбокс в колонке отвечает за уровень выбранного качества для выбранной платформы). По-умолчанию вместе с Unity идёт 6 предустановленных наборов уровня качества, но вы также можете настраивать и сохранять свои наборы, используя кнопку, расположенную под матрицей. Чтобы удалить ненужный набор, можно воспользоваться значком корзины (расположенном в самой правой колонке).
Для редактирования уровня детализации, можете нажать на его названии под панелью настроек матрицы:
Параметры качества, которые вы можете установить для определенного уровня качества, следующие:
Свойство: | Функция: |
---|---|
Имя | Имя, которое будет присвоено этому уровню качества. |
Визуализация
Свойство: | Функция: |
---|---|
Pixel Light Count | Максимальное значение пиксельных источников света используемых при упреждающем рендеринге (Forward Rendering). |
Texture Quality | Позволяет вам выбрать, отображать ли текстуры в высоком разрешении или в среднем (низкое разрешение требует незначительного количества ресурсов). Варианты настроек следующие Full Res, Half Res, Quarter Res и Eighth Res. |
Анизотропные текстуры не используются. | This enables if and how anisotropic textures will be used. The options are Disabled, Per Texture and Forced On (ie, always enabled). |
###Сглаживание | Устанавливает уровень применяемого сглаживания. Варианты настроек следующие 2x, 4x and 8x мульти-сэмплинг. |
###Мягкие Частицы | Должно ли для частиц использоваться мягкое смешивание? |
Realtime Reflection Probes | Should reflection probes be updated during gameplay? |
Shadows:
Свойство: | Функция: |
---|---|
Shadows | This determines which type of shadows should be used. The available options are Hard and Soft Shadows, Hard Shadows Only and Disable Shadows. |
Shadow resolution | Тени могут быть отрендерены в нескольких разрешениях: Low, Medium, High и Very High. Чем выше разрешение, тем больше будет выполнено вычислений. |
Shadow Projection | Существует два метода для проецирования теней из направленных источников света. Плотное прилегание (Close Fit) рендерит тени высокого разрешения, но время от времени при движении камеры они могут слегка колебаться. Стабильное прилегание (Stable Fit) рендерит тени низкого разрешения, но они не колеблются при движении камеры. |
Shadow Cascades | Количество потоков теней может быть равно нулю, двум или четырём. Большее количество потоков означает и лучшее качество создаваемых теней, но также это и большее количество вычислений (для получения дальнейшей информации, просмотрите страницу Направленные тени (Directional Shadows)). |
Shadow Distance | Максимальное расстояние от камеры на котором тени будут видны. Тени расположенные дальше рендериться не будут. |
Shadow Near Plane Offset | Offset shadow near plane to account for large triangles being distorted by shadow pancaking. |
Other:
Свойство: | Функция: |
---|---|
Blend Weights | Количество костей, которые могут влиять на отдельно взятую вершину в процессе анимации. Доступными значениями являются: одна, две или четыре кости. |
VSync Count | Рендеринг может быть синхронизирован с частотой обновлений устройства вывода (монитора) с целью избежания артефактов “разрывов” (смотрите ниже). Вы можете выбрать синхронизацию с каждой вертикальной пустотой (VBlank), с каждой второй вертикальной пустотой или же вовсе отключить синхронизацию. |
LOD Bias | Уровень LOD выбирается исходя из размера объекта, занимаемого им на экране. Когда размер находится между двумя уровнями LOD, выбор может быть сделан как в сторону более детализированной, менее детализированной модели, так и в сторону более детализированной из двух имеющихся моделей. Значение может изменяться от 0 до 1 - чем ближе значение к 0, тем более вероятно что будет использоваться менее детализированная модель. |
##Максимальный уровень LOD | Наибольший LOD, который будет использоваться в игре. Для получения дополнительной информации ознакомьтесь с примечанием ниже. |
Particle Raycast Budget | Максимальное количество излучаемых лучей, используемых для аппроксимации столкновений систем частиц (те с качеством Medium или Low). Просмотрите модуль столкновений системы частиц. |
Async Upload Time Slice | The amount of CPU time in milliseconds per frame to spend uploading buffered textures to the GPU. See Async Texture Upload. |
Async Upload Buffer Size | The size in MB for the Async Upload buffer. See Async Texture Upload. |
Models which have a LOD below the MaximumLOD level will not be used and omitted from the build (which will save storage and memory space). Unity will use the smallest LOD value from all the MaximumLOD values linked with the quality settings for the target platform. If an LOD level is included then models from that LODGroup will be included in the build and always loaded at runtime for that LODGroup, regardless of the quality setting being used. As an example, if LOD level 0 is used in any quality setting then all the LOD levels will be included in the build and all the referenced models loaded at runtime.
Изображение на дисплее устройства обновляется не постоянно, а через некоторый постоянный интервал времени, подобно тому как происходит обновление кадра в Unity. Тем не менее, обновления Unity не обязательно синхронизированы с таковыми дисплея, таким образом, может возникнуть ситуация, когда Unity отправил на дисплей новый кадр, пока предыдущий все еще рендерится. Это приводит к визуальному артефакту, называемому “разрывом кадра” в том месте экрана, где произошла смена кадра.
Unity можно настроить на переключение кадров лишь в том промежутке времени, когда устройство вывода изображения (монитор) не обновляется, в момент так называемой “вертикальной пустоты” (“vertical blank”). Опция VSync настроек качества (Quality Settings) синхронизирует переключение кадров с вертикальной пустотой устройства или опционально с любой другой вертикальной пустотой. Последнее будет полезно, если игре для рендеринга одного кадра может потребоваться более одного устройства.
Сглаживание (анти алиасинг) улучшает отображение граней полигонов, путём сглаживания их “зазубренности”. Однако это выливается в нагрузке на видеокарту и использование большего количества её памяти (нагрузка на центральный процессор отсутствует). Уровень сглаживания подразумевает то, насколько сглажены грани полигонов (и сколько это требует памяти).
However, built-in hardware anti-aliasing does not work with Deferred Shading or HDR rendering; for these cases you’ll need to use Antialiasing Image Effect.
Мягкие частицы исчезают в местах пересечения с геометрией сцены. Выглядит это конечно весьма привлекательно, однако требует для себя больше вычислительных ресурсов (более комплексные пиксельные шейдеры), и работает только на платформах, поддерживающих (текстуры глубины (depth textures))(SL-DepthTextures). Более того, вам нужно использовать проход рендеринга под названиемотложенное освещение, или произвести из скрипта камерный рендеринг текстур глубины.