Форум: "Игры";
Текущий архив: 2007.05.13;
Скачать: [xml.tar.bz2];
ВнизАлгоритм быстрой 3D графики Найти похожие ветки
← →
DevilDevil © (2006-06-07 00:21) [0]Скачал тут проект XProger-а, называется "XTropper"... Я вообще давным давно хотел это спросить, т.к. в своё время написал простую 3D комнату, а FPS уже был маленьким; вышеуказанный проект только подтолкнул на этот шаг. Вопрос: почему такая относительно крутая "GTA - Vice City" идёт без проблем, а ерунда [не в обиду, всё относительно] XTroper тормозит? Какие алгоритмы отсечения "ненужного" используют профессиональные игроделы? Ни где не встречал подобной информации
← →
TWINc © (2006-06-07 00:30) [1]как вариант BSP со всякими там PVS :)
← →
DevilDevil © (2006-06-07 00:31) [2]Ответом неудовлетворён !
← →
XProger © (2006-06-07 00:31) [3]DevilDevil, какая видеокарта и версия драйверов?
← →
DevilDevil © (2006-06-07 01:08) [4]GeForce fx 5500. Старьё конечно, но факт!
зы тормозит при разлетании пауков на куски. А вообще проект прикольный
← →
XProger © (2006-06-07 01:14) [5]DevilDevil, глюк мой, а readme.txt гордость не позволяет прочесть?
← →
DevilDevil © (2006-06-07 01:18) [6]XProger © (07.06.06 01:14) [5]
В GTA есть и fullscreen, и кровь, и даже звук. Здесь что-то серьёзнее
← →
XProger © (2006-06-07 01:20) [7]DevilDevil, -noblood не будет крови - не будет тормозов. Глюк знаю исправлять не собираюсь.
← →
Ricks © (2006-06-07 01:58) [8]Такой же вопрос:
в Warcraft III карта (несколько слоев текстур) + юниты + природа + эффекты + ... и все это нормально идет, у меня же карта из 4-х слоев уже тормозит все на 50-60 fps... :(
← →
XProger © (2006-06-07 02:03) [9]Ricks, в варкрафте однопроходный рендеринг.
Скорость работы игры зависит от кривости рук программиста, у меня эта кривость очень сильно выражена ;)
← →
Rial © (2006-06-07 02:45) [10]Я, например, собственоручно при создании трехмерной карты разбивал все на области видимости, в том числе и смежные области. Потратил всего 20-30 часов, а быстродействие увеличилось в 3 раза !
И нужно как можно больше пытаться просчитать заранее, один раз.
Отсекать невидимые вершины.
Не использовать Lists+glScale.(Извините конечно меня мастера, но у меня с этой комбинацией были проблемы).
Не использовать glSelectBuffer(S,Pointer(ptRenderer)) несколько раз за кадр. Лучше вообще про него забыть.
Забыть как страшный сон GL_LINES,GL_POINTS,GL_QUADS и прочую муть.
В мире есть только трегольники, обычные и связанные !
Например, GL_QUADS - это 4 треугольника, хотя вполне достаточно и 2-х.
Не генерировать текстуры на каждом кадре (ужас).
Не делать часто смену контекста восмпроизведения, так как, видимо,
MicroSoft там специально Sleep добавил :)).
По моим тестам
glRotateF(Angle,KX,KY,KZ);
выполняется, например, медленнее, чем SinCos(Out Sn,Cs);
Надеюсь, понятно, к чему это.
Если выводится текст из списков, то размеры букв для его
правильного центрирования лучше кешировать, а не запрашивать постоянного
у предварительно созданного канваса (я такое один раз видел).
Вовремя отключать генерицию текстурных коордимат.
Больше что то на ум ничего сразу не приходит.
← →
DevilDevil © (2006-06-07 09:33) [11]> XProger ©
ДА НЕ ОСУЖДАЮ Я ТЕБЯ, не надо [но лучше исправить :)] никаких глюков... блин... Вопрос в другом!!! Выкладывайте секреты проф программинга!
← →
RzCoDer © (2006-06-07 12:04) [12]
> DevilDevil
Все подобные советы в статьях описаны, а если не описаны значит это программерская тайна ;)
Страницы: 1 вся ветка
Форум: "Игры";
Текущий архив: 2007.05.13;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.046 c