HLFX.Ru Forum Страницы (3): [1] 2 3 »
Показать все 36 сообщений этой темы на одной странице

HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- OpenGL (https://hlfx.ru/forum/forumdisplay.php?forumid=7)
-- Демка скелетной анимации на GPU (https://hlfx.ru/forum/showthread.php?threadid=2987)


Отправлено CrazyRussian 06-09-2011 в 08:49:

Демка скелетной анимации на GPU

Прикрутил в свой движок сабж, результат порадовал - 1.5 миллиона треугольников в кадре дают 35 фпс, ну почти как в крузисе , в то время как в халфе та же сцена дает только 5 фпс, бонусом получился бампмаппинг на моделях.

Кости считаются на цпу, вершины трансформируются на гпу, плюс заместо глБегин - глЕнд юзается VAO и индескные буфферы, вполне вероятно немалую часть прироста фпс дают именно они.

Скачать и пощупать можно по ссылке - http://rghost.ru/20610311
Внимание - если у вас нету четвертых шейдеров и опенгл 3.0 - извините вы в пролете. В архиве Generic Engine, две карты для теста - Alyx выводит 32 выскополигональных аликс - 1.5 миллиона треугольников, моделька сделана Алексом Гордоном, Freeman - 32 высокополигональных фримена - 170 тысяч треугольников, моделька хз кем сделана.

Спасибо Дяде Мише за "Волшебный код" генерации треугольников из студио модельки, без него бы это не получилось, и Ксероксу за поддержание работоспособности этого сайта и предоставлении возможности писать на форуме

Для владельцев видеокарт фирмы ati есть надежда - на ati radeon hd 3850 демка работает.

__________________
Трагическая новость: Пятеро инженеров Casio умерли от смеха, узнав что Samsung анонсировали часы с заявленным временем работы в 25 часов


Отправлено XaeroX 06-09-2011 в 10:10:

80 fps когда все модели алиск в кадре, но:
1) нет анимаций (следовательно, в чем смысл нагружать гпу? Посчитай кости на цпу один раз и юзай инстансинг, будет еще быстрее)
2) нет сглаживания треугольников модели (глюк самой модели?)
3) какое-то странное освещение, одна рука совсем яркая, вторая обычная.
4) чем ты засылаешь 128 юниформ-матриц в шейдер? Что будет с фпс, если будет не куча аликсов, а куча разных скелетов с разными матрицами?

ЗЫ: как выключить всинх в движке? А то пришлось лезть в панель управления нвидиа.

__________________

xaerox on Vivino


Отправлено CrazyRussian 06-09-2011 в 10:31:

Цитата:
XaeroX писал:
1) нет анимаций (следовательно, в чем смысл нагружать гпу? Посчитай кости на цпу один раз и юзай инстансинг, будет еще быстрее)

В этом то и фишка что кости каждый кадр считаются
Цитата:
XaeroX писал:
2) нет сглаживания треугольников модели (глюк самой модели?)

Цитата:
XaeroX писал:
какое-то странное освещение, одна рука совсем яркая, вторая обычная.

Да с этим надо еще работать, возиться и т.д.
Цитата:
XaeroX писал:
4) чем ты засылаешь 128 юниформ-матриц в шейдер? Что будет с фпс, если будет не куча аликсов, а куча разных скелетов с разными матрицами?

Шлются каждый при отрисовке, так что наверное ничего не измениться.
Цитата:
XaeroX писал:
как выключить всинх в движке?

А никак .
ЗЫ: r_studio_gpu 0 позволяет отключить это дело и насладиться прелестями скелетки на цпу

__________________
Трагическая новость: Пятеро инженеров Casio умерли от смеха, узнав что Samsung анонсировали часы с заявленным временем работы в 25 часов


Отправлено Дядя Миша 06-09-2011 в 10:58:

CrazyRussian вообщем исследуй все аспекты, доводи до ума.
Может даже потом тутор напишешь, как в ксаш добавить.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено XaeroX 06-09-2011 в 11:20:

Цитата:
CrazyRussian писал:
А никак

Сунь вот это куда-нибудь в инит:
C++ Source Code:
PFNWGLSWAPINTERVALEXTPROC wglSwapIntervalEXT = (PFNWGLSWAPINTERVALEXTPROC)wglGetProcAddress("wglSwapIntervalEXT");
if (wglSwapIntervalEXT) wglSwapIntervalEXT(0);

__________________

xaerox on Vivino


Отправлено Дядя Миша 06-09-2011 в 13:15:

нет, надо каждый кадр обновлять

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено LeFront 06-09-2011 в 13:58:

Не везет мне с твоим движком.
Модели появляются только когда фключаеш фанарик. 10 fps. Ну и прочие вкосности.
Конфиги компа
Amd athlon 64 x2 2.0 ghz. 3гб озу
Ati mobility radeon HD4570.


Отправлено CrazyRussian 06-09-2011 в 14:21:

Цитата:
XaeroX писал:
какое-то странное освещение

Tangent:

наверное надо сглаживать его . В некоторых местах он черный потому что в диапозоне [-1,1]

Цитата:
XaeroX писал:
чем ты засылаешь 128 юниформ-матриц в шейдер?

glUniformMatrix4fv(pXAL->GetNamedParam("Bones"), 128, GL_FALSE, &m_pBoneTransform[0][0][0]);
Да да знаю, GetNamedParam тоже наверное надо заменить на заранее полученый индекс.

Кстати, есть какой нить вариант заставить компилятор GLSL на ati выдавать более подробный лог компиляции чем "Вертексный шейдер скомпилировался, фрагментный нет" ?

__________________
Трагическая новость: Пятеро инженеров Casio умерли от смеха, узнав что Samsung анонсировали часы с заявленным временем работы в 25 часов


Отправлено XaeroX 06-09-2011 в 18:01:

LeFront
Ну он же сразу русским ртом сказал -

Цитата:
CrazyRussian писал:
если у вас нету четвертых шейдеров и опенгл 3.0 - извините вы в пролете

Куда ж ты со своим HD4570 полез? Ещё бы ривуТНТ взял..

Цитата:
CrazyRussian писал:
наверное надо сглаживать его

А как же.

Добавлено 07-09-2011 в 01:01:

Цитата:
CrazyRussian писал:
есть какой нить вариант заставить компилятор GLSL на ati выдавать более подробный лог компиляции чем "Вертексный шейдер скомпилировался, фрагментный нет" ?

Приехать в офис ати с двумя ингрэмами, как на скрине?

__________________

xaerox on Vivino


Отправлено PLut 06-09-2011 в 18:44:

XaeroX Radeon HD3650 AGP нормально всё, разве что 10 фпс.

__________________
Base Defense on Steam, ModDB


Отправлено XaeroX 06-09-2011 в 18:51:

PLut
Ну он не поддерживает OpenGL 3.0
У самого HD4650 AGP, мучаюсь вот с ним. Оно конечно через расширения можно, а вот контекст полноценный 3.0 создать нельзя.

__________________

xaerox on Vivino


Отправлено Дядя Миша 06-09-2011 в 19:35:

Цитата:
PLut писал:
Radeon HD3650 AGP нормально всё, разве что 10 фпс.

угу и в ксаше - 11

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Skaarj 06-09-2011 в 20:11:

Так и должно быть?


Отправлено fire64 06-09-2011 в 21:29:

Я маньяк
Я запустил это, на GF 5200 и получил ошибку в приложении

__________________
Вся сила лысого кощея,
Сокрыта в башне из костей
Воздвигнутой, под небесами
На месте похорон людей


Отправлено XaeroX 06-09-2011 в 21:46:

EPIC FAIL!!!!!!!!111!!1!!!

__________________

xaerox on Vivino


Временная зона GMT. Текущее время 23:38. Страницы (3): [1] 2 3 »
Показать все 36 сообщений этой темы на одной странице

На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024