Войти
ФлеймФорумОбщее

Пароль на архиве с исходниками Game7? (7 стр)

Страницы: 1 2 3 4 5 6 7
#90
17:24, 1 апр. 2005

Zeux
Праивльные пять копеек. tav никак не может этого понять :)


#91
2:11, 2 апр. 2005

Вопрос 3 получился глупым. Умножения матрицы на матрицу. Добавлю - насколько я понял, плюс к тому еще инвертирование каждый раз. Правда, быстрое. Зачем - не понял (для костей нашел только использование в солвере - но там используются обратные матрицы 2ух костей, которые и перед вызовом солвера можно сделать).

Хотя я уже понял, что код не оптимизировали.

tav
> По какой шине?
> Вообще-то обработка GPU и подразумевает сей факт, что по AGP передавать ничего не надо. Все данные хранятся в видеопамяти, а GPU их обрабатывает.
Кадр 1. Нам надо показать кадр 10.5 (10 - 11, коэффициент морфинга 0.5) анимации водомерки и кадр 1.5 анимации другой водомерки.
Нам нужны кадры 10,11 в видеопамяти для первой модели и 1,2 для второй. Передаем по той самой шине.
Кадр 2 пропустим
Кадр 3. Нам надо показать кадр 12.7 первой водомерки, кадр 3.7 второй и еще в кадр попал кусок третьей водомерки (там кадр, конечно же, 5.3). Нам нужны кадры 12,13,3,4,5,6. Передаем.

#92
2:27, 2 апр. 2005

Zeux
>Ну, если мин. требования - tnt2, то не смешно
Посмотри прайс-листы компьютерных контор. На новые компы, в частности на Athlon 2500+ cтавят GF FX 5200, и то если повезёт, а то вообще могут GF4MX запросто поставить (хотя частоты у них одинаковые). Думаешь рядовой геймер знает, что это за карта? Думаешь он знает, что такое шейдеры? Это мы тут с вами "умничаем", а народ, толпа по большей части вообще в этих тонкостях ни бум-бум. В крайнем случае можно рассчитывать на FX 5500. А чем он отличается от FX5200? Во-во. Один хрен.

>морфинг на GPU вместо скелетной анимации
На GFMX-ах эмуляция просто ужасная. Хотя бы только поэтому морфинг стоит делать, и лучше на CPU для патча на GFMX-ах (которого всё-равно не будет :-)  )

Zulus
>Именно про это я тебе и сказал - прокачать по AGP 100 жаб будет сложно
Откуда возьмётся 100 жаб? Т.е. если каждая 10 тыс., то в сотне жаб -- 1 млн. тр-ков. Хватит мне голову морочить. В кадре будет макс. десяток этих созданий, да и то... ерунда получается. Из сцены выводятся 50 тыс., а жабы -- 100тыс. Т.е. к концу игры FPS раза в 3 падает. Так?
Даже если считать, что жаб 10. Каждая занимает 10000*12*2. Если принять в расчёт 100 FPS, то нагрузка на AGP шину будет примерно равна 10000*12*2*10*100=240 Мб. И это при том, что пропускная способность AGP 4x -- 1Гб/с. Т.е. занято будет 24% шины. А если учесть прямой доступ в память, то процессор на передачу данных по шине отвлекаться почти не будет.
Расчёт я делал для 2-х кадров жабы, но если учесть семейство GFMX, т.е. сделать морфинг на CPU вручную, то можно передавать обработанный кадр (результат интерполяции 2-х ключевых кадров) сразу через FastWrites напрямую от процессора в видеокарту. На CPU это сделать вообще элементарно. Код:

#define N 10000
int n=N;

void main()
{
	static float res[N],a1[N],a2[N],f;

	for (int i=0;i<n;i++)
		res[i]=a1[i]+(a2[i]-a1[i])*f;
}
IntelC++Compiler векторизует легко, и писать вручную на SSE код не надо.
Только для FastWrites надо записывать результат интерполяции сразу в отображение видеопамяти в ОЗУ.
Чего вы всё упираетесь. Игру под low-end карты заточить -- совсем немного надо времени. Ну, если не хотите, не надо.
Да и я действительно не знаю, какое там у вас узкое место. Я, так понял, это то ли физика, то ли IK solver. В этом я не силён, так что ладно, разбирайтесь сами.
#93
12:14, 2 апр. 2005

Короче, то что ты сопротивляешься... верный признак того, что ты не хочешь понимать очевидного и уверен на столько в соей правоте, что будешь спорить до позеленения. Ну так... это твои проблемы. Вся индустрия считает иначе (железные решения есть верный признак). А то что щас впаривают остатки GF FX 5200 и GF4MX, которые никто, разумеется, уже не хочет покупать... это проблемя тех, кто не поинтересовался у специалистов, какую карту необходимо иметь в компьютере. Если игрок идет покупать комп, то он покупает комп под дум или халф. И его уже сложно убедить, что GF FX 5200 их потянет. Короче. Самые две распространенные видео на рынке сейчас - 9x00 радеон (как правило не 9200, а скорее 9600) и действительно gfmx4. Именно под них и расчитана игра. Но на gfmx4 проблемы с трансформациями на GPU не так очевидны, как ты их пытаешься подать. Так что расслабся.

#94
12:31, 2 апр. 2005

tav
Где гарантия, что увеличив на gf4mx кол-во патчей в 10 раз (при этом сократив их полигональность) получим увеличение fps? Ты пробовал?
Особых проблем попробовать не вижу. Есть код, есть данные игры.

Да, я немного не понял, при чем тут шейдеры.

#95
12:55, 4 апр. 2005

Zulus
Да ладно вам. Я ведь действительно помочь хотел. Точнее так - мне было интересно, смогу я вам чем-нибудь помочь или нет. :-)
>Именно под них и расчитана игра
Вряд ли. Даже на нехилом алтоне на GF4MX тормозит безбожно, и всё время передёргивается почему-то, подвисает слегка то бишь. Так что, остаются только Radeon-чики.
>это проблемя тех, кто не поинтересовался у специалистов, какую карту необходимо иметь в компьютере
Если бы все спрашивали этих специалистов, а то торговцы в конторах такого наговорят.

Я, кстати, игру через ArtMoney на деньги пробил (компилить лень было с бесконечным кол-вом жизней).
Теперь понимаю, что советы мои действительно бредовыми были. Стриминг туда не прикрутить (особенно в том месте, когда видно 2 течения реки, то где плывёшь и где уже плыл минуту назад - заворотик такой), тварей там всего 3 вида, так что отслеживать, какие появятся - тоже бред.
Больше всего прикол тот факт, что в начале игры 50 тыч. тр-ков в кадре, а на втором круге как-то число тр-ков до 800 тыч. однажды поднялось. О каком GFMX-е вообще может идти речь?
Советую вид такой на водопадах не делать - или как-то по-другому или вообще не менять, а то скачки FPS в 10 раз туда сюда никому не понравятся.

Fly
Кстати, вот класс для построения диграмм оценки производительности - http://tav86.narod.ru/swdiagram.rar
С этого мне и надо было начинать, а то советы мои действительно не к месту.
Там, в принципе, урезанный вариант, можно сказать, т.к. в D3D расширения GL_NV_fence есс-но нет, и подобных механизмов тоже, наверное. А потому диграммы предназначены в основном для GPU limited (т.к. это отследить проще), а потому опять таки не к месту. Ну, ещё можно определить какие расчёты самые ресурсоёмкие. Может, хоть это сгодится.

Zeux
>Где гарантия, что увеличив на gf4mx кол-во патчей в 10 раз (при этом сократив их полигональность) получим увеличение fps?
Да, с их гамой я протупил. Я же не думал, что там такое жестокое CPU limited.
>Ты пробовал?
Да вроде. Я же говорил, что на GF4MX Athlon1700+ , что выводить ~27000 тр-ков через VBO (правда через 10 буферов, т.к. 10 материалов, но не суть важно), а что выводить через glBegin/glEnd разницы почти нет (1-2%), причём в последнем случае на каждый тр-к вызывается не только glBegin/glEnd, а ещё и glBindTexture для полного счастья (правда id текстур дублируется, есс-но, но вроде драйвер это не разруливает).
А потому на GFMX-ах батчи поменьше должны быть, геометрич. процессор довольно слабый, пока определит, что вершина не видна, много времени потратит.

#96
13:30, 4 апр. 2005

tav
Я искренне верю, что хотел :) и даже помог. В любом слечае, релизная версия (если она вообще будет когда либо существовать) будет идти с нормальным ФПС. Это очевидно :)
Сейчас мы вообще жуком не занимаемся. Он пока дожидается своей участи. Думаю, дожется. Но вот в какой роли, пока не ясно. :)

Прошло более 7 лет
#97
14:26, 20 апр. 2012

Извиняюсь за некрофилию)
У кого-нибудь завалялись может архив с игрой и исходники?) Очень нада)

Страницы: 1 2 3 4 5 6 7
ФлеймФорумОбщее

Тема в архиве.