Форум: "Игры";
Текущий архив: 2005.10.23;
Скачать: [xml.tar.bz2];
ВнизОптимизация glscene Найти похожие ветки
← →
!Trinix © (2005-06-07 08:41) [0]Господа! Приветствую!
Решил спросить про оптимизацию glscene:
Вы знаете, что серьезный (более или менее) 3D проект очень тормозит. Чтобы от этого избавися программисты убирают модели, которые игрок не видит. Я пробовал так сделать, но жрет много процессора. Помогите, пожалуйста.
P.S. заодно оцените мой сайт sgstd.nm.ru.
Спасибо!
← →
DeadMeat © (2005-06-07 08:56) [1]Ты чуток конкретней спроси, и покажи что уже есть, что моросит...
← →
!Trinix © (2005-06-07 09:01) [2]Как отгружать модели из памяти, когда игрок отворачивается и загружать когда опять их видит. Я использовал пример visor из glscene.nm.ru.
← →
П7 (2005-06-07 09:05) [3]Приклисты, блин...
← →
!Trinix © (2005-06-07 09:16) [4]Простите, не понял.
← →
Xeno © (2005-06-07 09:23) [5]>!Trinix
А зачем их выгружать, ето не правильно, тормоза будут, делай их просто невидимыми (visible:=false) вне камеры :)
← →
!Trinix © (2005-06-07 09:33) [6]Но они все равно остаются на сцене, и от невидимости FPS не уменьшится.
← →
DeadMeat © (2005-06-07 09:51) [7]Хреново однако...
← →
Fosgen (2005-06-07 09:54) [8]!Trinix, ты думаешь отчего вообще FPS зависит? ОТ КОЛИЧЕСТВА ОТОБРАЖАЕМЫХ ПОЛИГОНОВ В СЦЕНЕ, блин... Таким образом если полигоны какой-либо модели НЕ ВИДИМЫ, сл-но они не отображаются и производительность видеосистемы не кушают... Так что не рассуждай, когда тебе конкретный совет предлагают, а попробуй, для начала...
← →
П7 (2005-06-07 10:02) [9]Я говорю "СМЕШНО!!!". Чего не понятно?
← →
!Trinix © (2005-06-07 10:20) [10]>Fosgen
Спасибо, туплю...
← →
Zer0 © (2005-06-07 15:03) [11]вот магические слова, которорые отвечают за ускорение отрисовки:
visibility culling (on view fustrum), occlusion culling, dynamic level of detail, shaders optimization
← →
Fosgen (2005-06-07 16:20) [12]На будущее (если еще кто с таким же вопросом) - Сравните сами: скорость работы памяти (хоть видео, хоть ОЗУ) измеряется в наносекундах (нс), а производительность дисковой подсистемы в миллисекундах (мс) - разница в порядки раз! Так что сами уже решайте чем быстрее пользоваться - выгрузкой\загрузкой с диска, али работой с памятью (и только с ею родимой!)...
← →
!Trinix © (2005-06-07 17:29) [13]Господа, извините - вопрос не по теме.
Как при столкновении камеры со стеной отодвигать камеру ближе к игроку, если честно, то я с collision плохо разобрался.
← →
Zer0 © (2005-06-07 17:38) [14]есть игрок с центром на который смотрит камера,
есть камера у которой заданы углы поворота (в горизонтальной плоскости) и наклона,
пускаем луч из центра игрока в направленни противоположному направлению обзора камеры(как-будто смотрим на камеру из игрока =),
смотрим с какими предметами сцены этот луч сталкивается сталкивается и соотвественно зная расстояние, которое прошел луч до первого столкновения корректируем положение камреы.
в жлсцене есть специально заготовленные RayCast-бла-бла-бла функции.
← →
!Trinix © (2005-06-07 17:53) [15]Спасибо
← →
!Trinix © (2005-06-07 18:59) [16]Простите, еще один вопрос:
допустим есть класс TPerson, от него образуются классы TMage и TWarrior. Можно обратится к TPerson так, чтобы это обращение пошло одновременно на TMage и TWarrior?
← →
Fosgen (2005-06-08 07:08) [17]2 !Trinix : Ты же обращаешься к экземпляру класса, а не к самому классу - а судя по твоему вопросу ты хочешь параллельно аж к трем объектам обратиться - помни, что реально в ед. времени процессор обрабатывает все же одну операцию, несмотря на все рассказы о мультизадачностях и параллельных процесах... Ну как одновременно обрабатываемые можно совместить операции мат. сопроцессора, да работу видеокарты, но обращение СРАЗУ к трем объектам, да еще и автоматизированное... Читайте книжки по ООП...
← →
Zer0 © (2005-06-08 09:19) [18]если класс TMage наследуются от TPerson,
то при обращении к классу TMage, как к TPerson и изменение его полей естественно приведет к тому что в TMage эти поля тоже изменятся (они содержатся в одних и тех же ячейках памяти).
при вызове медодов класса возможно использование и "перегрузка" методов предка.
про другие виды обращения (интерфейсы и прочая чорная магия) - rtfm.
← →
!Trinix © (2005-06-08 13:21) [19]Можете чуть-чуть понятнее разъяснить.
← →
dimodim (2005-06-08 14:13) [20]
> Можете чуть-чуть понятнее разъяснить.
Камп грузится не из-за моделей в сцене
А из-за качества текстур .Наверное...
---
Ну пошпили В Хроники Риддика - там графа АФИГЕТЬ, а у меня 40fps
Пошпилив свою демку где лежит 150 тайлов травы 30 fps Причем в Риддеке качество текстур фотоаграфическое , а у меня тайлы 20*20 bmp 256 цветов.
--
Тормозит Жлсцене скажи спасибо разработчикам
← →
VVV-First (2005-06-08 14:26) [21]а вот если при приближении к объекту менять текстуру с малыми размерами на больший и наоборот , это вообще поможет или это капля в море?
← →
DeadMeat © (2005-06-08 15:24) [22]Мы всегда тебе рады димодин... ;)
Хотя бы про размеры текстур почитал бы.. Прогер-сценарист....
Про русский я молчу.
← →
!Trinix © (2005-06-08 18:36) [23]>VVV-First
Это называется мип-маппинг, происходит автоматически (заложено в функциях 3DApi).
Ходите в форуме по созданию игр, а таких вещей не знаете..
← →
VVV-First (2005-06-08 19:04) [24]да стыдно %)
если знаешь дай ссылочку почитать
← →
Fosgen (2005-06-08 19:12) [25]2 !Trinix: Насчет классов - если ты обращаешься к TMage - потомку класса TPerson (учти - в любом случае идет обращение к ОДНОМУ экземпляру класса! Т.е. - к одному объекту.
Object:TMage;).
Причем обращаешься ты к нему как к объекту класса TPerson(Object as TPerson)
то при изменении его полей поля объекта TMage(Object as TMage)
тоже поменяются - объект-то один и тот же...
← →
VVV-First (2005-06-08 19:27) [26]
> !Trinix ©
но ты тоже молодец
> Как отгружать модели из памяти, когда игрок отворачивается
> и загружать когда опять их видит.
← →
Ищущий (2005-06-09 08:51) [27]2Fosgen
В принципе верно, но только для ОДНОГО объекта (в смысле экземпляря класса)
2!Trinix ©
Можно перебрать объекты с parent class TPerson и изменить необходимое свойство.
← →
!Trinix © (2005-06-09 14:05) [28]спасибо, не могли бы вы мне заодно сказать форматы файлов с анимацией, которые поддерживает GLScene. (obj e t. c.)
← →
XProger © (2005-06-09 14:16) [29]md2
← →
!Trinix © (2005-06-09 18:07) [30]но не один же формат?
← →
Fosgen (2005-06-09 22:17) [31]Как это не грустно - практически один. Конечно еще формат моделей от Quake 2, но там анимация морфовская - пересчитывается для всей модели, а не скелетная (как md2) - может пересчитываться run-time для части модели...
← →
DeadMeat © (2005-06-10 08:52) [32]Хе.. А я думал что как раз md2 это морфовая.. А md3 скелетная.
А еще я думал, что в GLScene есть smd, и md5.
← →
!Trinix © (2005-06-10 09:12) [33]В таком случае, дайте мне, пожалуйста, нормальную ссылку на экспорт в md2 из макса 5.1, сразу говорю qtip не отображается в file\export...
← →
Xemo (2005-06-10 09:36) [34]>!Trinix ©
В плаиге QTtip экспорт в MD2 производиться не из меню "file\export...",а из кладки "утилиты"(кажись так называется :)
Читай внимательней хелп на странице производителя, там даже картинки есть!
← →
!Trinix © (2005-06-10 10:26) [35]ок
← →
Sapersky (2005-06-10 11:37) [36]А я думал что как раз md2 это морфовая.. А md3 скелетная.
А я до сих пор наивно полагаю что md3 морфовая :) C той только разницей от md2, что голова/торс/ноги обрабатываются отдельно (что, кстати, иногда создаёт проблемы по их совмещению). В принципе, это можно назвать скелетом из 3-х костей :)
smd - "настоящая" скелетная, и то уже порядком устарела по нынешним временам (ну ещё бы, сколько ей лет?). В частности, положение вершины определяется только 1-й костью, хотя в 3D API (и T&L ускорителей) давно уже присутствует поддержка нескольких, т.н. skinning или geometry blending.
← →
DeadMeat © (2005-06-10 12:43) [37]Аа.. Блин..
Прошу прощения.
Перепутал с GLM, в JA. Она же тоже на кваковском движке.. Вот и перепутал.. Думал там MD3..
Миль пардон.
А md2 все равно не скелет.. ;))
← →
!Trinix © (2005-06-10 13:23) [38]Я скачал qtip1.2 для 5 макса, но там пронумерованы и названы 308 фреймов, можно импортировать из других md2 файлов эти названия и количесва фреймов, но скажите, как самому все обозвать: в реале моя модель владеет более 1000 фреймов.
← →
!Trinix © (2005-06-10 16:54) [39]версия 1.2
← →
!Trinix © (2005-06-10 16:56) [40]ой простите, уже указал
Страницы: 1 2 вся ветка
Форум: "Игры";
Текущий архив: 2005.10.23;
Скачать: [xml.tar.bz2];
Память: 0.54 MB
Время: 0.042 c