2009-07-21 4 views
2

Я участвую в проекте разработки, который использует freeglut (основанный на долговременном перенасыщении) для своего клиента.Проект, с которым я помогаю, использует freeglut для клиента. Должен ли я советовать иначе?

Клиент в конечном итоге позволит полностью взаимодействовать с крупномасштабной 3D-средой. Должен ли я позволить развитию продолжать с freeglut (возможно ли это), или я должен посоветовать им использовать другую альтернативу, такую ​​как libsdl, opentk или даже аксиома.

Я не графический человек, но я чувствую, что freeglut потенциально может быть ограниченным выбором.

Самый убедительный ответ (за или против) будет аккредитован.

EDIT: Несколько пунктов, чтобы сделать ...

  • Проект уже использует Tao Framework.
  • DirectX и XNA не являются параметрами (например: что-то вроде freeglut или libsdl).

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

Мой вопрос не в том, как это делается, а в том, является ли свободный -глют все еще жизнеспособным выбором для чего-то, что потенциально может стать большим, и есть ли более современные решения, которые могут немного облегчить разработку.

EDIT: Это поможет, если другие альтернативы имеют лучшую поддержку mutli-threading (не для рендеринга объектов, а для обработки данных и т. Д.).

EDIT: Чтобы разработать немного больше ... клиент должен работать, по крайней мере, в Linux и Windows.

Спасибо!

ответ

6

Я не думаю, что нет ничего плохого с freeglut. Он активно развивается, и есть активный совет для поддержки Nabble.

Было бы неплохо создать контекст OpenGL в Windows, так почему бы просто не использовать его напрямую? Я всегда думал, что люди используют Glut/FreeGlut, потому что это то, что использовала Красная книга. (хотя обратные вызовы для мыши и клавиатуры упрощают), я никогда не приурочил его, но Glut всегда чувствовал себя немного медленнее, чем использование OpenGL через interop.

Tao project имеет хорошую оболочку OpenGL, если вы хотите использовать OpenGL напрямую. Он также имеет хорошие привязки .Net для FreeGlut и GLFW, альтернативу Glut, которая также предлагает обратные вызовы мыши и клавиатуры.

1

OpenGL с C# осуществляется через обертки. Большинство из них больше не активно развиваются.

Канонический выбор для разработки 3d с помощью C# - это использование управляемого directX или использование библиотек XNA.

R

3

Я бы выбрал libsdl, его мультимедийные возможности упрощают работу с аудиооборудованием, он имеет встроенные привязки к C# и множеству других языков, а также может быть полезен, если вы когда-либо решили интегрировать мобильный интерфейс для вашего проекта.