![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#81 |
Инженер ИС
Старожил
Регистрация: 13.12.2006
Сообщений: 2,671
|
![]()
Собственно, резервов полно. Например, Loop я заменил на такую последовательность:
Код:
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
|
![]() |
![]() |
![]() |
#82 | ||
Непрофессионал
Участник клуба
Регистрация: 01.01.2008
Сообщений: 1,405
|
![]()
Про Loop я тебе уже давно говорил.
http://www.programmersforum.ru/showp...99&postcount=9 Цитата:
Цитата:
И чем больше я узнавал людей, тем больше мне нравились компьютеры.
------------------------------------ Страничка с моими программками http://ulex-masm.ru |
||
![]() |
![]() |
![]() |
#83 |
Инженер ИС
Старожил
Регистрация: 13.12.2006
Сообщений: 2,671
|
![]()
Тогда про Loop я, честно говоря, "не втянул озон", теперь только вспомнил, ...впопыхах искал твои рекомендации, не нашел и изобразил это, выше показанное, ...до сих пор не понимаю разницу между jne и jnz, ...ну, не суть, разберемся со временем.
Flash тут конкретным боком, поскольку on-line игры на нем частенько, ...садят CPU нещадно, ...Dofus (РПГ) мой Pentium 4 3GHz грузил на 100%, и в паузах по 50%, ...это считается "нормой", ...я этот уровень перескочил, но хочу уделить внимание "допнямчетвертым". Хорошо, сделаю отключение всего, ...если есть желание и время поиграешься настройками, ...узнаем что к чему. Спасибо за поддержку.
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
|
![]() |
![]() |
![]() |
#84 |
c++, dx/ogl
Форумчанин
Регистрация: 10.11.2008
Сообщений: 131
|
![]()
…BitBlt для "до 4х пней" тем более таких размеров «подложка», мне кажется это тоже колоссальная нагрузка на проц. Может, стоит обратить внимание на видео подсистему? И воспользоваться ею преимуществами). "Дочетвертый пень" явно может иметь видео уровня GeForce 2/4 MX пусть даже и хуже… а это DDraw c flip’ом буферов и oGL) Интересно, а через Overlaу можно организовать вывод? Все быстрее битблта)
“Batch, Batch, Batch:” What Does It Really Mean?
I am a donut! Ask not how many tris/batch, but rather how many batches/frame! |
![]() |
![]() |
![]() |
#85 |
Инженер ИС
Старожил
Регистрация: 13.12.2006
Сообщений: 2,671
|
![]()
.pixel, не знаю пока доступа к форме, только через BitBlt. Даже точно не знаю куда он перекидывает данные, ...по всей видимости по контексту формы в ее буфер, а потом буфер всей формы на экран, ...может не так, но медленно, если логически рассудить. Много раз спрашивал, как можно рисовать сразу в области формы по указателю на внутренний битмап, а то же приходится рисовать в буфер, а его кидать в форму BitBlit'ом.
Вот тест с отключением всего:
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
|
![]() |
![]() |
![]() |
#86 |
Непрофессионал
Участник клуба
Регистрация: 01.01.2008
Сообщений: 1,405
|
![]()
Вот так вот получилось:
Вобщем, я больше не вижу пространства для оптимизации. Нет здесь этой кошки. И искать её бесполезно. Код HTML:
кол-во перс| деревья | Подложка | BitBlt| загрузка CPU (%)| вых интервал (мс)| -----------|---------|----------|-------|-----------------|------------------| 0 | 0 | + | + | 98-99 | 31-41 | 0 | 0 | - | + | 35 | 31 | 0 | 0 | + | - | 35 | 31 | 10 | 0 | - | + | 34 | 31 | 100 | 0 | - | + | 35 | 31 | 100 | 1 | - | + | 67 | 31 | 100 | 2 | - | + | 71 | 31 | 100 | 3 | - | + | 99 | 31-41 | 1000 | 0 | + | + | 99 | 62 | 100 | 0 | + | + | 99 | 31-41 | ------------------------------------------------------------------------------
И чем больше я узнавал людей, тем больше мне нравились компьютеры.
------------------------------------ Страничка с моими программками http://ulex-masm.ru |
![]() |
![]() |
![]() |
#87 |
Инженер ИС
Старожил
Регистрация: 13.12.2006
Сообщений: 2,671
|
![]()
Если не затруднит, проверь вот такие варианты:
PHP код:
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
|
![]() |
![]() |
![]() |
#88 |
Непрофессионал
Участник клуба
Регистрация: 01.01.2008
Сообщений: 1,405
|
![]()
Да как бы не затруднит. Скорее всего уже завтра.
Смысла правда в этом не вижу особенного, расстраиваться только. Да и как дальше оценивать не очень понятно. Загрузка CPU будет 100% во всех этих тестах. Реальный таймер засекать? Но он на пустой сцене с 0 объектов и деревьев уже нестабилен 31-41. Далее до 100 маленьких объектов с 0 деревьев он так и болтается 31-41. На 1000 объектов интервал становится 62. Промежутки не смотрел. Деревья тоже не смотрел. Просто лично я перспективы оптимизации здесь больше не вижу. В секунду должно выводиться 30 кадров, каждый кадр содержит минимум очистку (вывод задника) и конечный вывод BitBlt кадра на HDC. Вывод задника у тебя построен на инструкциях MMX. Т.е. всё, это минимум, и он уже грузит проц на 100 и тянет таймер (не стабильно, но тянет). Ещё остается попробовать 16-ти битные тектуры, но это в ущерб качеству. И была ещё одна идея у меня. Я тут подумал, а что если в качестве BackBufer_а использовать поверхность, созданную в видеопамяти, и выводить все наши картинки из ОЗУ непосредственно в видюху, а потом метод Present интерфейса IDirect3DDevice8. Ну и пока моя реализация этого метода на DirectX8.1 оказалась гораздо медленне обычного BitBlt.
И чем больше я узнавал людей, тем больше мне нравились компьютеры.
------------------------------------ Страничка с моими программками http://ulex-masm.ru |
![]() |
![]() |
![]() |
#89 | |
c++, dx/ogl
Форумчанин
Регистрация: 10.11.2008
Сообщений: 131
|
![]()
Ulex...
Цитата:
Первичную создать… Код:
Код:
Код:
Код:
“Batch, Batch, Batch:” What Does It Really Mean?
I am a donut! Ask not how many tris/batch, but rather how many batches/frame! |
|
![]() |
![]() |
![]() |
#90 |
Инженер ИС
Старожил
Регистрация: 13.12.2006
Сообщений: 2,671
|
![]()
Ребята, мне чертовски интересно все это )) ...пробовал и так и эдак, ...рисовал в память видеокарты из ОЗУ, но что-то увидел загрузку под потолок и успокоился, и это на Pentium 4, может что-то не так делал, ...попробую поискать старые исходники. Из-за чего весь "сыр-бор", ...ну, не помещается в видеопамяти на 32М всего многообразия, что встречается в одном кадре (у меня). 2D игра не обязательно это стратегия типа первой SimCity, ...бывает и с огромными полупрозрачными анимированными объектами, как у меня деревья, их кадры нужно куда-то девать, это 15М в RGBА качестве, на одно дерево, даже кадров всего 12, старался как можно меньше их соединить, без потери качества и видимости цикла. Такое еще никто не делал, мне кажется. Если 3D с такой же детализацией, чтобы текстура на ствол и на один лист (256К максимум), то загнется не только Celeron, но и Pentium 4 со своими видеокартами, когда игрок зайдет в лес. А делать малополигонные метелки как-то не по мне. ))
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
|
![]() |
![]() |
![]() |
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
wi-fi и скорость | stenl1 | Компьютерное железо | 19 | 01.06.2010 17:48 |
Скорость рисования графиков | Master07 | Общие вопросы C/C++ | 3 | 16.07.2009 21:45 |
Скорость | bakanis | Работа с сетью в Delphi | 6 | 05.04.2009 12:39 |
Скорость скачивания | Терминатор | Свободное общение | 3 | 30.03.2009 19:03 |
Скорость проигрывания | Bigtyoma | Мультимедиа в Delphi | 0 | 30.09.2008 15:57 |