Форум

Постпроцессинговые эффекты, антиаллиасинг

15 июня 2015 15:52
Здравствуйте, уважаемая команда blen4web. В очередной раз спасибо за отличный движок и приятное сообщество.
Уже давно в процессе разработки мы имеем дело с проблемой, которая скорее раздражает, нежели чем мешает.
Такое ощущение, что не работают постпроцессинговые эффекты, а в частности - антиаллиасинг (я ведь правильно понимаю, что это- сглаживание). В результате в нашей 3д сцене при поворте камеры на стыках текстур видно мелкую рябь.
Подскажите пожалуйста, как включить сглаживание?
http://born2fish.ru - секреты рыбной ловли
15 июня 2015 16:09
Добрый день, и спасибо за хороший отзыв.
Не уверен, что вас интересует именно антиалиасинг. Сильнее всего он проявляется на ребрах 3D моделей в виде лесенки. Его можно включить в настройках сцены, как описано здесь.

Если у вас не работает весь постпроцессинг, могу предположить, что вы используете низкие настройки качества, задавая их через API.

Вы используете экспорт в HTML? Или пишете свое приложение?
Если второе, то нужно посмотреть, на вызов функции инициализации приложения. m_app.init()

19 июня 2015 12:57
Добрый день! Я приношу свои извинения, за столь долгий ответ - к сожалению только сегодня появилась возможность выйти в сеть. Теперь касательно моего вопроса:

Сильнее всего он проявляется на ребрах 3D моделей в виде лесенки.
Да, именно на ребрах 3д моделей этот эффект видно сильнее всего:


Так на модели этого дома верхние этажи явно выглядят как-то странно - рябь на гранях и нечетки линии.

Здесь на футбольном поле так же видно, что линии вратарской площади видно словно пунктиром, хотя, если подойти ближе, то они становятся четкими:


Если у вас не работает весь постпроцессинг, могу предположить, что вы используете низкие настройки качества, задавая их через API.
Вроде как пробовал устанавливать HIGH, ULTRA и CUSTOM, но проблема не решилась


Вы используете экспорт в HTML? Или пишете свое приложение?
Да, я использую экспорт. Вот фрагмент инициализации:
set_quality_config();

/*application initialisation*/
m_app.init({
    canvas_container_id: "canvas3d",
    callback: init_cb,
    pause_invisible: false,
    physics_enabled: true,
    alpha: false,
    key_pause_enabled: true,
    quality: m_cfg.P_CUSTOM,
    antialiasing: true,
    console_verbose: DEBUG
});

function set_quality_config() {
    m_cfg.set("quality", m_cfg.P_CUSTOM);
    if (m_main.detect_mobile())
        m_cfg.set("quality", m_cfg.P_LOW);
}



Спасибо!
http://born2fish.ru - секреты рыбной ловли
19 июня 2015 14:39
Вы выложили изображения с vk, которые, видимо, были ужаты при загрузке. Поэтому сложно что-то оценить. Лучше выложите изображения с оригинальным размером на наш хостинг.

Про второе изображение, тем не менее, можно кое-что сказать. Если я правильно понял - вы используете независимую геометрию для линий разметки. В таком случае при резких углах (как на вашем скриншоте) не поможет никакой антиалиасинг (кроме Supersampling-а). Это типичная проблема для графики реального времени и с этим борются уже много лет, но универсального решения с нормальной производительностью здесь нет. Возможно, в вашем случае лучше использовать текстуру. Или вовсе избегать таких экстремальных углов в приложении.

Но в любом случае лучше увидеть изображения высокого разрешения.
19 июня 2015 15:15
Спасибо за как обычно быстрый ответ ) Везде бы такую поддержку, как ваша.

оригиналы скриншотов:


http://born2fish.ru - секреты рыбной ловли
19 июня 2015 15:17
С футбольным полем все понял, спасибо..
А вот с "лесенкой" на ребрах верхних этажей дома - проблема та же? Дело в независимой геометрии? Какие есть пути решения - сделать градусы углов дома более высоким?
http://born2fish.ru - секреты рыбной ловли
19 июня 2015 16:15
Ответ на сообщение пользователя Shaman
С футбольным полем все понял, спасибо..
А вот с "лесенкой" на ребрах верхних этажей дома - проблема та же? Дело в независимой геометрии? Какие есть пути решения - сделать градусы углов дома более высоким?
Да. На скриншоте антиалиасинг работает. Но с такими артифактами он не может ничего сделать. По-идее в ULTRA ситуация должна быть несколько лучше. Полностью устранить этот эффект, к сожалению, невозможно.
В дальнейшем мы вынесем больше настроек антиалиасинга в блендер, и будет возможность настройками в какой-то степени нивелировать эти недостатки.
19 июня 2015 16:18
Большое спасибо за помощь! Будем пытаться найти решение. Отпишу по завершению!
http://born2fish.ru - секреты рыбной ловли
14 июля 2015 11:52
Тоже в тему. Думал, что можно решить((((

lodtransratio.png

Перевел проект из версии 15.04 в версию 15.06
Врубил кубическое отражение вместо планарного. ПОявилось много зубчиков . Играл со сжатием уровня детализации, антиалиасинг…. Может щее подскажете чего?
Коплю деньги на коммерческий B4W.
 
Пожалуйста, зарегистрируйтесь или войдите под своей учетной записью , чтобы оставлять сообщения.