Russian Qt Forum

Qt => 2D и 3D графика => Тема начата: Igors от Сентябрь 30, 2012, 18:43



Название: Проблемы displacement
Отправлено: Igors от Сентябрь 30, 2012, 18:43
Добрый день

Речь идет о реальной задаче, что значит: есть проблема, есть интерес к ее решению (не праздный). Однако как решать - хз, более того неизвестно есть ли решение вообще.

Дано: карта высоты (первая картинка) 2 байта на точку. Эта карта бросается на mesh 200x200 вертексов. Нормали к поверхности пересчитываются по той же карте для каждого пикселя. Результат показан на второй картинке, вполне usable, но имеет дефект "траурной каймы". Наставив больше лампочек можно замаскировать этот дефект (здесь один источник света от камеры).

Нужно: убрать этот дефект полностью или, на худой конец, погасить/уменьшить его.

Спасибо


Название: Re: Проблемы displacement
Отправлено: navrocky от Сентябрь 30, 2012, 20:20
Для непосвященных поясните, что за эффект "траурной каймы"? Гугель выдает "Что такое траурная кайма под ногтями?"


Название: Re: Проблемы displacement
Отправлено: Igors от Октябрь 01, 2012, 09:48
Для непосвященных поясните, что за эффект "траурной каймы"? Гугель выдает "Что такое траурная кайма под ногтями?"
Ну что же Вы гуглите так наивно? :) Попробуйте хотя бы black outlines. И на картинку смотрите - там все хорошо видно.


Название: Re: Проблемы displacement
Отправлено: navrocky от Октябрь 02, 2012, 14:40
Вершины гор черные, это что-ли? Не вижу тут никакого криминала - везде так рендерится. Поднимите выше источник света, увеличьте детализацию гор. Фоновое освещение можно добавить... И да, больше источников света здесь помогут.


Название: Re: Проблемы displacement
Отправлено: Igors от Октябрь 02, 2012, 16:52
Вершины гор черные, это что-ли? Не вижу тут никакого криминала - везде так рендерится.
Насчет "везде" не знаю. Лучше сказать что проблема не связана с конкретным рендером. Напр используя OpenGL с той же геометрией и нормалями - результат будет в принципе тот же (хотя и не 100% совпадения)

Поднимите выше источник света, увеличьте детализацию гор. Фоновое освещение можно добавить... И да, больше источников света здесь помогут.
Предмет обсуждения - как решить проблему (а не как ее замаскировать  :))


Название: Re: Проблемы displacement
Отправлено: navrocky от Октябрь 02, 2012, 17:33
Я думаю, этот вопрос надо задать на каком–нибудь специализированном форуме по 3d графе, там может кто ответит. Может с моделью заливки поиграться (гуро, фонг там какой на шейдерах...)


Название: Re: Проблемы displacement
Отправлено: Igors от Октябрь 02, 2012, 17:54
Я думаю, этот вопрос надо задать на каком–нибудь специализированном форуме по 3d графе, там может кто ответит.
Не надо так упрощать - целью поста не было "получение ответа", здесь он вряд ли возможен, что я особо и не скрывал. Интересны люди которые занялись бы этой (и другими) задачами. В первую очередь нужны интерес и желание, которых я (пока) не наблюдаю. Ну я никуда не тороплюсь.

Может с моделью заливки поиграться (гуро, фонг там какой на шейдерах...)
Ой  :)


Название: Re: Проблемы displacement
Отправлено: navrocky от Октябрь 02, 2012, 19:50
Может с моделью заливки поиграться (гуро, фонг там какой на шейдерах...)
Ой  :)
Я когда-то страдал немного 3д графикой в институте, сейчас уже далёк от этих штучек, могу по дилетанстки выражаться =)


Название: Re: Проблемы displacement
Отправлено: Igors от Октябрь 02, 2012, 20:07
Я когда-то страдал немного 3д графикой в институте, сейчас уже далёк от этих штучек, могу по дилетанстки выражаться =)
Ничего страшного, и, кстати, формально Вы правы. Gourand - упрощенный шейдинг, освещенность считается в вертексах и интерполируются по полигону. Ну и соответственно нормали к поверхности нужны только в вертексах. Практически это давно нужно только тем кто отчаянно "выжимает fps". Конечно с Gourand проблемы "каймы" не будет, но все мелкие детали будут просто утеряны.