Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Программирование игр, графики и искусственного интеллекта > Развертка модели и наложение текстуры


Автор: DragonFire 24.4.2007, 14:25
Собственно вопрос вот в чем. 
У меня есть трехмерная модель, заданная массивом вершин и граней. Мне нужно построить плоскую развертку это модели и потом наложить, созданную по развертке, текстуру.
Какие существуют для этого алгоритмы, может ссылочкой кто поделится)
Програмлю на дельфях и ожл.. заранее благодарен.

Автор: WERITAS 4.5.2007, 17:39
Развертку в некоторых ситуациях (но не напрямую) умеет строить 3D-max и то это требует вмешательства программиста (существенного).

Зачем тебе делать развертку? Тебе развертка чтоб на модельку наложить текстурку? Если это модель какого-то человечка, то вряд ли у тебя это получится. Это чисто работа мозга! 


P.S. Саму текстуру в 3D-максе накладывай.

Автор: DragonFire 5.5.2007, 08:46
В том-то и дело что нужно програмно реализовать развертку как в 3Д максе, ну может попроще smile 

Автор: WERITAS 6.5.2007, 08:19
Если честно, то я даже ни разу не видел, чтобы такое программно делали, потому что это действительно очень сложно. Обычно просто редактирует в 3D-максе и сохраняют, а потом подгружает. 

Автор: Rickert 7.5.2007, 04:13
Думаю обоим будет полезно почитать, а потом ещё поискать там же:
http://www.gamedev.ru/articles/?id=60107
http://www.gamedev.ru/art/forum/?id=5660
http://www.gamedev.ru/art/forum/?id=54081
http://www.gamedev.ru/art/forum/?id=5797

На gamedev.ru есть ответы на 90% всех вопросов.

Автор: DragonFire 8.5.2007, 20:38
Пошел читать smile

Автор: DragonFire 9.5.2007, 15:20
Тогда такой вопрос - как на созданную модель наложить нормально текстуру, и как из ASE формата максовского считать координаты этой самой текстуры... Желательно под OpenGL примерчик с описанием нормальным...

Автор: Rickert 9.5.2007, 19:06
DragonFire, wotsit.org -> поиск -> ASE
Примеров по его открытию найдёшь кучу в гугле и яндексе.
Цитата(DragonFire @  9.5.2007,  15:20 Найти цитируемый пост)
Тогда такой вопрос - как на созданную модель наложить нормально текстуру

Что ты имеешь виду под "нормальной текстурой"?

Автор: DragonFire 9.5.2007, 23:16
ПРимеры то да только готовый код неочень помогает) нужны описания.
А нормальная текстура это текстура уже сделанная художником под расвертку...

Автор: Rickert 10.5.2007, 13:18
DragonFire, а ну тогда следующий вопрос: что значит "как наложить"? Легко и просто - имея uv координаты накладываешь по ним.

Автор: DragonFire 10.5.2007, 17:24
Цитата(Rickert @  10.5.2007,  13:18 Найти цитируемый пост)
имея uv координаты накладываешь по ним.

Вот про это и вопрос идет. Алгоритм, техника... Есть наверное статейки на эту тему на рууском, вот только я не нашел (

Автор: Rickert 10.5.2007, 19:09
DragonFire, если тебя интересуют мелочи/етали/досканальность, то иди на www.progz.ru -> OpenGL
А если просто наложение и с чем его едят - http://pmg.org.ru/nehe/nehe06.htm

Автор: DragonFire 10.5.2007, 20:46
Как наложить текстуру я знаю. 
Меня интересует как работать с координатами текстуры, которые выдает 3Д макс...
на прогз.ру не нашел интересующих меня статей...

Автор: Bitter 11.5.2007, 00:49
Цитата(DragonFire @  9.5.2007,  23:16 Найти цитируемый пост)
ПРимеры то да только готовый код неочень помогает) нужны описания.


Так в ASE ведь всё по английски написано, ну или понятные сокращения слов. Переводи и понимай.

Автор: cardinal 11.5.2007, 01:17
Глянь тут
http://graphics.cs.uni-sb.de/Courses/ws0607/cg/Termine.html
Там в sheet04 как раз задание с Texturing, а в MicroTrace есть решение задачи. Все на С++. По крайней мере будет понятно, что делать с u и v.

Автор: Rickert 11.5.2007, 07:54
DragonFire, на progz.ru -> OpenGL - там перевод красной книги OpenGL, там материала по текстурированию - завались!

Автор: DragonFire 11.5.2007, 19:31
Rickert, Завались то завались вот только про u и v нету ничего...
Bitter, Ага считать то допустим я смогу эти координаты текстуры а куда их девать я пытаюсь выяснить с самого начала темы...
cardinal, Действительно куча полезного, еще бы на русском  smile 

Автор: Rickert 12.5.2007, 01:36
DragonFire, хорошо, допустим нету. Что тебя именно интересует по uv кординатам? Общие сведения?

Автор: DragonFire 12.5.2007, 08:57
Rickert, Меня интересует откуда эти координаты берутся и как с ними работать в OpenGL.

Автор: cardinal 12.5.2007, 14:38
Тебе их генерит программа, в которой ты делаешь модель и натягиваешь на нее текстуру.

Автор: DragonFire 12.5.2007, 15:55
То что их генерит программа это понятно smile Тема тянется тянется а по существу еще никто ничего не написал... 
По каким алгоритмам программа генерит эти координаты? Как их использовать в приложениях OpenGL? Вот вопрос в чем конкретный...

Автор: Rickert 12.5.2007, 16:32
Цитата(DragonFire @  12.5.2007,  15:55 Найти цитируемый пост)
По каким алгоритмам программа генерит эти координаты?

Она накладывается и расчитывается автоматически, а потом её очень долго корретирует моделер. AFAIK
Есть несколько спобов: кубическое/сферическое и автоматическое. Если я не ошибаюсь, то вокруг модели строится воображамая сфера / куб и их uv координаты (они могут быть расчитаны аналитически, в отличии от сложных моделей) как бы проектируются на соответствующие (лежащие напротив) вершины. Что-то такое.
Цитата(DragonFire @  12.5.2007,  15:55 Найти цитируемый пост)
Как их использовать в приложениях OpenGL?

Что значит "как использовать"? Как указать? www.yandex.ru -> "уроки NeHe" -> урок 6

Автор: cardinal 12.5.2007, 21:15
DragonFire, скачай программу http://www.blender.org/и поэкспериментируй, ты там сам можешь натягивать текстуру как хочешь...

Автор: DragonFire 15.5.2007, 07:35
Ответа так и не получил.
Но тема закрыта

Автор: Rickert 15.5.2007, 11:46
DragonFire, тебе дали всевозможные варианты ответов. Сформулируй чётко и ясно.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)