Страницы:1

Ответить
Загрузка, текстурирование и визуализация 3D моделей в OpenGL. Формат ASE. Часть 2.
 

Загрузка, текстурирование и визуализация 3D моделей в OpenGL. Формат ASE. Часть 2.

В этой заключительной главе мы доработаем приложение, которое будет отвечать за визуализацию трехмерного объекта из формата ASE. Приложение будет поддерживать текстурирование загруженного объекта с учетом текстурных координат. В конце урока вы можете увидеть пример экспортированных объектов из 3D Max и их визуализацию в приложении.
information must be free for all
 
Отсутствует определение функции SetMaterialNom в классе Limb.

О том, что в Form_Load надо вставить код

Код
Gl.glBlendFunc(Gl.GL_SRC_ALPHA, Gl.GL_ONE_MINUS_SRC_ALPHA);
 Gl.glEnable(Gl.GL_BLEND);
 Gl.glEnable(Gl.GL_LINE_SMOOTH);
 Gl.glLineWidth(1.0f);

нигде не упоминается, а догадаться невозможно.

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

О назначении тех или иных функций необходимо просто догадываться.
 
Также имеется ошибка в использованном в статье коде функции CreateList:

из фрагмента кода
Код
 Gl.glNormal3f(n1, n2, n3);

// если установлена текстура 
if(textureIsSet)
if (limbs[l].NeedTexture() && (limbs[l].t_vert != null) && (limbs[l].t_face != null))
  { // устанавливаем текстурные координаты для каждой вершины, ну и сами вершины 
необходимо исключить  
Код
if(textureIsSet)
Иначе модель не рисуется.
 
У меня возникла проблема с текстурами.
В 3ds max текстуры накладываются ровно, а в программе очень очень криво. В чем может быть проблема?
 
Цитата
В 3ds max текстуры накладываются ровно, а в программе очень очень криво. В чем может быть проблема?
Скорее всего где-то ошибка в назначении текстурных координат.
А если откомпеллировать архив с кодом к уроку и попробовать зашу модель загрузить в нем? Так же не корректно отображается?
 
Цитата
Анви Анви пишет:
Цитата
В 3ds max текстуры накладываются ровно, а в программе очень очень криво. В чем может быть проблема?
Скорее всего где-то ошибка в назначении текстурных координат.
А если откомпеллировать архив с кодом к уроку и попробовать зашу модель загрузить в нем? Так же не корректно отображается?
Да. Так же ровно. Уже шаманила и переводила модель в треугольники, потому как растягивается именно так. И размер текстур меняла. Все так же.
 
Возм. тогда имеет смысл с дебагером  посидеть и посверять текстурные координаты, которые в модели в итоге назначаются, при визуализации, сравнивая с текстурной разверткой.
По ощущениям как будто координаты текстурные мы ждем в glTexCoord2f, а в реале идут целые числа.
Изменено:Иван Новиков - 14 Августа 2015 23:23:51
 
Цитата
Анви Анви написал:
Цитата
В 3ds max текстуры накладываются ровно, а в программе очень очень криво. В чем может быть проблема?
Скорее всего где-то ошибка в назначении текстурных координат.
А если откомпеллировать архив с кодом к уроку и попробовать зашу модель загрузить в нем? Так же не корректно отображается?
Здравствуйте! Столкнулся с такой же проблемой - текстуры накладываются не ровно. Кто-то нашёл как исправить этот баг?  
 
Цитата
Mixail12345 написал:
Здравствуйте! Столкнулся с такой же проблемой - текстуры накладываются не ровно. Кто-то нашёл как исправить этот баг?
видимо придется мне поискать =)
information must be free for all
 
Цитата
Елена Глушко пишет:
У меня возникла проблема с текстурами.
В 3ds max текстуры накладываются ровно, а в программе очень очень криво. В чем может быть проблема?
У меня всё было тоже самое. пока не заменил  библиотеку Devil на System.Drawing. В итоге весь класс текстурирования ушёл на переработку.
Проблема в загрузки текстур, а не в отрисовки и назначение текстурных координат. если надо могу поделится исходниками.  
 
Цитата
DoroViska пишет:
Цитата
Елена Глушко пишет:
У меня возникла проблема с текстурами.
В 3ds max текстуры накладываются ровно, а в программе очень очень криво. В чем может быть проблема?
У меня всё было тоже самое. пока не заменил библиотеку Devil на System.Drawing. В итоге весь класс текстурирования ушёл на переработку.
Проблема в загрузки текстур, а не в отрисовки и назначение текстурных координат. если надо могу поделится исходниками.
БЕРУ СВОИ СЛОВА ОБРАТНО. Всё дело было в стандартном повороте текстуры.
 
Mixail12345, приложите, пожалуйста, к сообщению файл с проблемной моделью и текустурой.

Нашел в старых бекапах пару моделек ASE. Загрузил в программу (исходник, приложенный к последней части урока). Модель из 3х подобъектов. С тремя текстурами, все наложилось корректно:



Архив с моделью и текстурой приложил.
Исходники пока не проверял.
13texture.jpg (106.5 КБ)
12texture.jpg (109.17 КБ)
9texture.jpg (122.93 КБ)
 
ase модель:
http://esate.ru/upload/files/drum.zip
 
Пытаюсь сделать модель Земли
Не могу понять, в чем проблема. Мало того, что он разрезает текстуру на какие-то блоки, так еще и обращает цвета (это вот для меня уже совсем странно и необъяснимо).
earth.png (158.05 КБ)
 
Изменила Il.ilEnable(Il.IL_ORIGIN_SET ) на Il.ilEnable(Il.IL_CONV_PAL) и всё пришло в норму :)
 
Подождите, модель то прога загружает, а как шкурку-то надеть? Помогите, пожалуйста! Если можете скиньте архив готовый.
Или, если я в 3д макс разрисую объект, то и в прогу он разрисованный засунеться?
 
Цитата
Viking8008 написал:
Подождите, модель то прога загружает, а как шкурку-то надеть? Помогите, пожалуйста! Если можете скиньте архив готовый.
Или, если я в 3д макс разрисую объект, то и в прогу он разрисованный засунеться?
Чтобы текстура корректно наложилась, нужно чтобы на 3D модели присутствовали текстурные координаты + была создана текстурная карта.

Пример создания текстурной карты в 3D max:
http://esate.ru/uroki/3d-max/materialy_i_osveshchenie/3D_max_urok_14_1/

Пример модели + текстуры приложен в сообщениях форума выше.
 
Цитата
Anvi написал:
Цитата
Viking8008   написал:
Подождите, модель то прога загружает, а как шкурку-то надеть? Помогите, пожалуйста! Если можете скиньте архив готовый.
Или, если я в 3д макс разрисую объект, то и в прогу он разрисованный засунеться?
Чтобы текстура корректно наложилась, нужно чтобы на 3D модели присутствовали текстурные координаты + была создана текстурная карта.

Пример создания текстурной карты в 3D max:
http://esate.ru/uroki/3d-max/materialy_i_osveshchenie/3D_max_urok_14_1/

Пример модели + текстуры приложен в сообщениях форума выше.
Решил вернуться и разобраться. Наконец-то постиг всю суть работы программы. Только я её теперь запустить не могу(
Качаю исходный проект, запускаю, визуалка его преобразовывает, типа проект старый ( у меня 2010 ultimate или как-то так). После нажатия запуска ошибка (картинка)
Попробывал в новый проект просто всё скопировать, так при выборе модели из файла программа просто СРАЗУ же закрывается. Она так же СРАЗУ же закрывается, если я дёргаю ползунки.
Помогите, пожалуйста(

ААААА РЕБЗЯ ВСЁ ЗАРАБОТАЛООООООООООООООООО
Всем спасибо, чмоки вам всем чмоки!
Я просто создал ещё 1 проект иииии О МАГИЯ!
123.jpg (206.47 КБ)
Изменено:Viking8008 - 11 Декабря 2015 01:13:55
 
Viking8008, по поводу скрина в вашем сообщении: http://esate.ru/blogs/noname/oshibka-pri-kompilyatsii-badimageformatexception-0x8007000B/
 
Как загрузить текстуру в модель? Она уже есть в .ASE файле, или нужно её как-то прикреплять? Есть готовая моделька и текстуры к ней, есть .max модель с загруженными текстурами, но загрузить в программу я её не могу.
Подскажите, пожалуйста, как это сделать  :?:
 
Цитата
Как загрузить текстуру в модель? Она уже есть в .ASE файле, или нужно её как-то прикреплять? Есть готовая моделька и текстуры к ней, есть .max модель с загруженными текстурами, но загрузить в программу я её не могу.  
Подскажите, пожалуйста, как это сделать  
привет
когда экспорт делаете из 3d max в ASE, вы отмечаете чтобы экспортировались текстурные кооридинаты. Соответственно и имя текстуры попадает в файл ase. Текстура хранится вместе с файлом.
экспорт описан в начале урока http://esate.ru/uroki/OpenGL/uroki-OpenGL-c-sharp/zagruzka-trehmernyh-modeley-v-opengl/  
Изменено:noname - 20 Мая 2016 23:49:20
 
А как загрузить на фон окна AnT какое-нибудь изображение?
я например, хочу сделать координатные оси или ограничить область 3д модели так называемой клеткой
в параметрах элемента AnT поставил изображение, но его не показывает- до визуализации черный экран, после - модель на белом фоне.
Изменено:asmil - 22 Августа 2016 00:47:35
 
Цитата
asmil написал:
А как загрузить на фон окна AnT какое-нибудь изображение?
я например, хочу сделать координатные оси или ограничить область 3д модели так называемой клеткой
в параметрах элемента AnT поставил изображение, но его не показывает- до визуализации черный экран, после - модель на белом фоне.
никак,
все что отображается в объекте AnT визуализируется в 3D сцене.
лучше проходите уроки последовательно, чтобы разобраться, как визуализируются сцены.
 
Добрый день. Помогите пожалуйста сделать что бы модель можно было крутить с помощью мыши.
 
Подскажите, как загрузить модель на определенное место на площадке. ТО есть задать ему стартовые координаты отрисовки. И подскажите, как правильно пользоваться поворотами и перемещением объекта ? Копал в направлении (    Model.SetAbsCoords)
 
Цитата
Гость написал:
Подскажите, как загрузить модель на определенное место на площадке. ТО есть задать ему стартовые координаты отрисовки. И подскажите, как правильно пользоваться поворотами и перемещением объекта ? Копал в направлении (    Model.SetAbsCoords)
Смотрите другие уроки этого курса, есть урок с перемещением объекта по разным осям координат и поворотом.
 
Как сделать прозрачную текстуру ? Это возможно *?
Страницы:1

Ответить
Читают тему (гостей: 1)
Форма ответов
Текст сообщения*
Загрузить файл или картинкуПеретащить с помощью Drag'n'drop
Перетащите файлы
Ничего не найдено
Загрузить картинки
ОтправитьОтменить
 
^
Регистрация
Регистрируясь, вы принимаете правила сайта. Если вы не получили код подтв. регистрации - не забудьте проверить папку спам.
Логин*
Email*
Пароль*
Подтверждение пароля*
 
Логин*
Код*
 
×
Восстановление пароля
Пожалуйста, заполните поля, после чего вы получите код подтверждения на ваш Email. Если код не пришел в течении нескольких минут - проверьте папку спам.
Логин

или Email
Логин*
Код подтверждения*
Новый пароль*
Подтверждение пароля*
×
Авторизация
  • Используйте вашу учетную запись на Facebook.com для входа на сайт.
  • Используйте вашу учетную запись VKontakte для входа на сайт.
  • Используйте вашу учетную запись Google для входа на сайт.
Авторизуйтесь с помощью соц. сети или с помощью аккаунта на сайте:
×