Нужен эквивалент структуры XNA, который РАБОТАЕТ с system.windows.forms (он не должен работать с XBox 360)

В следующем семестре я буду брать курс «Практика программного обеспечения II». В этом классе мой профессор хочет, чтобы мы изучали XNA. Я довольно давно играю с XNA и наслаждаюсь его функциональностью и простотой. Однако XNA не использует System.Windows.Forms. Используя CEGUI #, я смог заставить XNA работать с System.Windows.Forms, НО у него ограниченная функциональность (например, в то время как у мыши есть «Щелчок левой кнопкой мыши» и «Двойной щелчок левой кнопкой мыши», у нее нет » бремя").

Итак, я отказался от XNA в пользу нового фреймворка. Вот мой вопрос -> Есть ли фреймворк C#, который имеет все функциональные возможности и простоту, как XNA, но также полностью совместим с System.Windows.Forms (или, по крайней мере, полностью совместим с System.Windows.Forms, если я использую Сторонний инструмент)? Фреймворк НЕ должен работать с XBox360 - он должен работать только с Windows XP и Windows Vista. Я хотел бы, чтобы он имел синтаксис, аналогичный XNA (другими словами, чтобы иметь аналогичные методы, такие как LoadContent, Draw и Update).

Спасибо за уделенное время,

~ BenShums

вам следует попытаться объяснить, почему так необходимы winforms и как, следовательно, следует выгружать XNA. Мне это кажется опрометчивым шагом.

Ben Laan 27.11.2008 01:00

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

Dracorat 08.11.2011 22:35
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
2
878
5

Ответы 5

Вы можете попробовать Managed DirectX (MDX - переход на «неподдерживаемую» территорию), SlimDX или даже WPF 3D ...

Я бы порекомендовал SlimDX

Мне любопытно услышать, почему вы отказываетесь от XNA. Можете ли вы уточнить, что именно вы пытаетесь сделать и почему так важно подключение к Windows Forms, а точнее, что именно не работает? Я бы посоветовал хотя бы попытаться придерживаться XNA - кажется, он никуда не денется, кроме как вверх, и, судя по тому, что я видел, действительно хорош. Я бы исследовал различные причины, по которым вы чувствуете, что не можете использовать XNA, и посмотрел бы, можно ли как-то их решить.

Но также вполне возможно, что я не понимаю, что вы пытаетесь сделать. Если да, то приношу свои извинения!

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

Если вы просто используете SpriteBatch, вероятно, будет не так уж сложно создать совместимый API в Windows Forms, но если вы хотите делать 3D или шейдеры, это будет намного сложнее.

Другие вопросы по теме