|
Модераторы: Rickert, Alexeis, BorisVorontsov |
|
glDevAleksey001 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 7.8.2014 Репутация: нет Всего: нет |
Прошу помощи.
Есть вот такой дисплей лист RenderList[0]=1; GL.Translate(Position.X, Position.Y, Position.Z); RenderList[1]=2;<-- Вот этот элемент нужно подвергнуть трансформации НЕ НАРУШАЯ ПОСЛЕДОВАТЕЛЬНОСТИ рендеринга RenderList[2]=3; GL.CallLists(RenderList.Count, ListNameType.Int, RenderList.ToArray()); Новая перекомпиляция не подходит забирает много фпс. Это сообщение отредактировал(а) glDevAleksey001 - 15.3.2015, 17:08 |
|||
|
||||
tzirechnoy |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1173 Регистрация: 30.1.2009 Репутация: 1 Всего: 16 |
Вообще -- если речь идёт об оптимизацыи (а не о том, чтобы "просто работало") -- то, очевидно, что всё зависит от реального кода и во что там обработка упирается.
Поскольку реального кода нет и дажэ проблема не показана -- то сложно сказать что-то конкретное. Самый банальный вариант, очевидно,
В списке 2 матрица не должна сбрасываться. Да, параметрических glList у нас в общем нет. Если кажэтся, что это слишком много дроуколлов -- то можно попытаться сделать что-то вроде предварительного glPushMatrix, затем в списках её доставать через glPopMatrix. Впрочем, учитывая размер matrix stack (16 что-ли) -- выигрыш будет весьма умеренным. Ещё, если перекомпиляцыя списка 2 действительно тормозит всё (проверьте, можэт это и не так) -- то можно попытаться этот glTranslate вынести в отдельный display list, который маленький и перекомпиляцыя которого не будет проблемой. |
|||
|
||||
Вы можете найти полезным что... | |
|
|
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Мультимедия, OpenGL/DirectX | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |