![]() |
Модераторы: Rickert |
![]() ![]() ![]() |
|
EgoBrain |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 537 Регистрация: 23.3.2008 Где: Комната Репутация: 1 Всего: 2 |
Вопрос по теории: если объекту имеющему много материалов/текстур (meshMaterials[]/meshTextures[] - хранятся в массивах) задать каждой текстуре один и тот же файл (некоторый jpg)
Вообще откуда взялся такой вопрос, сегодня заметил что если такому объекту с множеством материалов задать весомую текстуру (чуть меньше метра), то сцена "тупить" начинает, а потом понял что это на самом деле в совокупности с х6 сглаживанием тупило, убрал сглаживание - не тупит. Вообщето сразу оговорюсь что моя прога с множеством объектов с текстурами не тупит при 6х и 1600х1200 (объекты по нескольку мегайбайт весят), но когда добавляю объект скажем с 20 текстурами, то сразу тупить начинает со сглаживанием... |
|||
|
||||
ShellRaiser |
|
|||
![]() еще чуть и закоммичу ![]() Профиль Группа: Участник Сообщений: 156 Регистрация: 20.7.2007 Где: Белaрусь, Гродно Репутация: 1 Всего: 1 |
ууу...я как понимаю ты транжириш память текстурами "налево-направо"?
просто не загружай заново текстуры, если такие текстуры где-то уже есть то просто используй их...экономия;) тоже самое и с моделями...если у тебя два одинаковых динозавра на сцене то не надо грузить каждому модель...достаточно загрузить одну модель и два раза отрендрить;) |
|||
|
||||
EgoBrain |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 537 Регистрация: 23.3.2008 Где: Комната Репутация: 1 Всего: 2 |
По поводу моделей я не подумал, а вот по части текстур то же такая идея была - проверять в массиве текстур, если есть одни и те же, то оставить одну, остальные обнулить, а при рендеренге просто один о тот же элемент массива текстур отображать... А вообще я пока не планировал браться за оптимизацию проекта брать, так как это дипломка, хотя там работы оптимизатору непочатый край. |
|||
|
||||
ShellRaiser |
|
|||
![]() еще чуть и закоммичу ![]() Профиль Группа: Участник Сообщений: 156 Регистрация: 20.7.2007 Где: Белaрусь, Гродно Репутация: 1 Всего: 1 |
EgoBrain,
ненене дэвид блэйн=) оптимизация такого рода должна быть сразу включенна, у меня в дипломмной текстуры и модели грузились в одном экземпляре ты экономиш на памяти как оперативной так и видюхи. это всё очень просто делается, ты можеш загнать в мап массив текстур которые тебе надо под примерным ключём: map.put("monsterA_texture_head", new Texture("data\texture\monsterA\texture_head.png")); а далее просто дёргаеш когда при рендре биндиш: map.get("monsterA_texture_head"); получиш объект текстуры, и спокойно его забиндиш. но на самом деле ты не будеш юзать прямы названия) они у тебя далее по двигу динамически будут генериться. это пример кода на java но думаю на плюсах ты найдёш в стл кажись похожую реализацию. Добавлено через 4 минуты и 46 секунд
ну...гхм....мне сильно пришлось браться в дипломке за оптимизацию....так как на политеховский компах стояли GeForce 2 и были жуткие тормоза, такак яч неучёл с самого начала и сделал приоритет на рендер.... |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Программирование игр, графики и искуственного интеллекта" | |
|
НА ЗЛОБУ ДНЯ: Дорогие посетители, прошу обратить внимание что новые темы касающиеся новых вопросов создаются кнопкой "Новая тема" а не "Ответить"! Любые оффтопиковые вопросы, заданные в текущих тематических темах будут удалены а их авторы, при рецедиве, забанены.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rickert. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Программирование игр, графики и искусственного интеллекта | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |