Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C/C++: Мультимедия, OpenGL/DirectX > Наложение текстуры на сферу |
Автор: toshun 4.2.2009, 22:28 |
Всем привет. У меня возникли проблемы с наложением текстуру на сферу, построенную из вершин и граней, считываемые из файла .obj. Сначала я делаю модель солнечной системы в blender'е, а потом экспортирую в .obj формат. Потом в Qt при использовании OpenGL я строю солнечную систему. Все отлично строится. И вот хочу наложить текстуру на данную сферу, но накладывается не очень хорошо. Вот что я делаю. 1) Перевожу декартовы координаты каждой вершины в сферические. 2) Нормирую их. 3) Собственно накладываю координаты на каждый полигон. (в сферических координатах получается не x,y,z, а r, theta, phi. и в качестве координат я беру theta и phi) Но не совсем правильно наложилась текстура на сферу (см рисунок). Что не так? Может кто нибудь знает как это делается? |
Автор: Rickert 10.2.2009, 08:12 |
Зачем переводите координаты в сферическую систему? Сначала попробуйте без перевода, если всё будет нормально - значит ошибка в расчётах. По крайней мере так и выглядет. |
Автор: toshun 10.2.2009, 12:59 | ||
сами мои координаты вершин в декартовой системе, и объекты строются по декартовым координатам. Я параллельно перевожу декартовы координаты в сферические и текстурные координаты у меня получаются сферические. |
Автор: toshun 10.7.2011, 22:28 |
Еще раз всем привет. В блендере создал сферу, наложил на нее текстуру. Экспортировал в obj формат. В Qt считываю этот файл и рисую по полигонам и треугольникам мою сферу. Рисуется отлично, но текстура накладывается фигово. Есть ли какой-нибудь способ наложить правильно текстуру на сферу, построенную саморучно из полигонов? |
Автор: akaleda 7.11.2013, 21:26 | ||
Доброго времени суток! Удалось ли Вам справиться с заданной проблемой? |
Автор: EgoBrain 8.11.2013, 03:58 |
Саморучно, значит спомощью редактора? Если да, то текстурные координаты тоже проще задать в нём же. Вот эта http://forum.vingrad.ru/forum/topic-368071.html может пригодится. |