Русские Блоги
[Sprite Atlas] Супер подробное руководство по новой системе атласов Unity SpriteAtlas
Значение упаковки атласа:
Недостатки Sprite Packer (старая версия):
Старая версия Sprite Packer имеет множество недостатков в производительности и простоте использования по сравнению со Sprite Atlas, таких как невозможность изменять разное качество различных атласов и невозможность получения изображений в атласах.
Sprite Packer может ссылаться на то, что я написалДругая статья
Как использовать новую версию Sprite Atlas:
1. Edit-Project Setting-Editor / SpritePacker open settings (установлен на Enabled For Builds или Always Enabled, второй и третий элементы используются SpritePacker)
3. Знакомство с панелью свойств
4. Добавьте изображения в галерею.
Вы можете назначать в Sprite Atlas папки, текстуры или спрайты. Вся папка может быть назначена ресурсам Sprite Atlas, и все текстуры (включая подпапки) в папке будут упакованы. При назначении единой текстуры будут включены все определенные спрайты. Также можно назначить атласу один спрайт, при этом другие спрайты с той же текстурой не будут учитываться.
Чтобы упаковать изображения в атлас, выберите активы Атласа и добавьте их, щелкнув знак «+», чтобы добавить их в список, или перетащите их из окна «Проект» в область списка. Вы можете добавлять в атлас папки, текстуры и спрайты.
Установите необходимые настройки для созданного атласа. При изменении настроек этот атлас всегда будет помечен как измененный, и на этапе упаковки он будет снова упакован.
Вы можете предварительно просмотреть упакованный атлас, нажав кнопку «Предварительный просмотр упаковки» в инспекторе. Это запустит упаковку этого атласа. Как только упаковка будет завершена, текстура появится в разделе предварительного просмотра.
Перед входом в «Play Mode» все атласы с измененными настройками будут перепакованы (если вы выберете «Всегда включен «)。
5. Переключение ресурсов HD / низкого разрешения.
Создайте новый Атлас Спрайтов, затем установите Тип в Вариант, установите связанный Главный Атлас и измените Масштаб, чтобы изменить разрешение.
Используйте код для доступа к интерфейсу Sprite Atlas
1. Создайте Атлас спрайтов
2. Добавьте изображения в Sprite Atlas.
3. Измените настройки атласа Sprite Atlas по умолчанию (максимальный размер текстуры, формат, сжатие).
4. Измените настройки атласа для разных платформ.
Имена параметров, поддерживаемые spriteAtlas.GetPlatformSettings: «Автономный», «Интернет», «iPhone», «Android», «WebGL», «Приложения Магазина Windows», «PS4», «PSM», «XboxOne», «Nintendo 3DS». и «tvOS»
5. Дополнительные API можно найти вОфициальный сайт API
Интеллектуальная рекомендация
Tree Дерево отрезков линии】 COGS 2632
Ссылочный блогАвтор:dreaming__ldxИсточник: CSDN Портал последовательности операций 【Название описания】 Последовательность длины n, вес порядкового номера в начале равен 0, есть m операций Поддерживают.
PAT-A-1046 кратчайшее расстояние [префикс и]
The task is really simple: given N exits on a highway which forms a simple cycle, you are supposed to tell the shortest distance between any pair of exits. Input Specification: Each input fi.
Как нарисовать несколько линий ROC на одном графике?
Класс коллекции JAVA
Резюме JAVA-коллекции Один, коллекция 1. Характеристики коллекций: коллекции используются только для хранения объектов, длина коллекции является переменной, и в коллекции могут храниться объекты разны.
MySQL репликация главный-подчиненный + переключатель главный-подчиненный
MySQL репликация главный-подчиненный + переключатель главный-подчиненный 05 января 2018 10:46:35Протрите протирать прыжок Количество просмотров: 5183Более Персональная категория:база данныхЭксплуатаци.
Текстурный атлас, на сколько актуален?
Сабж исключительно для себя, с целью разобраться надо оно мне или нет.
Так случилось, что я им не пользовался.
Сначала я биндил текстуры по одной, а потом резко перешел на ssbo c биндлесами. Но у биндлесов проблемы с совместимостью.
Собственно вопрос, стоит ли отказаться от биндлесов и перейти на текстурные атласы?
vindast
> Собственно вопрос, стоит ли отказаться от биндлесов и перейти на текстурные атласы?
Атласы как бы для одного, биндлесы для другого. Там и там свои преимущества и недостатки. Поэтому вопрос про «перейти с одного на другое» как-то абсурден. Это как спросить, стоит ли переходить с автомобиля на велосипед.
> Если стоит перейти на текстурный атлас, то с чего лучше начать ознакомление с
> темой (динамический вариант, интересно только как менеджерить пространство
> листов атласа)?
Вот, держи:
https://blackpawn.com/texts/lightmaps/default.html
vindast
> Собственно вопрос, стоит ли отказаться от биндлесов и перейти на текстурные
> атласы
Как бы текстурные атласы незаменимы, если конечно у тебя не все текстуры одного размера 1024×1024 или навроде того.
MikeNew
> если конечно у тебя не все текстуры одного размера 1024×1024 или навроде того.
Ну дык, если вариантов разрешений не так много, то вполне можно заменить на несколько текстурных массивов)
MrShoor
> Тайловость либо на шейдере, либо никак.
Вери хард шейдер вариант: переимплементация фильтрации (включая анизо) на шейдере (выйдет медленнее обычной).
Приемлемый шейдер вариант: всем текстурам добавляются края с тайлингом их в несколько пикселей, UV читают внутри, фильтрация берёт с краёв. Шейдер делает frac UV и читает через tex2Dgrad, чтобы не было швов. Для этого также придётся хранить не просто UV текстуры но и начало/размер тайла в атласе.
Приемлемый нешейдер вариант: геометрия автоматически режется дополнительными рёбрами на краях всех тайлов, в итоге ни в каком месте UV не выходят за 0-1 диапазон. Используются дополнительные краешки как в варианте выше (такая оптимизация была когда-то проведена в старом Faded прототипе).
MrShoor
> Тайловость либо на шейдере, либо никак.
Как поспал так сразу понял что f2UV = frac(f2ModelUV) * f2ScaleUV + f2OffsetUV;
MrShoor
> Атласы как бы для одного, биндлесы для другого. Там и там свои преимущества и
> недостатки. Поэтому вопрос про «перейти с одного на другое» как-то абсурден.
> Это как спросить, стоит ли переходить с автомобиля на велосипед.
Я сейчас понял что этот атлас мне не нужОн.
Я тут с биндлесами столкнулся с проблемой. Мне нужна догрузка лодов текстур с диска, и соответственно, нужно ограничить выборку mip уровней, пока все они не загружены.
Отоспался и понял, что атлас такую проблему не решит. Тк такой код ограничит выборку из всех текстур в атласе, а не только в не загруженной.
Ввидимо придется любоваться черными текстурами для ближних лодов некоторое время пока они не загрузятся.
MikeNew
> Как бы текстурные атласы незаменимы, если конечно у тебя не все текстуры одного
> размера 1024×1024 или навроде того.
Если в атласе текстуры все одного размера, то менеджерить его память элементарно. Как по мне логичное ограничение, 1024 на 1024 сейчас самое то. Да и можно ввести атлас для текстур разного размера.
Посмотри sparse textures. Можно создать sparse texture_array под каждый размер текстуры и делать слои (или даже отдельные ее части, т.н. «страницы») резидентными/не резидентными в зависимости от того была ли загружена текстура (или ее часть).
0xc0de
Не нагуглил ничего полезного по этой штуке.
Mr F
> Вери хард шейдер вариант: переимплементация фильтрации (включая анизо) на
> шейдере (выйдет медленнее обычной).
Анизо на шейдере? Можно пример?
barnes
> Можно пример?
у меня нету, я просто имел в виду, что если не учитывать в атласе доп краешки для хардварной фильтрации, то придётся писать свою фильтрацию (и лучше до такого не доводить)
vindast
> Не нагуглил ничего полезного по этой штуке.
Гугли AZDO. Там это есть.
Mr F
> и лучше до такого не доводить
Я пробовал фильтр ланчоса, но без мипов, на лоурезе выглядело интереснее линейного фильтра. А по скольку картинка была 320 на 240 гдето, особого фреймдропа и небыло
vindast
> а потом резко перешел на ssbo c биндлесами
резко сделай рендер с amd intel
innuendo
Ага. Мой двиг с амд резко отказался работать после полного перевода на биндлессы. Ошибка в гл драйвере. Хотя, по первости было все ок, когда я только часть рендера на них перевёл. Щас амд карты нет и отладить не могу. А на интел мне плевать.
barnes
у меня rx480, полет нормальный. Работает и на некоторых более старых моделях.
Что такое текстурный атлас
Докуметация | Cтарт | Статьи | Форум | Лента | Вход |
---|
Оптимизация: Текстурный атлас
Пример Кода
Первичные и вторичные карты
Вспомогательные методы, которые работают с объектами Geometry, автоматически учитывают DiffuseMap (для материалов на основе Lighting.j3md ) или ColorMap (для материалов на основе Unshaded.j3md ), главная карт, также обрабатывает NormalMap и SpecularMap как вторичные карты, если они существуют В Геометрии.
Вы ссылаетесь на текстуры по их ключевому имени, это их «идентификатор(id)». Для каждой текстуры атлас сохраняет свое местоположение. Текстура с существующим ключевым именем никогда не добавляется в атлас более одного раза. Вы можете получить доступ к информации для каждой текстуры или геометрии с помощью вспомогательных методов.
Примеры использования: Объединение геометрий
Используйте makeAtlasBatch, чтобы превратить несколько геометрий, загружаемых из j3o файла, в одну геометрию:
Создание текстурного атласа и изменение текстурных координат одной геометрии:
Переведено для jmonkeyengine.ru, оригинал
Автор перевода: Andry
Добавить комментарий Отменить ответ
Для отправки комментария вам необходимо авторизоваться.
Текстурный атлас
Например, в играх с tile-графикой можно получить хороший выигрыш в скорости вывода картинки.
Атласы могут содержать как под-текстуры одинаковых размеров, так и под-текстуры отличающихся размеров (обычно, являющихся степенью двойки). Для составления атласов используются как программы-генераторы, так и ручное составление. При использовании MIP-текстурирования необходимо предусмотреть, что под-текстуры должны быть расставлены таким образом, чтобы не возникало ситуации, когда одна из них «залезает» на другую.
Связанные понятия
В системах цифрового представления цвета, управление цветом — это контролируемое преобразование между разными моделями представления цвета различных устройств, таких как сканеры, цифровые фото- и видеокамеры, мониторы, экраны телевизоров, принтеры и т. д.
Табличная верстка — условное название метода верстки веб-документов, при котором в качестве структурной основы для расположения текстовых и графических элементов документа используются таблицы (то есть HTML-тег