Извлечение текстур из атласа

Форум для самых маленьких, а так же тех, кому недосуг читать справку самостоятельно.

Re: Извлечение текстур из атласа

Сообщение LordWerewolf 30 мар 2017, 12:18

LordWerewolf писал(а):
DbIMok писал(а):Тестовый примерчик
Изображение


Что-то не выходит у меня каменный цветок... ( выдает ошибку: "Mesh.uv is out of bounds. The supplied array needs to be the same size as the Mesh.vertices array.")
Как исправить? Что ни так?

вот что сейчас получается:
Изображение

слева -
модель Изображение + текстура Изображение

а справа - модель Изображение + текстура Изображение + Ваш код
LordWerewolf
UNIт
 
Сообщения: 81
Зарегистрирован: 04 апр 2016, 13:20

Re: Извлечение текстур из атласа

Сообщение DbIMok 30 мар 2017, 12:47

Код расчитан на простой конкретный объект quad. Если объект сложный, то его uv координаты устанавливаются в 3d редакторе сразу из атласа. Либо, если он был затекстурен отдельной текстуркой, которая затем помещена в атлас, одновременно должны быть пересчитаны и координаты на модели. Т.е. вам нужно или переделать все правильно или автоматически пересчитать uv для каждого вертекса модели из расчета, что 0,0 теперь равно 0.25,0.75 а 1,1 равно 0.5,1
правильный вопрос - половина ответа. учитесь формулировать вопросы понятно.
Новости > _Telegram чат @unity3d_ru (11.6k/4.8k online) > _Telegram канал @unity_news (4.6k подписчиков) > Телеграм тема > "Спасибо"
Аватара пользователя
DbIMok
Адепт
 
Сообщения: 6372
Зарегистрирован: 31 июл 2009, 14:05

Re: Извлечение текстур из атласа

Сообщение LordWerewolf 30 мар 2017, 14:38

DbIMok писал(а):Код расчитан на простой конкретный объект quad. Если объект сложный, то его uv координаты устанавливаются в 3d редакторе сразу из атласа. Либо, если он был затекстурен отдельной текстуркой, которая затем помещена в атлас, одновременно должны быть пересчитаны и координаты на модели. Т.е. вам нужно или переделать все правильно или автоматически пересчитать uv для каждого вертекса модели из расчета, что 0,0 теперь равно 0.25,0.75 а 1,1 равно 0.5,1


Я Вас правильно понял: нужно в 3д редакторе сделать развертку сразу на атлас а не на отдельную текстуру? Блин, не думал, что работа с атласом текстур такая замороченная.
А с помощью чего пересчитываются новые координаты в Юньке?

Вообще это того стоит, атласы использовать? У меня проект под WebGL, а там есть строгое ограничение памяти. Стоит ли загружать весь атлас с 16 текстурами в память, если из 16 будет использованно лишь 1-2 ?
LordWerewolf
UNIт
 
Сообщения: 81
Зарегистрирован: 04 апр 2016, 13:20

Re: Извлечение текстур из атласа

Сообщение DbIMok 30 мар 2017, 15:48

LordWerewolf писал(а):А с помощью чего пересчитываются новые координаты в Юньке?

с помощью того инструмента, что делает атлас. либо вы можете сделать это скриптом сами, указав координаты текстуры в атласе
LordWerewolf писал(а):стоит, атласы использовать?

зависит от количества объектов с одинаковым материалом. если их несколько штук, то особой разницы нет. если десятки/сотни/тысячи то выигрыш может быть существенный
LordWerewolf писал(а):если из 16 будет использованно лишь 1-2 ?

не обязательно использовать 4х4, можно и 1х2
правильный вопрос - половина ответа. учитесь формулировать вопросы понятно.
Новости > _Telegram чат @unity3d_ru (11.6k/4.8k online) > _Telegram канал @unity_news (4.6k подписчиков) > Телеграм тема > "Спасибо"
Аватара пользователя
DbIMok
Адепт
 
Сообщения: 6372
Зарегистрирован: 31 июл 2009, 14:05

Re: Извлечение текстур из атласа

Сообщение LordWerewolf 30 мар 2017, 18:36

DbIMok писал(а):с помощью того инструмента, что делает атлас. либо вы можете сделать это скриптом сами, указав координаты текстуры в атласе

Так я и не врубился, как указывать координаты. Атлас в фотошопе собираю и не помню там таких инструментов ... ~x(
DbIMok писал(а):зависит от количества объектов с одинаковым материалом. если их несколько штук, то особой разницы нет. если десятки/сотни/тысячи то выигрыш может быть существенный

Как бы вы поступили в подобном примере? Возьмем конструктор лего. Он состоит из сотен а то и тысяч разных блоков. У каждого своя текстура. Тоесть сотни или тысячи материалов получается. И не известно что построит пользователь. Он может построить целый замок из тысячи одинаковых блоков, а может робота из сотен разных блоков. В первом случае атлас конечно выгоден, пара материалов с парой атласов на целый замок. А во втором выгода уже спорная... тоесть заранее не известно сколько и каких объектов будет на сцене.
LordWerewolf
UNIт
 
Сообщения: 81
Зарегистрирован: 04 апр 2016, 13:20

Re: Извлечение текстур из атласа

Сообщение MANMANA 31 мар 2017, 00:05

LordWerewolf писал(а):
DbIMok писал(а):с помощью того инструмента, что делает атлас. либо вы можете сделать это скриптом сами, указав координаты текстуры в атласе

Так я и не врубился, как указывать координаты. Атлас в фотошопе собираю и не помню там таких инструментов ... ~x(

Texture2D.PackTextures
Create and save a Atlas texture with scripting
...
_3dbuffer.com
MANMANA
UNIверсал
 
Сообщения: 475
Зарегистрирован: 31 июл 2014, 10:32
Откуда: Moscow
  • Сайт

Re: Извлечение текстур из атласа

Сообщение LordWerewolf 31 мар 2017, 09:49

MANMANA писал(а):
LordWerewolf писал(а):
DbIMok писал(а):с помощью того инструмента, что делает атлас. либо вы можете сделать это скриптом сами, указав координаты текстуры в атласе

Так я и не врубился, как указывать координаты. Атлас в фотошопе собираю и не помню там таких инструментов ... ~x(

Texture2D.PackTextures
Create and save a Atlas texture with scripting
...


Спасибо, очень кстати :)
LordWerewolf
UNIт
 
Сообщения: 81
Зарегистрирован: 04 апр 2016, 13:20

Re: Извлечение текстур из атласа

Сообщение DbIMok 31 мар 2017, 16:00

для пересчета моделей можно использовать что-то типа https://goo.gl/IXjLdb только забакапьте проект/модельки чтобы не попортить
правильный вопрос - половина ответа. учитесь формулировать вопросы понятно.
Новости > _Telegram чат @unity3d_ru (11.6k/4.8k online) > _Telegram канал @unity_news (4.6k подписчиков) > Телеграм тема > "Спасибо"
Аватара пользователя
DbIMok
Адепт
 
Сообщения: 6372
Зарегистрирован: 31 июл 2009, 14:05

Re: Извлечение текстур из атласа

Сообщение LordWerewolf 01 апр 2017, 12:43

DbIMok писал(а):для пересчета моделей можно использовать что-то типа https://goo.gl/IXjLdb только забакапьте проект/модельки чтобы не попортить


Как интересно... Спасибо, буду эксперементировать :ympeace:
LordWerewolf
UNIт
 
Сообщения: 81
Зарегистрирован: 04 апр 2016, 13:20

Пред.

Вернуться в Почемучка

Кто сейчас на конференции

Сейчас этот форум просматривают: GoGo.Ru [Bot], Google [Bot] и гости: 15