Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Но если все бары пихать в специальный канвас — то они за один дк отрисуются (одинаковые, конечно), но ничто не помешает делать произвольные префабы для баров (подложка там, изменение цвета при разных значениях и т. п.), чего трудно добится в шейдере. Есть сравнение шейдера с 50-100 барами и одного канваса со столькими же одинаковыми барами?
Ну и в случае канваса легко слегка дописать контроллер для добавления стака баров друг над другом на одном объекте (что уже вызывает сложность в случае шейдера).
Если я еще хочу проценты выводить цифрой над полоской или на полоске, чем его лучше делать, чтобы работал инстансинг?
Фрагментный шейдер не мог быть проще, потому что вся работа уже выполнена:
return colors[int(clamp(floor(i.uv.x*2.0f),0,1))];
Unity: отрисовываем множество полосок здоровья за один drawcall