Coder Social home page Coder Social logo

Comments (7)

YourWaltNightmare avatar YourWaltNightmare commented on June 25, 2024 1

Извеняюсь. Я ее случайно закрыл, пока пытался разобраться с работой Гитхаба :)

Да. Проблема была в этих двух вершинах:
image

На скриншоте видно, что нормали не туда смотря, а все из за того, что между полигонами были еще полигоны....
image

Удалил, поправил геометрию меша и сразу все стало работать как надо.
image

from blender-xray.

PavelBlend avatar PavelBlend commented on June 25, 2024

@YourWaltNightmare про сглаживание я недавно написал в wiki:
https://github.com/PavelBlend/blender-xray/wiki/Smoothing

Острые рёбра могут пропасть, если полигоны плоские:
01

Это связано с тем, что в ogf файлах нет границ сглаживания. Для сглаживания используются нормали вершин. Подробнее в вики по ссылке выше. Если на плоских полигонах пропадают sharp edges, то это нормально, так и должно быть, это не ошибка. Но если на выпуклых полигонах - то это ошибка и нужен пример файла. Я сейчас пытался сам создать пример, но не получилось.

Если сглаженное ребро становится несглаженным, то скорее всего это не критично, так как главное, чтобы направления нормалей совпадали. Визуально объекты до и после экспорта не будут отличаться, так как для ogf важны направления нормалей. Их можно включить здесь:
02

Я в принципе знал, что такое может быть, но не стал искать причину этого, так как результат в игре нормальный.

Сейчас пытался на простом примере воспроизвести ошибку и понял, что сглаженные рёбра становятся несглаженными, если у меша топология не корректная. Например, если есть накладывающиеся полигоны и кривая геометрия:
03

Вот пример файла:
test_ogf_smoothing.zip

Буду выяснять в чём причина. Скорее всего эта ошибка исчезнет, если исправить ошибки геометрии. Сделать так, чтобы поверхность меша была non-manifold'ой и чтобы не было T-соединений.

from blender-xray.

YourWaltNightmare avatar YourWaltNightmare commented on June 25, 2024

Спасибо за ответ!
Вот оно как.... Т.е. в данном случае, где ребра имеют sharp edges на плоской поверхности, в игре будут выглядеть нормально, т.к. нормали на вершинах правильные?
image

МБ из-за этого у меня на грозе в этом месте странный пересвет
image
image

Почитаю вики и поиграюсь еще.
Раньше я как раз использовал Максовский тип сглаживания, где полигоны нужно было делить на группы, пока не перешел полностью на Блендер.

from blender-xray.

PavelBlend avatar PavelBlend commented on June 25, 2024

Я открою эту issue, чтобы не забыть тщательнее изучить проблему.

from blender-xray.

YourWaltNightmare avatar YourWaltNightmare commented on June 25, 2024

"Сделать так, чтобы поверхность меша была non-manifold'ой и чтобы не было T-соединений."

Посмотрел все non-manifold'ные соединения. Они как раз находятся приблизительно там, где у меня проблемы со сглаживанием.
image

from blender-xray.

YourWaltNightmare avatar YourWaltNightmare commented on June 25, 2024

Убрал нон-монифолдные поверхности у мушки, целика и скобы спускового крючка (создал в дырах между гранями полигоны). Попробовал снова эскпорт в .ogf и импорт в Blender. Теперь в этих выделенных местах нету Sharp Edges на плоских поверхностях, как на предыдущем скриншоте:
image

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

Надо как то сделать так, чтобы сглаживание было в тех местах, где нам хочется, независимо от геометрии меша.

from blender-xray.

PavelBlend avatar PavelBlend commented on June 25, 2024

Понял. Посмотрю позже.

from blender-xray.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.