Прикрутил в свой движок сабж, результат порадовал - 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 часов
80 fps когда все модели алиск в кадре, но:
1) нет анимаций (следовательно, в чем смысл нагружать гпу? Посчитай кости на цпу один раз и юзай инстансинг, будет еще быстрее)
2) нет сглаживания треугольников модели (глюк самой модели?)
3) какое-то странное освещение, одна рука совсем яркая, вторая обычная.
4) чем ты засылаешь 128 юниформ-матриц в шейдер? Что будет с фпс, если будет не куча аликсов, а куча разных скелетов с разными матрицами?
ЗЫ: как выключить всинх в движке? А то пришлось лезть в панель управления нвидиа.
XaeroX писал: 1) нет анимаций (следовательно, в чем смысл нагружать гпу? Посчитай кости на цпу один раз и юзай инстансинг, будет еще быстрее)
В этом то и фишка что кости каждый кадр считаются
Цитата:
XaeroX писал: 2) нет сглаживания треугольников модели (глюк самой модели?)
Цитата:
XaeroX писал: какое-то странное освещение, одна рука совсем яркая, вторая обычная.
Да с этим надо еще работать, возиться и т.д.
Цитата:
XaeroX писал: 4) чем ты засылаешь 128 юниформ-матриц в шейдер? Что будет с фпс, если будет не куча аликсов, а куча разных скелетов с разными матрицами?
Шлются каждый при отрисовке, так что наверное ничего не измениться.
Цитата:
XaeroX писал: как выключить всинх в движке?
А никак .
ЗЫ: r_studio_gpu 0 позволяет отключить это дело и насладиться прелестями скелетки на цпу
__________________
Трагическая новость: Пятеро инженеров Casio умерли от смеха, узнав что Samsung анонсировали часы с заявленным временем работы в 25 часов
Не везет мне с твоим движком.
Модели появляются только когда фключаеш фанарик. 10 fps. Ну и прочие вкосности.
Конфиги компа
Amd athlon 64 x2 2.0 ghz. 3гб озу
Ati mobility radeon HD4570.
наверное надо сглаживать его . В некоторых местах он черный потому что в диапозоне [-1,1]
Цитата:
XaeroX писал: чем ты засылаешь 128 юниформ-матриц в шейдер?
glUniformMatrix4fv(pXAL->GetNamedParam("Bones"), 128, GL_FALSE, &m_pBoneTransform[0][0][0]);
Да да знаю, GetNamedParam тоже наверное надо заменить на заранее полученый индекс.
Кстати, есть какой нить вариант заставить компилятор GLSL на ati выдавать более подробный лог компиляции чем "Вертексный шейдер скомпилировался, фрагментный нет" ?
__________________
Трагическая новость: Пятеро инженеров Casio умерли от смеха, узнав что Samsung анонсировали часы с заявленным временем работы в 25 часов
CrazyRussian писал: если у вас нету четвертых шейдеров и опенгл 3.0 - извините вы в пролете
Куда ж ты со своим HD4570 полез? Ещё бы ривуТНТ взял..
Цитата:
CrazyRussian писал: наверное надо сглаживать его
А как же.
Добавлено 07-09-2011 в 01:01:
Цитата:
CrazyRussian писал: есть какой нить вариант заставить компилятор GLSL на ati выдавать более подробный лог компиляции чем "Вертексный шейдер скомпилировался, фрагментный нет" ?
Приехать в офис ати с двумя ингрэмами, как на скрине?
PLut
Ну он не поддерживает OpenGL 3.0
У самого HD4650 AGP, мучаюсь вот с ним. Оно конечно через расширения можно, а вот контекст полноценный 3.0 создать нельзя.