LINUX.ORG.RU

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

 , ,


0

3

https://github.com/xverizex/asel

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

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

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

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

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

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

Ввёл в гугле «Про рыбу, рыбалку и голодного человека» (без кавычек), первая же ссылка: «Гнездовье бакланов, или У каждого свое Саргассово море».

Это что, такой тонкий троллинг всех собравшихся в этом треде?

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

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

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

Это пять!

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

Это пять!

Это сто девяносто. Именно столько тем создал на формуме ТС, если не считать трёх новостей и одной темы в галерее. Новости, кстати, тоже эгоцентричные.

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

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

Как отсутствует? Он уже стал способен на членораздельную речь, это большое достижение. Ещё лет 500 развития и из него выйдет ПХП макака.

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

«Хочешь накормить человека один раз — дай ему рыбу. Хочешь накормить его на всю жизнь — научи его рыбачить»

Не знать подобных афоризмов, все равно, что не знать пословиц и поговорок.

Без труда не вытащишь и рыбку из пруда, ты тоже не слышал?

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

Ввёл в гугле «Про рыбу, рыбалку и голодного человека» (без кавычек)
Это что, такой тонкий троллинг всех собравшихся в этом треде?

Нет, это твоя такая неспособность в гугл. https://pp.userapi.com/c841421/v841421248/7c2fb/0pA77waDJ1k.jpg

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

Предлагаю согреть его до конца его жизни.

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

понел

Интересно, если грепнуть все его сообщения на лоре, сколько раз встретится этот «понел»?

Нет сомнений, что этот чудик придуривается.

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

Не знать подобных афоризмов, все равно, что не знать пословиц и поговорок.

Да нет, общий-то посыл понятен, но конкретно этого афоризма я не слышал (да и с чего, если афоризм китайский?), вот и полез в гугл посмотреть, как он звучит слово в слово, и нарвался на бакланов. :-)

Нет, это твоя такая неспособность в гугл. https://pp.userapi.com/c841421/v841421248/7c2fb/0pA77waDJ1k.jpg

Ну и что ты хотел мне показать? У тебя там те же самые бакланы. Только у меня они были первыми, а у тебя идут вторыми после какой-то голой бабы (у меня, кстати, сейчас в другом браузере та же баба первой вывалилась). Или ты имел в виду выделенную синим ссылку? Так её я тоже читал (всё-таки многословны восточные мудрецы, русский то же самое сказал бы одной фразой, а у них — длинная притча), но бакланы-то идут раньше. :-)

В общем, непонятно, о чём спор: и у тебя, и у меня бакланы.

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

Не ПХП макака, очевидно же. Вообще принципиально стараюсь держаться от веба подальше, особенно от фронтенда. Мне хватило 90 минут чтобы понять что с css я вообще встречаться не хочу из-за того как он поддерживается в браузерах.

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

не понить

смотря от чего производить этот глагол: если от пони, то-таки как раз понить.

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

с css я вообще встречаться не хочу из-за того как он поддерживается в браузерах.

А что не так с его поддержкой в браузерах?

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

а я писать здесь не буду и всё.

Было бы здорово.

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

Это что, такой тонкий троллинг всех собравшихся в этом треде?

Стыдно не знать, о рыбалке и голодном. Обвинять других в троллинге потому, что вы этого не знаете, еще печальнее.

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

Он уже стал способен на членораздельную речь, это большое достижение.

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

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

Правильно писать: понял.

У него ещё есть «попробЫвать» и «заноГо».

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

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

У него и код так-же написан.
Надёрган из разных мест, зачем-то повторяются ненужные куски кода(без попытки как-то понять, а нафига он нужен).

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

У него и код так-же написан.

Да, я видел его код.

Надёрган из разных мест, зачем-то повторяются ненужные куски кода(без попытки как-то понять, а нафига он нужен).

Угу, он не пытается осознать то, что ему дают. Персонаж весьма странный.

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

его ариал шире, загугли он еще на mail.ru и там он появился раньше

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

а я писать здесь не буду и всё

Первая удачная мысль в твоей голове.

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

Угу, он не пытается осознать то, что ему дают

Бери выше, он просто не читает тред судя по коду. Ищет готовый код, и его копипастит.

linuhs_user
()

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

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

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

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

Стыдно не знать, о рыбалке и голодном.

Почему стыдно? Это же не китайский форум, а притча китайская.

Обвинять других в троллинге

Это было не обвинение, а восхищение. Бо если это был троллинг, то не просто тонкий, а просто тончайший!

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

Но это же был конкурс на самую нечитабельную программу. А если тебе надо сделать нечитабельным только какой-нибудь rm-rf, то и дефайнов для этого понадобится гораздо меньше. :-)

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

У нас есть, в данном случае, некий индивид, который использует чужие куски кода в решение своих задач, и обладает навыками чтения программ на неизвестном нам уровне, задача написать программу на с, которая будет чистить /home, но при этом на первый взгляд код должен быть нормальным и читабельным, чтоб индивид не догадался

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

Ну, решать конкретно эту задачу я не собираюсь, и не только потому, что это будет нарушением правил, но и просто это нехорошо (по крайней мере, я так считаю). Но чисто гипотетически мой метод вполне подходит. Пишешь более-менее понятный код (но не слишком понятный, чтоб совсем непонятный кусок не очень выделялся на фоне остального кода). Далее создаёшь несколько макросов, которые маскируют этот самый рм-рф или что-то подобное и равномерно распихиваешь их среди остальных макросов. Потом в каком-то месте вызываешь нужный макрос. Если индивид бегло просматривает программу и запускает её, то это сработает. Если же он внимательно изучает код, потом не менее внимательно изучает вывод препроцессора, запуская gcc с опцией -E, а потом ещё тщательно дебажит программу в виртуальном окружении с ограниченными правами, то такого индивида не провести. Ему, скорее всего, даже тухлый бинарник не удастся подсунуть, а об исходниках и говорить не приходится.

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

Правила форума не вырезаны в камне.

И это подтверждает данный тред, который по-хорошему следовало бы удалить, т. к. сообщений по теме я насчитал в нём ровно 1, да и то с натяжкой.

Но ведь помимо правил форума, существуют ещё и внутренние правила.

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

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

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

написать такой код сложно очень

Зависит от того, на кого этот код рассчитан. Т. е. от осторожности и квалифицированности объекта атаки.

Я думал о каких нибудь ассемблерных вставках

Можно и ассемблерными вставками. Но только при условии, что весь код ими напичкан. Потому что одна непонятно для чего созданная вставка привлечёт больше внимания, чем макрос. Кроме того, программа, написанная со вставками, будет плохо переносима даже между ia32 и amd64, о других архитектурах и говорить не приходится. Ну и между компиляторами тоже (встроенный ассемблер в gcc по дефолту отличается от встроенного ассемблера для большинства других компиляторов на архитектуре x86).

и попытке прямого доступа к устройствам без применения библиотек, еще одна проблема это защищённый режим, который ограничивает нас в правах

Если говорить о Линуксе, то можно непосредственно вызывать linux-api. Не прослойку posix, а чистый linux, который обычно не используется. Например, непосредственный вызов прерывания int 80h (то же, что досовское int 21h). А чтоб ещё сильнее запутать, можно обернуть эти вызовы в функции с непонятными или заведомо ложными названиями, а потом ещё вызывать их не напрямую, а через указатели (авось пока объект атаки будет разбираться в этих указателях, про то, что обозначают те или иные номера функций, посмотреть позабудет).

Но, опять же, всё это работает с более-менее беспечным объектом атаки. Осторожного и квалифицированного на бобах не разведёшь.

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

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

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

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

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

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

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

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