Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Оптимизация glscene [Delphi, GLScene, Windows]


Страницы:   1 2 3

!Trinix ©   (2005-06-07 08:41:00) 

Господа! Приветствую!
Решил спросить про оптимизацию glscene:
Вы знаете, что серьезный (более или менее) 3D проект очень тормозит. Чтобы от этого избавися программисты убирают модели, которые игрок не видит. Я пробовал так сделать, но жрет много процессора. Помогите, пожалуйста.
P.S. заодно оцените мой сайт sgstd.nm.ru.
Спасибо!


VVV-First   (2005-06-08 14:26:00) [21]

а вот если при приближении к объекту менять текстуру с малыми размерами на больший  и наоборот , это вообще поможет или это капля в море?


dimodim   (2005-06-08 14:13:00) [22]


> Можете чуть-чуть понятнее разъяснить.

Камп грузится не из-за моделей в сцене
А из-за качества текстур .Наверное...
---
Ну пошпили В Хроники Риддика - там графа АФИГЕТЬ, а у меня 40fps
Пошпилив свою демку где лежит 150 тайлов травы 30 fps Причем в Риддеке качество текстур фотоаграфическое , а у меня тайлы 20*20 bmp 256 цветов.
--
Тормозит Жлсцене скажи спасибо разработчикам


!Trinix   (2005-06-08 13:21:00) [23]

Можете чуть-чуть понятнее разъяснить.


Zer0   (2005-06-08 09:19:00) [24]

если класс TMage наследуются от TPerson,
то при обращении к классу TMage, как к TPerson и изменение его полей естественно приведет к тому что в TMage эти поля тоже изменятся (они содержатся в одних и тех же ячейках памяти).
при вызове медодов класса возможно использование и "перегрузка" методов предка.

про другие виды обращения (интерфейсы и прочая чорная магия) - rtfm.


Fosgen   (2005-06-08 07:08:00) [25]

2 !Trinix : Ты же обращаешься к экземпляру класса, а не к самому классу - а судя по твоему вопросу ты хочешь параллельно аж к трем объектам обратиться - помни, что реально в ед. времени процессор обрабатывает все же одну операцию, несмотря на все рассказы о мультизадачностях и параллельных процесах... Ну как одновременно обрабатываемые можно совместить операции мат. сопроцессора, да работу видеокарты, но обращение СРАЗУ к трем объектам, да еще и автоматизированное... Читайте книжки по ООП...


!Trinix   (2005-06-07 18:59:00) [26]

Простите, еще один вопрос:
допустим есть класс TPerson, от него образуются классы TMage и TWarrior. Можно обратится к TPerson так, чтобы это обращение пошло одновременно на TMage и TWarrior?


!Trinix   (2005-06-07 17:53:00) [27]

Спасибо


Zer0   (2005-06-07 17:38:00) [28]

есть игрок с центром на который смотрит камера,
есть камера у которой заданы углы поворота (в горизонтальной плоскости) и наклона,
пускаем луч из центра игрока в направленни противоположному направлению обзора камеры(как-будто смотрим на камеру из игрока =),
смотрим с какими предметами сцены этот луч сталкивается сталкивается и соотвественно зная расстояние, которое прошел луч до первого столкновения корректируем положение камреы.
в жлсцене есть специально заготовленные RayCast-бла-бла-бла функции.


!Trinix   (2005-06-07 17:29:00) [29]

Господа, извините - вопрос не по теме.
Как при столкновении камеры со стеной отодвигать камеру ближе к игроку, если честно, то я с collision плохо разобрался.


Fosgen   (2005-06-07 16:20:00) [30]

На будущее (если еще кто с таким же вопросом) - Сравните сами: скорость работы памяти (хоть видео, хоть ОЗУ) измеряется в наносекундах (нс), а производительность дисковой подсистемы в миллисекундах (мс) - разница в порядки раз! Так что сами уже решайте чем быстрее пользоваться - выгрузкой\загрузкой с диска, али работой с памятью (и только с ею родимой!)...


Zer0   (2005-06-07 15:03:00) [31]

вот магические слова, которорые отвечают за ускорение отрисовки:
visibility culling (on view fustrum), occlusion culling, dynamic level of detail, shaders optimization


!Trinix   (2005-06-07 10:20:00) [32]

>Fosgen
Спасибо, туплю...


П7   (2005-06-07 10:02:00) [33]

Я говорю "СМЕШНО!!!". Чего не понятно?


Fosgen   (2005-06-07 09:54:00) [34]

!Trinix, ты думаешь отчего вообще FPS зависит? ОТ КОЛИЧЕСТВА ОТОБРАЖАЕМЫХ ПОЛИГОНОВ В СЦЕНЕ, блин... Таким образом если полигоны какой-либо модели НЕ ВИДИМЫ, сл-но они не отображаются и производительность видеосистемы не кушают... Так что не рассуждай, когда тебе конкретный совет предлагают, а попробуй, для начала...


DeadMeat   (2005-06-07 09:51:00) [35]

Хреново однако...


!Trinix   (2005-06-07 09:33:00) [36]

Но они все равно остаются на сцене, и от невидимости FPS не уменьшится.


Xeno   (2005-06-07 09:23:00) [37]

>!Trinix
А зачем их выгружать, ето не правильно, тормоза будут, делай их просто невидимыми (visible:=false) вне камеры :)


!Trinix   (2005-06-07 09:16:00) [38]

Простите, не понял.


П7   (2005-06-07 09:05:00) [39]

Приклисты, блин...


!Trinix   (2005-06-07 09:01:00) [40]

Как отгружать модели из памяти, когда игрок отворачивается и загружать когда опять их видит. Я использовал пример visor из glscene.nm.ru.


Страницы:   1 2 3

Наверх

Титульная страница Поиск, карта сайта Написать письмо