Показать сообщение отдельно
Старый 04.06.2012, 00:13   #48
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Вопросы по XNA.

Тут имеется ввиду то, что в режиме Immediate спрайты выводятся сразу, а не при вызове метода End. Смысл в том, что в этом режиме будет столько вызовов рисования, сколько вызовов Draw. А в других режимах вывод графики будет отсортирован и выведен за меньшее число DIP'ов. В приведенном случае может быть всего один DIP, т.е. текстура всего одна. Но есть один минус сортировок не в "ручную" - вывод графики может быть не в том порядке, в котором был вызов Draw. Например если на экране рисовались две картинки чередуясь, то при сортировке могут сначала вывестись все вызовы первой картинки, потом все вызовы второй, что будет не правильно, если надо было вывести картинки чередуясь. Поэтому выбирать тот или иной режим надо от ситуации. Чаще лучше разделить вывод графики на экран на слои, чтобы добиться высокой производительности. Так же снизить число DIP'ов можно используя атласы, когда рисуются части одной и той же текстуры, но текстура например всего одна.
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Эти 4 пользователя(ей) сказали Спасибо pax за это полезное сообщение:
Dream (04.06.2012), Nikich (04.06.2012), Randomize (05.06.2012), St_AnGer (05.06.2012)