Страница 1 из 2

Как правильно текстурировать low poly графику?

СообщениеДобавлено: 07 июн 2019, 15:33
MaxBorn
Доброго времени суток. Вопрос про текстурирование. Создаю мобильную игру графика в которой будет Low Poly и без сглаживания полигонов (с острыми углами). Текстуры будут однотонными, к примеру у персонажа 7 цветов, и на глаза один цвет, на кожу второй и т.д.
Какой вариант с точки зрения оптимизации лучше:
1. Делать развёртку модели. Использовать текстуру в, скажем, 5 на 5 пикселей, каждый пикель окрасить нужным цветом и располагать там соответствующие полигоны.
2. Разбить модель по материалам, и в движке создать нужное кол-во материалов соответствующего цвета и назначить их.

Еще есть вопрос про шейдер для мобильных устройств, насколько он быстрее стандартного?

Re: Как правильно текстурировать low poly графику?

СообщениеДобавлено: 07 июн 2019, 16:59
Tolking
красить вершины меша

Re: Как правильно текстурировать low poly графику?

СообщениеДобавлено: 07 июн 2019, 21:32
Woolf
Tolking писал(а):красить вершины меша

не шибко хорошее решение. Текстура лучше. Но не 5х5, конечно (что за странный размер такой?), хотя бы 64х64

Re: Как правильно текстурировать low poly графику?

СообщениеДобавлено: 08 июн 2019, 14:17
AngryCat
Я бы делал так: Создал бы перса ( по твое задумке, я так понял, что в нем будет полигонов 50 ). Создал бы материалы в юнити, со всеми возможными цветами твоей игры (12-15 шт.). И красил каждый объект.

Re: Как правильно текстурировать low poly графику?

СообщениеДобавлено: 09 июн 2019, 16:04
MaxBorn
Так я и сделал (сделал материалы), но я боюсь что это может быть не очень оптимизированно, поточму что мне скорее всего предется очень много материалов создавать. Я хочу настраивать не только цвет, но и шероховатость (smoothness). Но все же решил что с развертками париться не буду, из-за них вроде бы как увеличивается число полигонов модели.. Да и с материалами проще будет и быстрее работать.

Полигонов у меня побольше 50-ти) вот что вышло:
https://yadi.sk/i/QAR-UZ-9hMI1fg

Re: Как правильно текстурировать low poly графику?

СообщениеДобавлено: 09 июн 2019, 16:10
MaxBorn
Woolf писал(а):
Tolking писал(а):красить вершины меша

не шибко хорошее решение. Текстура лучше. Но не 5х5, конечно (что за странный размер такой?), хотя бы 64х64

Если мне нужно всего 10 цветов, то может 5 на 5 это нормально. Это конечно странный способ, но мне кажется, что то, что нужно использовать этолонные разрешения типо как 64x 128x 512x.. это миф) какая впринципе разница, а текстура легче будет гораздо

Re: Как правильно текстурировать low poly графику?

СообщениеДобавлено: 09 июн 2019, 16:48
Woolf
MaxBorn писал(а):
Woolf писал(а):
Tolking писал(а):красить вершины меша

не шибко хорошее решение. Текстура лучше. Но не 5х5, конечно (что за странный размер такой?), хотя бы 64х64

Если мне нужно всего 10 цветов, то может 5 на 5 это нормально. Это конечно странный способ, но мне кажется, что то, что нужно использовать этолонные разрешения типо как 64x 128x 512x.. это миф) какая впринципе разница, а текстура легче будет гораздо


Первое - 5х5 это ни разу не нормально, ибо это NPOT. Текстуры должны быть кратны степени двойки, т.е. либо 4х4, либо 8х8, либо 16х16 и так далее.
это миф

Не миф. Это совершенно обоснованное на железном уровне решение. В любом случае, ваша текстура 5х5 сначала будет увеличена до 8х8, а лишь затем использована. Почему бы сразу не сделать 8х8 ?


Второе - про мипмапы не забывайте, такая маленькая текстура будет сразу же превращена в невнятное бурое пятно. В идеале, разрешение текстуры нужно выбирать таким, чтобы при максимальном приближении к модели, текстель был равен пикселю по размерам.

Re: Как правильно текстурировать low poly графику?

СообщениеДобавлено: 09 июн 2019, 20:32
Tolking
Все эти проблемы решаются покраской меша...

Re: Как правильно текстурировать low poly графику?

СообщениеДобавлено: 10 июн 2019, 02:22
Woolf
Tolking писал(а):Все эти проблемы решаются покраской меша...


Чисто ради интереса, как вы покраской меша сделаете снежную шапку на горе?
Изображение
Отдельным мешем?

Re: Как правильно текстурировать low poly графику?

СообщениеДобавлено: 10 июн 2019, 03:19
waruiyume
Я отвечу, а вы взамен покажите как такую чёткую границу, как на вашей картинке, сделать текстурой.

Re: Как правильно текстурировать low poly графику?

СообщениеДобавлено: 10 июн 2019, 09:45
Tolking
Woolf писал(а):
Tolking писал(а):Все эти проблемы решаются покраской меша...


Чисто ради интереса, как вы покраской меша сделаете снежную шапку на горе?
Изображение
Отдельным мешем?


А в чем проблема? Вот если бы гора была сглаженой, то я бы сказал что на границе нужно задублировать вертексы задать им одинаковую нормаль, и покрасить в разные цвета... А так просто полигоны красишь в разные цвета и все...

Re: Как правильно текстурировать low poly графику?

СообщениеДобавлено: 10 июн 2019, 13:59
Woolf
Я отвечу, а вы взамен покажите как такую чёткую границу, как на вашей картинке, сделать текстурой.

Как я и предполагал, отдельным мешем ) Ничо, что это новые DC, новые материалы для каждого из мешей? В этом случае и текстурировать ничего не нужно, просто цвет задай материалу, да и делов-то.. По вашей технологии вот для таких персонажей потребуется, как минимум, 6 мешей и 6 материалов для каждого. Если сделать как положено, текстурой - то по одному.

Изображение


А так просто полигоны красишь в разные цвета и все...

на границе полигонов с разными цветами будет идти интерполяция цвета от вершины к вершине, к примеру, в случае с горой, от коричневого к белому. Четкой границы не получится. Для получения четкой границы надо либо резать на отдельные меши с разными материалами, либо использовать довольно большую текстуру. Вертексная покраска она такая.. Не очень функциональная.

Re: Как правильно текстурировать low poly графику?

СообщениеДобавлено: 10 июн 2019, 14:24
Tolking
На границе полигонов с разными цветами будет идти интерполяция цвета от вершины к вершине если полигоны используют одни и теже вертексы для смежных граней, что делается для для автоматического расчета нормалей у сглаженого меша. Если меш не сглаженный то у каждого полигона свой набор вертексов - будет четкая граница... Один материал на весь мир...

P.S. У сглаженного меша тоже может быть на каждый полигон свой набор вертексов со специально рассчитанными нормалями, тогда после пересчета нормалей в Юнити гладкая поверхность станет ребристой..

Re: Как правильно текстурировать low poly графику?

СообщениеДобавлено: 10 июн 2019, 15:01
Woolf
если полигоны используют одни и теже вертексы для смежных граней

т.е. всегда, если не начинать плясать с бубном и собственным ипортёром.

Если меш не сглаженный то у каждого полигона свой набор вертексов

Да нифига подобного. У несглаженного полигона одна нормаль, перпендикулярная плоскости полигона. А у сглаженного - одна нормаль на вершину, а не на полигон. Вот и вся разница. Посмотрите, как это в FBO задаётся буферами.

Нет, так-то вы правы, если задавать меш, не как связанную модель, а как суп из независимых полигонов, каждый со своей тройкой вершин, то ваша задумка с покраской будет работать. Только вот как это сделать в юнити простыми методами (без написания собственного импортёра), я не знаю. В OGL бы сделал без проблем.

Re: Как правильно текстурировать low poly графику?

СообщениеДобавлено: 10 июн 2019, 19:20
waruiyume
Вы как всегда, в своём репертуаре, продолжаете доказывать чушь даже после предоставления очевидных ооказательств обратного.
Покажите мне на этой модельке несколько отдельных мешей, материалов или может нестандартный импортер.
https://yadi.sk/d/WLcI2GD1FDXzQA
Изображение