lexpexkex (lexpexkex) wrote,
lexpexkex
lexpexkex

Categories:

Небольшой прогресс в генераторе персонажей.

Было

Стало


Это если в текстуре хранить разницу между базовой формой и другими, а не полностью координаты.
Из хорошего - ну как бы результат налицо. Уже похоже.

Из плохого. Всё ещё большая ошибка флоата. Чтобы избавиться от отрицательных чисел, я вынужден прибавлять к значениям 0.5 (максимальная разница в полметра между вершинами базиса и формы, этого вполне хватает), а потом вычитаю, чтобы получить исходное значение. В итоге получается, если разницы между вершинами нет, она нулевая. Прибавляем к ней 0.5 и считываем уже не 0.5, а 0.498. И уже у этого вычитаем 0.5. И получается отнюдь не 0. Так что точность хромает. Вершина подвинута. Для простеньких моделей из симсов сойдёт, но хотелось бы большего. И я не знаю, как можно увеличить точность. Это плохо. Есть разница между реальным блендшейпом и этим результатом.

Также из-за этой неточности всё ещё заметны дыры в сетке. И здесь либо нужно будет составлять список одинаковых вершин (одна и та же вершина принадлежит разным треугольникам и дублируется, в нормальной сетке 4 одинаковых вершины и их координаты должны совпадать, чтобы не было разрывов). Похоже, что разрывы возникают там, где UV-разрезы. И я сомневаюсь, что шейдер сможет это исправить. Проблема в том, что это надо делать на процессоре. Что долговато, но уже приемлемо (максимум 200 мс, в идеале 50). Вот ещё бы придумать способ, как искать швы на UV-развёртке...

Дальнейшие планы на выходные - перейти к шейдерам. Мне нужно замиксить кучу этих картинок. Быстро. ОЧЕНЬ быстро. Мне повезло, что код к этому фрагментному шейдеру встречается в примерах документации)) Более того, это не трудно сделать в визуальном редакторе. Надеюсь только на результат не наложится какое-нибудь блядское сглаживание или ещё чего.
Второй этап - в вершинном шейдере сдвигать вершины на значение цвета. Код тоже описан в примерах. И тут мне любопытно, есть немалый шанс на то, что разрывов автоматически не будет, так как их нет в том же примере, где из плоскости делают ландшафт.
Остаётся только вопрос в сохранении положения вершин. Короче, надо изучать шейдеры.
Это единственный путь добиться необходимой мне скорости.
Subscribe

Recent Posts from This Journal

  • Ну, если москали уберутся, то хорошо.

    Что тут ещё сказать? Война не радует. Учения закончены, если начнут возвращаться в Каспий и Сибирь, то ОК. Непонятно, правда, зачем такой переход из…

  • Настала пора выполнять предвыборные обещания.

    Кандидат в президенты Украины, шоумен Владимир Зеленский, лидирующий в предвыборной гонке, в интервью телеканалу «1+1» объяснил свои слова о…

  • О ВСУ.

    Тут мне закидывают, что ВСУ имеют сравнимую численность с собравшейся группировкой, и легко наберут миллион для защиты Родины, отражения агрессии и…

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

  • 4 comments