LINUX.ORG.RU

Помогите наложить текстуру в opengl

 , ,


0

3

https://github.com/xverizex/asel

Всё действие происходит в main.c

Программа загружает из data 3d модель и картинку. Картинку хочу использовать как текстуру. В blender делал модельку и создал uv рисунок. Нарисовал. Проверил как выглядит. Экспортировал в формат obj вместе с текстурными координатами.

Программа отображает модельку, но текстура наложена неправильно. Я когда раньше проверял загруженную картинку, то как то попробывал использовать glDrawPixels, она выводит рисунок какой он есть, это значит что я правильно перенёс рисунок. Только помню пришлось поменять направление на справа налево.

Что может быть не так? Как сделать, чтобы было правильно?

Когда же ты научишься самостоятельно находить материал для решения таких элементарных вопросов? Почти все темы из разряда «вытрите мне зад, я сам не умею»

anonymous
()
Ответ на: комментарий от anonymous

Никогда не научится. Как раз потому что ему снова и снова вытирают зад. Вообще не ясно, почему не удаляются тривиальные вопросы.

anonymous
()

Попробуй заниматься чем-то одним. Ну, то есть, хотя бы одним ЯП для начала.

anonymous
()
Ответ на: комментарий от anonymous

Еще странно, почему не удаляются бестолковые бессмасленные ответы, не несущие никакого смысла.

rumgot ★★★★★
()

Что может быть не так? Как сделать, чтобы было правильно?

Все не так. Загугли какие-нибудь статьи на эту тему, запусти дебаггер и пошагово разбери все.

Meyer ★★★★★
()

Используй уже наконец плюсы. И чтобы не писать каждый раз struct obj obj*, осиль уже typedef.

Meyer ★★★★★
()

Ты опять выходишь на связь?

Dudraug ★★★★★
()
Ответ на: комментарий от anonymous

Никогда не научится.

Согласен. Какой-либо прогресс отсутствует.

Как раз потому что ему снова и снова вытирают зад. Вообще не ясно, почему не удаляются тривиальные вопросы.

Тоже не могу понять тех, кто пытается решить его задачи.

andreyu ★★★★★
()

Судя по отсутствию осмысленных ответов, тут никто не знает. А вообще, скриншот с моделью в блендере и как оно выглядит в программе нужен. Попадая пальцем в небо - если v перевернуть (v = 1.0f - v), не чинится?

slapin ★★★★★
()
Ответ на: комментарий от andreyu

Тоже не могу понять тех

Ну вот тебе пример их мотивации, прямо под твоим постом. Человек посчитал, что все остальные просто глупы, а он умнее прочих. Тщеславие.

anonymous
()
Ответ на: комментарий от anonymous

Ну вот тебе пример их мотивации, прямо под твоим постом. Человек посчитал, что все остальные просто глупы, а он умнее прочих. Тщеславие.

Или не в теме, не понимает с кем дело имеет.

Dudraug ★★★★★
()
Ответ на: комментарий от Dudraug

Ну, если учесть, что весь тред до его сообщения, сама «тема» как раз и обсуждается, то я все же склоняюсь именно к смертному греху.

anonymous
()

При чём здесь C++, если у тебя в коде махровая сишка? Что у тебя в репозитории делают бинарники? Зачем эти бесконечные #if 1/#endif? Про сам код молчу уже, сил нет

XMs ★★★★★
()
Ответ на: комментарий от anonymous

Не, я на самом деле тоже не знаю. И код такой читать неохота. Просто почему человеку не помочь? Я то откуда знаю что тут воспитатели собрались.

slapin ★★★★★
()
Ответ на: комментарий от slapin

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

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

Dudraug ★★★★★
()
Ответ на: комментарий от slapin

Просто почему человеку не помочь?

Потому что это уже не помощь.

Про рыбу, рыбалку и голодного человека знаешь?

anonymous
()
Ответ на: комментарий от slapin

Я то откуда знаю что тут воспитатели собрались.

Это не первая его тема. В особые фазы луны он строчит по десятку тем в сутки со смыслом, который четко описал аноним в Помогите наложить текстуру в opengl (комментарий)

andreyu ★★★★★
()
Ответ на: комментарий от Dudraug

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

У меня иная мысль - человек законченный лентяй, который ожидает, что за него сделают правильно. Он совершенно не желает разобраться в вопросе.

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

Этот персонаж считает, что ему все должны помогать. Его детские попытки «да ты сам ничего не знаешь» и «помоги мне, это поможет тебе» совсем не красят его.

andreyu ★★★★★
()
Ответ на: комментарий от andreyu

Его детские попытки «да ты сам ничего не знаешь» и «помоги мне, это поможет тебе» совсем не красят его.

А я ему предлагал как-то писать с указанием цены ;)

Meyer ★★★★★
()
Ответ на: комментарий от Silerus

Не-не, все как сказал andreyu - детские попытки взять на понт.

Meyer ★★★★★
()

Увидеть бы как должно быть и как неправильно. Может Y координату перевернуть надо, может RGBA заменить на RGB, Может у тебя вообще текстура с FLOAT данными внутри.

pozitiffcat ★★★
()
Ответ на: комментарий от Dudraug

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

Только в некотором случае может быть так, что ты сам незнаешь как это делается, и получается тебе платят деньги, чтобы ты научился сначала как делать, а потом сделал. А если ты незнаешь, то что тебе платить деньги?

u0atgKIRznY5
() автор топика
Ответ на: комментарий от slapin

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

u0atgKIRznY5
() автор топика
Ответ на: комментарий от pozitiffcat

Может у тебя вообще текстура с FLOAT данными внутри.

Я проверю, но такого быть не может быть. Так как рисунок только в пикселях, а значит в int.

может RGBA заменить на RGB

Не пробывал, попробую, но вряд ли.

Может Y координату перевернуть надо

Как это? Перевернуть в рисунке или в модельке?

u0atgKIRznY5
() автор топика
Ответ на: комментарий от u0atgKIRznY5

Я говорю, что за то что тебе тут «подтирают жопу» и делают гуглеж за тебя ТЫ должен платить НАМ.Потому что это уже не вопросы о помощи, а банально твоя лень и поиск халявы.

Dudraug ★★★★★
()
Ответ на: комментарий от Meyer

Я потом на плюсах писать буду, когда научусь и когда шейдеры использовать буду. А пока на сишке, потому что основное уже было написано. И неохота проектировать это, пока ничего нет.

Все не так. Загугли какие-нибудь статьи на эту тему, запусти дебаггер и пошагово разбери все.

А как я в дебагере пойму, если код выполняется без ошибок. Здесь только логическая ошибка.

u0atgKIRznY5
() автор топика
Ответ на: комментарий от Dudraug

Я прежде чем написать долго искал в google, читал книжку по текстурированию. Ответа нужного не нашёл.

делают гуглеж за тебя ТЫ должен платить НАМ

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

u0atgKIRznY5
() автор топика
Ответ на: комментарий от u0atgKIRznY5

Я прежде чем написать долго искал в google, читал книжку по текстурированию.

Я не про данный конкретный вопрос. Ты в целом создаешь настолько много тем и задаешь так много вопросов, что появляются такие вот мысли.

Dudraug ★★★★★
()
Ответ на: комментарий от u0atgKIRznY5

то можешь быть уверен, что ты в этом вопросе так и останешься незнайкой.

Я? У меня есть работа и я не создают по 100500 тем=)

Dudraug ★★★★★
()
Последнее исправление: Dudraug (всего исправлений: 1)
Ответ на: комментарий от Dudraug

Ты в целом создаешь настолько много тем и задаешь так много вопросов, что появляются такие вот мысли.

Ну мне интересно как можно решить проблему. Много тем, потому что я мало в этих вопросах понимал, это же очевидно. Да и иной раз показать правильную ссылку, если сам не знаешь, будет хорошо.

u0atgKIRznY5
() автор топика
Ответ на: комментарий от slapin

Эти кривляния с «вы тупые, раз мне жёппу подтереть не можете»

Кто нибудь, уже найдете чем ребёнку заняться кроме лора.

anonymous
()
Ответ на: комментарий от slapin

Да потому что он скорее всего и ирл такой отбитый, хотя думает что толсто троллит.

anonymous
()
Ответ на: комментарий от u0atgKIRznY5

Ну мне интересно как можно решить проблему.

Мои полномочия на этом все...

Dudraug ★★★★★
()
Ответ на: комментарий от anonymous

На работе как раз за такое обучение на ходу и платят.

Слышал о таком. Когда программист устраивается на работу и обучается несколько месяцев по теме какой нибудь, и ему платят зарплату.

Но это же на работе. Мне же никто не платит, чтобы я искал информацию, которая мне нужна.

u0atgKIRznY5
() автор топика
Ответ на: комментарий от u0atgKIRznY5

Мне же никто не платит, чтобы я искал информацию, которая мне нужна.

Поэтому ты тратишь время других людей.

Dudraug ★★★★★
()
Ответ на: комментарий от u0atgKIRznY5

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

Такое бывает, но обычно не так. Обычно есть задача и часто она связана с тем, что ты не знаешь чего-то. Тебе приходится читать маны, стандарты, гуглить, искать похожие темы на форумах, ДУМАТь в конце концов, потом еще раз все повторить. И только потом спросить на форуме самому. А ты хочешь все быстро и сразу.

Dudraug ★★★★★
()
Ответ на: комментарий от Dudraug

А ты хочешь все быстро и сразу.

Тут уже вряд ли что-то измениться. Если никто не знает, то вряд ли уже кто то станет совершенствоваться. Поэтому если я пойму как надо, а другие так и не будут знать, то что мне делать? Написать как правильно, и облегчить понимание для других как надо писать, или скрыть знания, и пусть все остаются в не доумении? Я думаю раз все думают что поисковик поможет, то пускай сами потом ищут ответы, а я писать здесь не буду и всё.

u0atgKIRznY5
() автор топика
Ответ на: комментарий от Dudraug

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

Silerus ★★★★
()
Ответ на: комментарий от ox55ff

Для моего компьютера unreal engine слишком медленный. Приходиться ждать даже пока шейдеры скомпилятся. Как вариант могу использовать unity3d. Но то что я делаю, ну вот это текстурирование, это меня интересует, как должно работать.

u0atgKIRznY5
() автор топика
Ответ на: комментарий от ox55ff

Ну я запускал же. Когда запускается окно ue, появляется сообщение о компиляции шейдеров. Очень долго ждать, памяти много требует, у меня всего 4 гига. Unity3d нормально работает.

u0atgKIRznY5
() автор топика
Ответ на: комментарий от u0atgKIRznY5

Так как рисунок только в пикселях, а значит в int

в UNSIGNED_BYTE тогда уж

Как это? Перевернуть в рисунке или в модельке?

в твоем коде в момент загрузки делать не tex_coord_v = data.v, а tex_coord_v = 1.0f - data.v (псевдокод)

pozitiffcat ★★★
()
Ответ на: комментарий от pozitiffcat

в UNSIGNED_BYTE тогда уж

Ну да.

в твоем коде в момент загрузки делать не tex_coord_v = data.v, а tex_coord_v = 1.0f - data.v (псевдокод)

Не понел.

u0atgKIRznY5
() автор топика
Ответ на: комментарий от u0atgKIRznY5

Если ты и это, цитирую,

Не понел.

то у меня для тебя плохие новости

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.