Если Вы писали 2-е графическое интенсивное приложение в C# (как программное обеспечение анимации или музыкальный секвенсер с автоматизированным графическим управлением), какой будет лучшим выбором для графической библиотеки?
Я хотел бы разработать межплатформенное приложение (по крайней мере, портативный в Windows 7, Linux), и я хотел бы использовать только C#, избегая смешивания кода в C++ (также благодаря проблемам interop).
Я имею, уже дают попытку OpenTK, но ему недостает документации, и это, кажется, не очень стабильно (использование Моно, он заставляет меня иногда разрушить X-сервер!!!)... И возможно я неправ, но я чувствую, что это не длинная поддерживаемая библиотека, и это собирается умереть...
Существует ли хорошая и стабильная обертка OpenGL для.NET / Моно?
Я знаю, что существует портирование Silverlight на Моно (Лунный свет), но я считал, что имеет плохую производительность.
Спасибо.
Есть библиотека irrlicht , но мы решили использовать OpenTK в наших проектах. Устраня некоторые недостатки, последняя версия (1.0) работает довольно стабильно на Win7 и работает также и на Linux.
Вы можете использовать SDL.NET , который является привязкой .NET для Simple DirectMedia Layer, библиотеки, используемой для создания быстрых 2D-игр.
Другим способом может быть GTK #, но я не знаю, как он работает с графикой.
Прямо сейчас и для ваших целей я бы рекомендовал MonoXNA
В качестве альтернативы CSGL (оболочка OpenGL для .NET / Mono)
Я бы рассмотрел OpenGL только в том случае, если вам действительно нужно 3D. Вы смотрели Каир? Кроме того, насколько мне известно, System.Drawing одинаково хорошо работает на mono + gtk, как и на окнах с .Net.
Если вам интересно, вы можете попробовать Moonlight.Desktop, стабильная версия довольно хорошо работает с элементами управления silverlight 2.0, бета-версия поддерживает silverlight 3.0 и некоторые версии 4.0, я сделал несколько небольших приложений, которые работают так же в моно. на Linux и Windows, но для сборки моих проектов пришлось немного вручную взломать сценарии сборки.
Если у вас нет причин не делать этого, я бы попытался создать базовое настольное приложение silverlight для Windows и иметь оболочку gtk # для linux / mono, при этом все время сохраняя сборку проекта сборки ядра (модель + контроллер). для обеих платформ.
Csgl совершенно стабильна ...
... поскольку больше не разрабатывается.
Я действительно рекомендую TAO Framework . Он кроссплатформенный (linux, mac os, windows) и все еще разрабатывается. Он довольно большой и имеет множество функций.
Irrlicht и (моно-) Xna разработаны для виртинговых игр.
Поскольку вы ищете что-то активное и поддерживаемое, как насчет Qt ? Имеет поддержку .NET . Это не то, что я лично использовал, но они, безусловно, существуют уже давно.
Я давно не изучал кроссплатформенные игры с .NET, но когда я подумывал об этом. Я Unity Game Development Tool выглядел довольно привлекательно. Я предполагаю, что ниже они используют OpenGL, и я не знаю точно, где находится Unity с точки зрения того, действительно ли они предоставляют свой собственный графический API или это больше связано с предоставлением набора интегрированных инструментов для разработки игр. Если вы не изучали его раньше, стоит взглянуть.