2012-03-12 1 views
1

Я работаю с SharpGL и имею модель .3ds, которую хочу сделать в своей программе.Импорт моделей из 3ds Max в программу SharpGL (OpenGL/C#)?

Я ищу образец фрагмента кода или учебник, чтобы заставить меня двигаться.

Редактировать: Работа с .NET для создания приложения WPF с помощью элемента управления SharpGL для чертежа OpenGL.

+0

Я ожидаю, что вы найдете большинство 3DS C# погрузчики будут работать исключительно с D3D. Просто из интереса, почему вы используете SharpGL, а не SlimDX или подобное? Вы пишете для Mono или .NET? – Robinson

+0

Я работаю с .NET. Не использовать DirectX, поскольку я не использовал его раньше. – bobble14988

ответ

3

Вам необходимо написать считыватель/загрузчик формата импортера/файла. Сам. Это серьезная боль. Хорошо, что формат файла .3ds хорошо известен и documented.

Однако плохой формат .3ds устарел и не хранит все данные, которые потребуются для современного 3D-приложения. Например, он не хранит нормалей поверхности и не поддерживает сетчатые сетки. Я написал 3ds reader раньше, это было не очень весело. Другое дело, что кто-то, вероятно, написал 3ds loader раньше, и вы можете найти его с помощью google. Плохо то, что (по Закону Мерфи) они, вероятно, внедрили его таким образом, что сделают его совершенно непригодным для использования с вашим кодом.

Поэтому обычно рекомендуется использовать какой-либо другой хорошо документированный формат (и вместо этого записывать считыватель для формата THAT). Или вы можете пойти и создать свой собственный формат для моделей, которые поддерживают все, что вы хотите. Однако, чтобы экспортировать в ЭТОМ формате из 3ds max, вам понадобится собственный плагин-экспортер для 3ds max (с использованием 3ds max sdk), который требует большого знакомства с 3D математикой и программированием (на C++). Я уже писал несколько экспортеров, и это также большая боль.

Таким образом, проще было бы использовать простой формат, который позволит вам легко написать загрузчик. Что-то текстовое, например * .dxf. Или вы можете искать другой формат файла 3D-модели, который, надеюсь, поставляется с библиотекой для его загрузки. Например, collada может быть одним из кандидатов, хотя лично мне очень не нравится тот факт, что он использует XML.

 Смежные вопросы

  • Нет связанных вопросов^_^