| Author |
Message |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/06/2008 17:49:41
|
Сергей Антонов
Joined: 03/06/2008 11:40:04
Messages: 59
Offline
|
Привет! Вот сбацал примерчик.
http://fastlibs.com/temp/test/Earth.html
Но там не одна сцена как кажется!
Если все запихнуть в одну сцену и двигать самолеты... То очень медллено будет.
Я сделал для каждого объекта свою сцену и свою камеру, и камерой "летаю" вокруг объектов, создается ощущение что объекты летают, а я на месте. А вот скорость - шустрее не бывает!
Получается если сделать для каждого объекта свое бсп дерево и сортировать эти объекты по глубине с учетом их радиусов, ну и естествено условие того что они не пересекаются...
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/06/2008 17:55:12
|
makc
Joined: 02/06/2008 12:19:17
Messages: 786
Offline
|
Сергей Антонов wrote:Получается если сделать для каждого объекта свое бсп дерево и сортировать эти объекты по глубине с учетом их радиусов, ну и естествено условие того что они не пересекаются...
+1
а прикинь как быстро будет если дерево и вовсе убрать
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/06/2008 17:59:57
|
makc
Joined: 02/06/2008 12:19:17
Messages: 786
Offline
|
по идее, нужно своего рода 4х-мерное дерево. вот в тесте с лодкой я сделал кучу плоскостей под воду (а показывал только одну). таким образом, хотя они реально висят в трехерном дереве, по сути оно 4х-мерное, с дискретным временем, так сказать.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/06/2008 18:05:49
|
Сергей Антонов
Joined: 03/06/2008 11:40:04
Messages: 59
Offline
|
Да... тут даж не знаешь как извратится ради лишних фпс!
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/06/2008 19:30:40
|
Anton Volkov
Joined: 31/05/2008 23:19:38
Messages: 1467
Offline
|
Отличная демо! Спасибо!
Про локальные BSP (привет, makc) помним и, скорее всего, будем.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 10/06/2008 10:23:47
|
makc
Joined: 02/06/2008 12:19:17
Messages: 786
Offline
|
Anton Volkov wrote:(привет, makc)
Да уж, зачастил я у Вас постить.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 10/06/2008 11:12:20
|
Сергей Антонов
Joined: 03/06/2008 11:40:04
Messages: 59
Offline
|
Привет всем! По поводу зет буфера я тут задал вопрос на флешер ру...
http://www.flasher.ru/forum/showthread.php?t=112738
Там люди предложили несколько способов! Самый лутший последний он позволяет сравнивать всю палитру цветов! а это 256х256х256!!!!! причем самым быстрым способом! Поэтому для !очень сложных! моделей где очень много пересечений можно взять его!
Вообще по поводу концепции - работа с пересечениями бсп это конечно здорово и быстро, но в реальность у нас врезается одно тело в другое очень редко, разве чтото падает в воду, поэтому можно сделать "внутри объектную сортировку" и объектную сортировку, и дать юзеру возможность выбирать каким же способом сортировать внутри объекта, и это понятно что уровень может быть внутри бсп а все двигающиеся объекты могут быть в чем угодно! в бсп в зетбуфере в простой сортировке или вообще без кортировки! например все выпуклые модели вообще не нуждаются в сортировке!!!!! как правило в сортировке нуждаются все невыпуклые объекты!
Причем у нас есть шарик в нутри него сделано углубление(дырка) понятно что его надо сортировать! но можно и не сортировать вообще! т.е. в начало списска поставить треугольники "дырки" а в конец списска поставить треугольники шарика т.е. сферы!
Это реальные вещи, и самое главное гибкие!
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 10/06/2008 11:25:37
|
makc
Joined: 02/06/2008 12:19:17
Messages: 786
Offline
|
насколько я понимаю, BSP есть метод индексации для ускорения сортировки, а красивые пересечения - всего лишь побочный эффект. По идее, BSP позволяет выкидывать значительые куски сцены из процесса сортировки, тем самым ускоряя процесс. Каие здесь, собственно, альтернативы? Octree?
по поводу выпуклых объектов, спаведливо только вне контекста. представь себе, например, длинный параллелепипед, просунутый наискось в дверной проем. как предлагаешь отрисовать такой случай?
This message was edited 1 time. Last update was at 10/06/2008 11:26:05
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 10/06/2008 11:58:13
|
Сергей Антонов
Joined: 03/06/2008 11:40:04
Messages: 59
Offline
|
Макс, я ж говорил про простые объекты и про простые ситуации!
В любом случае каждая ситуация требует специфического подхода для выявления баланса скорость/качество.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 10/06/2008 12:11:29
|
makc
Joined: 02/06/2008 12:19:17
Messages: 786
Offline
|
Меня тут пристыдили, что доку не читаю. А там написано вот что:
При частом изменении определённой части модели имеет смысл ограничить область невидимой геометрией (полигонами без материалов), что позволит разделить в разные ветки внешнее и внутреннее пространство. В итоге анимация внутри области будет иметь небольшую фрагментацию и не будет влиять на остальное окружение. Например, внутри помещения можно сделать невидимые грани, чтобы архитектура стен не влияла на фрагментацию мебели.
Ты эту тему с самолётиками пробовал? Запихнуть их в коробки или ещё чего...
This message was edited 1 time. Last update was at 10/06/2008 12:12:20
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 10/06/2008 12:29:31
|
Сергей Антонов
Joined: 03/06/2008 11:40:04
Messages: 59
Offline
|
О! это круто! Я не пробовал! Пример был бы...
Просто я делал так загрузил самолетик а там 500-600 граней. И попробовал я его двигать... ФПС упал сразу до 5 кадров в секунду... Вот я и решил "летать камерами" .
А про загнать модельку в невидимый бокс - это идея!
|
|
|
 |
|
|