Привет качество текстурирования - PullRequest
0 голосов
/ 11 июня 2010

Я полностью новичок в Open GL, поэтому есть вопрос. Мне нужно нанести высококачественное текстурирование на поверхность, представленную треугольниками. Но при увеличении я продолжаю видеть треугольник под кожей, он не гладкий. Я использую OpenGL встроенный minMapping. Так что мне интересно (посмотрите на другие продукты) мне нужно реализовать свой собственный алгоритм mipMapping или я делаю что-то не так?

Это то, что я хочу, больше или меньше, как качество: альтернативный текст http://www.freeimagehosting.net/uploads/abc871d274.jpg

Хорошо, вот что я получил: альтернативный текст http://www.freeimagehosting.net/uploads/83a52b1039.jpg

Как вы видите, треугольники отчетливо видны. Вместо этого на изображении лучше, даже после увеличения (я смотрел видео)

Ответы [ 5 ]

1 голос
/ 11 июня 2010

Как вы сказали, у вас 8х8 текстур, это ужасно мало, попробуйте хотя бы с 256х256 или 512х512 текстур.

1 голос
/ 11 июня 2010

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

0 голосов
/ 30 июня 2010

ОК, похоже, я нашел решение.Это на самом деле сглаживание вершин и кубическое отображение, которое создает блестящее отражающее изображение.

0 голосов
/ 11 июня 2010

Я добавлю другое мнение и скажу, что это проблема затенения.Хорошая версия использует что-то вроде затенения Гуро для сглаживания.Вот видео с YouTube, иллюстрирующее эффект OpenGL GLSL Gouraud Shading , поэтому мое первое предположение состоит в том, что вам нужно включить затенение.

0 голосов
/ 11 июня 2010

Как говорили другие, это не проблема текстуры - это проблема тасселляции.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...