Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.07.11;
Скачать: CL | DM;

Вниз

[GLScene] Кто нибудь использовал Octree для больших карт ?   Найти похожие ветки 

 
Octree   (2005-03-26 02:45) [0]

Состоящих из большого количества 3ds-файлов. Чтобы грузить только те файлы, которые рядом с героем, и удалять из сцены дальние.
Может у кого есть пример, как это делается ?


 
Домовенок   (2005-03-26 03:21) [1]

Подгружать и удалять из сцены модели во время игры не есть хороший способ оптимизации. Дело в том, что на подгрузку даже небольшой модели нужно некоторое время. Если ты будешь подгружать, к примеру, раз в 10-20 секунд модель с 10-50 полигонами, то это еще будет терпимо, но если, к примеру, игрок будет перемешаться быстро, то тут ты столкнешься с неимоверными тормозами.

Смотри демку прилагающеюся к GLScene в ...GLScene\Demos\rendering\quadtreevisculling - там два варианта наиболее верного отсечения тех объектов, которые не попадают в кадр.


 
Octree   (2005-03-26 04:45) [2]


> Домовенок   (26.03.05 03:21) [1]
> Подгружать и удалять из сцены модели во время игры не есть
> хороший способ оптимизации.

Однако авторов Вайс Сити твой довод не убедил. Можеш им посоветовать другое решение ?


> Смотри демку прилагающеюся к GLScene в ...GLScene\Demos\rendering\quadtreevisculling
> -

Да смотрел я. Только не понял. Ты можешь объяснить её ?
И тормозная она.


 
Домовенок   (2005-03-26 15:00) [3]

> Octree (26.03.05 04:45) [2]
>Однако авторов Вайс Сити твой довод не убедил. Можеш им
> посоветовать другое решение ?


А почему ты решил, что они удаляют модели полностью и подгружают их потом вновь с нуля?

В той демке, на которую я тебе привел условную ссылку, спрайты ведь совсем не удаляются, хоть их и не видно, и не создаются вновь, когда попадают в кадр. Если пошевелить код этой демки то можно добиться такого же эффекта как в GTA.

> Да смотрел я. Только не понял. Ты можешь объяснить её ?

А что не понял? Приводится два примера "обрезания" тех объектов, которые не попадают в кадр, к тому же можно сравнить производительность обоих методов. Есть стандартное свойство VisiblyCulling которое можно выставлять как к любой кубышке (DummyCube), так и ко всей сцене (GLScene). А есть немного другой метод. Если на простом языке, то когда создаются объекты в сцене, то они заносятся в отдельный список. И делаются все невидимыми. Потом во время рендера проверяется, попадают ли они в кадр (SceneViewer) или нет. Если попадают то рендерятся. Если нет, то так и остаются скрытными.

> И тормозная она.

Ну это наверное уже зависит от производительности твоего компьютера. В этой демке создается ~6500 спрайтов.


 
DeadMeat ©   (2005-03-26 15:16) [4]

К этой демке добавить еще Occlusion Culling и будет вообще супер...

---
...Death Is Only The Begining...


 
Домовенок   (2005-03-26 16:13) [5]

> DeadMeat (26.03.05 15:16) [4]

А вот кстати... Где можно почитать или посмотреть на  Occlusion Culling? :)


 
DeadMeat ©   (2005-03-26 19:23) [6]

Вот блин..
Вот я дурак..
Извини.. Ты просто все время попадал, когда за компом не я сижу..
А отвечать забывал.. Извини.. Аж не ловко както.

Вообще я не знаю.
У меня есть тольк один пример (впрочем больше я и не искал) по использованию расширений GL_NV_occlusion_query и GL_HP_occlusion_test.
Я этим вопросом пока плотно не занимался...

---
...Death Is Only The Begining...


 
Домовенок   (2005-03-26 23:46) [7]

> DeadMeat (26.03.05 19:23) [6]

> Извини.. Ты просто все время попадал, когда за компом
не я сижу..


Да ничего страшного, бывает... ;)

> У меня есть тольк один пример (впрочем больше я и не искал)
по использованию расширений...


А где его можно утянуть или посмотреть? Буду очень благодарен :) У меня сейчас вопрос максимальной оптимизации :)


 
DeadMeat ©   (2005-03-27 03:41) [8]

А в принципе вот и он:
http://glygrik2.hotbox.ru/Download/Occlusion.zip
http://glygrik2.hotbox.ru/Download/GLUT32.ZIP
Это библиотека.. На случай если нету.

---
...Death Is Only The Begining...


 
Домовенок   (2005-03-27 14:29) [9]

Большое человеческое спасибо! Попробую разобраться :)



Страницы: 1 вся ветка

Текущий архив: 2005.07.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.043 c
3-1117565042
mefisto
2005-05-31 22:44
2005.07.11
Backup базы MSSQL Server 2000 в Делфях


4-1115303617
mrAld
2005-05-05 18:33
2005.07.11
Thread Kicker


3-1116793928
PalPalych
2005-05-23 00:32
2005.07.11
Сумма элементов открытого запроса


9-1111931801
VolanD666
2005-03-27 17:56
2005.07.11
Пальма


3-1117040772
_dimka
2005-05-25 21:06
2005.07.11
Как увидеть добавленную запись не переоткрывая запрос? (IBX)





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский