Проект, с которым я помогаю, использует freeglut для клиента. Должен ли я посоветовать иначе? - PullRequest
2 голосов
/ 21 июля 2009

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

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

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

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

РЕДАКТИРОВАТЬ: Несколько моментов, чтобы сделать ...

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

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

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

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

РЕДАКТИРОВАТЬ: Чтобы уточнить немного ... клиент должен работать по крайней мере в Linux и Windows.

Спасибо!

Ответы [ 3 ]

6 голосов
/ 21 июля 2009

Я не думаю, что с freeglut что-то не так. Он активно развивается, и есть активная доска поддержки на Набле.

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

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

3 голосов
/ 29 июля 2009

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

1 голос
/ 21 июля 2009

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

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

R

...