Тема: Sigel
Показать сообщение отдельно
Старый 05.03.2009, 01:07   #475
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
Ответ: Sigel

К примеру, какие функции отвечяют за смеуну стейтов?
ну наприер:
somenetity->BindShader(someshader);
сменили шейдер - сменился стейт.
также его меняет переключение бленда с непрозрачного на прозрачный и обратно.
смена текстуры.
смена source (грубо говоря - геометрии)

так вот - тупо привязываться нельзя. ибо:пользователь может КАЖДЫЙ кадр менять какой то стейт (например видеотекстура, или там шейдер от лода зависит). И что теперь? каждый кадр сортировать - ну уж нет. сортировка куда дороже дельты меду рендерем неотсортированого и отсортированого списка.

надо привязываться как то с умом. в принципе можно делать сортировку, скажем не чаще чем раз в 10 секунд.
(Offline)
 
Ответить с цитированием