![]() |
Ответ: Blitz3D и работа с опперативной памятью
Цитата:
Цитата:
|
Ответ: Blitz3D и работа с опперативной памятью
Цитата:
Возможно нвидиа более терпима к этому, а у интела несварение :-) |
Ответ: Blitz3D и работа с опперативной памятью
кстати, раз проверка дистанции юзается только для сравнения с каким-то значением, возможно есть смысл юзать не реал дистанцию, а её аналог без sqrt внутри - т.е. тупо dot(v1-v2, v1-v2), т.е. тупо
diffX# = v1x - v2x difY# = v1y - v2y diffZ# = v1z - v2z sqrDist# = diffX*diffX + diffY*diffY + diffZ*diffZ значения, с которыми сравниваем (200, 400), надо соответственно будет возвести в квадрат. возможно медленность блицевской математики сделает это ещё медленее, чем версию с sqrt, но надеюсь что нет о_0. а ещё можно юзать иерархию объектов (если ещё не юзается) и проверять дистанцию не до каждой модели, а сначала до крайне маленького числа парентов, далее если они прошли проверку - проверяем их чайлды и т. д. проверка в данном случае должна быть не дистанции от центра, а с учётом заранее посчитанных баундинг сфер например (до ближайшей точки на сфере). если и правда дистанции дофига жрут, значит объектов дофига, значит иерархически их структурировать это первое что надо сделать. |
Ответ: Blitz3D и работа с опперативной памятью
Цитата:
|
Ответ: Blitz3D и работа с опперативной памятью
Подвел размеры всех текстур под квадратные и сжал до степени двойки. Можете протестировать? https://dl.dropboxusercontent.com/u/..._with_media.7z
|
Ответ: Blitz3D и работа с опперативной памятью
Цитата:
![]() |
Ответ: Blitz3D и работа с опперативной памятью
Кинь это в папку с игрой.
|
Ответ: Blitz3D и работа с опперативной памятью
Arton, ну что там?
|
Ответ: Blitz3D и работа с опперативной памятью
На Nvidia всё нормально FPS 60. А вот на Intel даже запустить не удалось - "Unable to set graphics mode".
Интересно демка выглядит, побегать где есть, заходить в дома можно. :super: Ссылка на дропбокс дохлая. Альтернатива, но там с примерами BlitzWinApi. |
Ответ: Blitz3D и работа с опперативной памятью
Цитата:
|
Ответ: Blitz3D и работа с опперативной памятью
Цитата:
Тебе действительно так необходим интел? |
Ответ: Blitz3D и работа с опперативной памятью
Цитата:
|
Ответ: Blitz3D и работа с опперативной памятью
Цитата:
Всё работало только в такой связке: Код:
If CountGfxDrivers()>1 |
Ответ: Blitz3D и работа с опперативной памятью
Arton, скидываю исходник.
|
Ответ: Blitz3D и работа с опперативной памятью
Судя по медии, там полно отдельных объектов (например, каждая доска забора).
Каждый объект — отдельный вызов рендера буфера. Много таких вызовов = просадка FPS. Интегрированные видяшки Интелов сделаны из говна и потому захлёбываются от этого. Решения такие: либо не грузить меш как LoadAnimMesh, а грузить как LoadMesh (тогда Блиц объединит всё сам). Либо, если LoadAnimMesh нужен позарез, объединить всё самому в Максе. Нашёл темку на этот счёт: http://forum.boolean.name/showthread.php?t=152 Но, к сожалению, аттач из первого поста пропал за древностию лет. Надеюсь, у кого-то он остался. Не ругайте, пожалуйста, Блиц. Он же послушный. Вы ему сказали рендерить дохрена объектов — он и рендерит. А тормозит это — таковы принципы работы графического ускорения, это везде так. Другое дело, что все это пытаются обходить, "напролом" никто не делает. |
Часовой пояс GMT +4, время: 17:50. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot