mittorn писал: А я пропуск кадров анимации видел. Но не у монстров, а у игрока
Не в лотерею, а в казино, и не выиграл, а проиграл, и не волгу, а 10 рублей. А так в целом правильно. Я говорю, монстры мигают, крутятся вокруг своей оси, замирают в неестественных позах.
Цитата:
mittorn писал: Ну ладно, допустим в wsw/q2/q3 рендер говно
Не в них рендер говно. Старый ксаш говно неактуальное.
Цитата:
mittorn писал: приницпиального отличия рендера GS от ксашевого в плане используемых технологий нет.
Я тебе еще раз говорю поставь sv_check_errors 0. Она чудовищно фпс садит.
Дядя Миша я говорил сугубо о рендере, когда упоминал старый ксаш. Раз большинство движков предпочитают буфферизировать вертексы вместо glBegin и эмулировать этот glBegin когда он удобнее - значит вероятнее это оптимальней.
А sv_check_errors у меня и так 0. Просадки в клиенте - даже когда сервер не запущен. Пока что подозрения на освещение, но это только подозрения. Производительность рендера сложных брашей даже без лайтмап как-то не радует - полигонов там в десятки раз меньше чем в моделях - а тормоза всё равно заметны.
mittorn писал: Раз большинство движков предпочитают буфферизировать вертексы вместо glBegin и эмулировать этот glBegin когда он удобнее - значит вероятнее это оптимальней.
Да это вообще ерунда полнейшая. Сейчас предпочтительно все вертексы держать в видеопамяти. Бутылочное горло - оно в вот в этой прокачке кучи вертексов через узкую шину. А как ты прокачиваешь через глбегин или через массив вертексов ровным счётом не имеет никакого значения.
Т.е. рендерер минимально отвечающий современным стандартам сейчас имеется только в параное. И то там вылезли проблемы самой архитектуры.
А что касается самого ксаша, то там рендерер нельзя трогать ни в коем случае, т.к. очень многие моды цепляются к нему и пытаются чота там дорисовать. В любом случае подобная доработка сильно ухудшит стабильность. Поэтому я и вывел все эти рендер-интерфейсы, чтобы каждый мог в меру сил и способностей написать для своего мода кастомный рендерер уровня срузиса.
Дядя Миша разумеется, я знаю про VAO и VBO.
Но я говорио о тех случаях, когда нужно рисовать каждый кадр что-то новое и заранее построенный массив не применишь. чем различается gl1/gl2/gl3 в плане подходов к отрисовке примерно понимаю
mittorn писал: Но я говорио о тех случаях, когда нужно рисовать каждый кадр что-то новое и заранее построенный массив не применишь
в параное единственное, что рисуется не через VBO - это дождик БУзера.
Ну и еще спрайты. Но эти просто лень было. Причём VBO этот не обновляется никогда.
Придётся видимо что-то с этим делать. Текущий рендер отлично вписывается в тот ксаш, который запускается под windows (благо, fps почти всем хатает) и пускает моды в dll. Но за пределами этого мира он почти бессилен. Толькл opengl core profile позволяет использовать одновременно legacy рендер и современные фичи. Андройдовый порт сейчас прибит гвоздями к gl es 1. А это значит что несмотря на то, что оборудование поддержмвает и шейдеры и vbo м даже инстансинг, а в ксаше есть рендер интерфейс, ничего из этого использовать не выйдет. Просто потому что движок уже инициализировал контекст для opengl es 1 и с этим ничего нельзя поделять. Даже шейдер нельзя хагрузить чтоб фонарик в xashxt работал. А использовать opengl es 2 в двмжке не выйдет без серьёзных изменений потому что из него убрали много фич вроде работы с матрицами. Теперь там нужен шейдер и без шейдера ничего нарисовать в принципе нельзя. А это значит что уже нужен другой рендер. От которого не требуется иммитация процессов рендера GS, но который используеь технологии gl es 2.0. Тогда наконец можно будет использовать что-то большее чем gl1.
Вижу тут такое решенте : немного абстрагировать рендер от движка чтобы можно было выбрать один из нескольких хотя бы в компилтайме, хотя лучше в рантайме. В легаси рендере при этом ничего нн менять (или даже попытаться улучшитб совместимость). В новом же попытаться задействовать vbo и лайтинг на шейдерах - если я не ошибаюсь, в P2 это сделано.
И заодно софтрендер воскресить. В GS же он есть и моды с ним работают, если не дёрнают opengl напрямую, а процессора сейчас хватит всем - в 2016 то году, когда sse и avx, либо neon в каждом доме
Текс, отбой тревоги насчёт замирающей анимации и кручения монстров на месте - мой косяк был. Перевёл градусы в радианы, там где они были уже в радианах. Получилось интересно.
Добавлено 14-11-2016 в 21:55:
mittorn не-не, это уже ваши, так сказать заморочки. Я ничего трогать не буду. Здесь всё на своих местах ради совместимости.
Дядя Миша в параное есть такая штука как менюха и консоль движка. А ещё vgui. И я отлично знаю через какое "vbo" оно рисуется. Хотя посмотрев шейдеры и импорты паранои я разумеется заинтересовался в получении её исходников в качестве нового рендера для движка, в чём разумеется получил былинный отказ
mittorn писал: в параное есть такая штука как менюха и консоль движка. А ещё vgui.
консолька по буковке рисуется даже в срузисе. Ибо неважно.
Добавлено 15-11-2016 в 00:12:
Upd: ну вроде окончательно разобрался с глюками монстров - XDM тут непричём, моя вина. Но вот чейнджлевел на арктик инциденте вызывает устойчивый вылет, причём уровни самой халфы корректно меняются.
Добавлено 15-11-2016 в 01:36:
Вообщем, исправив некоторые ошибки под ксашем, я решил, так сказать, проверить под халфой и даже установил её. Нетутто было! Ни под вон версией, ни под стим версией ваш хвалёный XDM не работает. Мгновенно вылетает. Не помогает даже система контроля интерфейсов или как она там называется. Вот под ксашем - пожалуйста. Ну есть конечно небольшие вылеты иногда, но в целом - работает.
Это занимательный парадокс - на протяжении года заявлять о полной неподдержке ксаша, чтобы в итоге оказалось, что только под ним всё и работает. Может быть у меня конечно халфа калечная (такое вполне возможно). Ну тогда поделитесь со мной актуальной халфой.