Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Media";
Текущий архив: 2004.11.21;
Скачать: [xml.tar.bz2];

Вниз

GLScene: техника массовых сцен   Найти похожие ветки 

 
miek ©   (2004-08-24 22:39) [0]

Если мне в сцене нужно показать 10000 одинаковых, скажем, орков (в кадре не более 100), то было бы нерационально создавать и держать в памяти 10000 экземпляров FreeForm. Хотелось бы создать 10000 ссылок на один объект, хранящий mesh. Это делается с помощью Proxy? MultiProxy? Или как?


 
DeadMeat ©   (2004-08-24 23:33) [1]

Proxy для этого и создан...
MultiProxy сделан для использования LOD в сцене... Там надо задавать расстояние (вот только не помню от чего), при котором он выбирает какой из мешей показывать... Есть демка на эту тему... Там куча шаров рисуется и с расстоянием меняется их "плотность" (количество полигонов в каждом).
Но у этого есть один серьезный недостаток - кадры анимации у всех будут одинаковыми. Т.е. если один орк пошевелил рукой, то и другие тоже будут...
Как вариант можно создать 10000 FreeFrom, но выводить только нужные (IsVolumeClipped)... Хотя конечно работать будет не очень... Я как то делал около 3 тыс. спрайтов, и на разных машинах (мощных) результат был разный - либо вся винда уходила в перезагрузку (видимо BSOD выскакивал) либо запускалась прога минут 5-пять...

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


 
DeadMeat ©   (2004-08-24 23:34) [2]

Можно ещё так (правда не проверял). Насоздавать кучу проксей, а перед рендерингом каждой менять кадр на нужный для этой прокси... Хз, может сработает...

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


 
miek ©   (2004-08-25 19:09) [3]

То есть, если я создаю объекты через прокси, то это гарантирует, что они ссылаются на мастера, а не копируют его?


 
DeadMeat ©   (2004-08-25 20:27) [4]

Вроде так и есть... Попробуй демку замутить.
Создай один FreeForm с грибом, из ..\media\. Потом насоздавай 1000 FreeForm-ов, и сделай их одинаково похожим на первый... Замерь время создания и фпс.
Затем сделай тоже самое, но с ProxyObject... Увидишь разницу...

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



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

Форум: "Media";
Текущий архив: 2004.11.21;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.053 c
8-1093033688
Константинов
2004-08-21 00:28
2004.11.21
Заливка произвольной области Bitmap


3-1098863018
Slon22
2004-10-27 11:43
2004.11.21
Поле типа DATE


4-1097351708
AlexeyM
2004-10-09 23:55
2004.11.21
размер процесса


3-1098520411
Black
2004-10-23 12:33
2004.11.21
Защита базы данных ACCESS


4-1097410364
Stany
2004-10-10 16:12
2004.11.21
запуск программы с обработкой кодов возврата





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский