3DS загрузчик файлов для opengl - PullRequest
2 голосов
/ 14 июля 2010

это мой первый вопрос на сайте. Мне нужен загрузчик модели 3DS для приложений opengl. Загрузчик также должен иметь возможность загружать .jpg текстуры. Я попытался использовать OpenSceneGraph для этой цели, но на этот раз я также должен использовать всю структуру данных OpenSceneGraph для рендеринга сцены. Можно ли использовать OpenSceneGraph только для загрузки моделей и делать все остальное стандартным кодом opengl, особенно glTranslate, glRotate и т. Д.

Ответы [ 2 ]

3 голосов
/ 14 июля 2010

Googling показал это: lib3ds

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

1 голос
/ 12 ноября 2011

OpenSceneGraph использует «плагины» для загрузки форматов файлов - как моделей, так и текстур. Существуют рабочие плагины для 3ds и jpeg, хотя, по крайней мере, jpeg (я считаю) не встроен в конфигурацию по умолчанию - при создании make-файлов OpenSceneGraph (или проектов в Windows) вам необходимо указать расположение libjpeg файлы для того, чтобы он был построен (так как плагин основан на этой библиотеке). Если у вас есть эти два плагина, у вас не возникнет проблем с чтением файлов 3ds и текстур jpeg. Другой вариант - использовать какой-то другой конвертер, который поддерживает как osg (или ive) - собственный формат OpenSceneGraph, так и 3ds. Блендер приходит на ум, и это бесплатно ...

Что касается смешивания вызовов openGL с OpenSceneGraph - это может быть сложно, но возможно. Один из вариантов - извлечь собственный класс из Drawable, затем переопределить его метод реализации draw и поместить его в любое место на графике, хотя рисование файлов 3ds вручную лишает цели использования графа сцены ...

...