none
C# + DirectX RRS feed

  • Вопрос

  • Пытаюсь освоить DirectX на сш. Установил последние сдк. Пытаюсь подключить Mictrosoft.DirectX. - такого не находит. Попытался добавить в References. Не нашел библиотеку. Скачал две каких-то левые дллки. Вроде подключились, при запуске не ругается. Запускаю приложение в виндоус форм. Вылетает при Application.Run().

    Ругалась на старую версию этой левой дллки. Понизил версию .Нет - заработала, но Device не инициализируется. Попробую все-таки решить эту траблу самостоятельно, однако, не исключена зависимость этой проблеммы от непосредственно левости библиотеки. К тому же хотелось бы создавать с последней версией Директа. Помогите, пожалуйста!

    • Перемещено Tagore Bandlamudi 1 октября 2010 г. 21:28 MSDN Forums consolidation (От:Visual C#)
    5 июня 2010 г. 19:06

Ответы

  • Том Миллер "Managed DirectX 9 Программирование графики и игр" тебе в помощь =) Сам когда то читал, вполне не плохо написано.

    Там рассказывается про написание программ под DirectX на C#

    • Предложено в качестве ответа Svyatoslav Pankratov 5 июня 2010 г. 23:08
    • Помечено в качестве ответа Ein_Shved 6 июня 2010 г. 13:02
    5 июня 2010 г. 23:02
  • Вобщем, кому интересно, нашел объяснение всему происходящему.

    Из прочитанного здесь https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=519801&wa=wsignin1.0 следует:

    .NET Framework 4.0 некорректно работает с DirectX, так что если кому-то нужно его использовать в проектах в Visual Studio 2010, то установите в настройках проекта .NET Framework 3.5 либо еще ниже. Если очень нужно использовать DirectX в проекте под .NET Framework 4.0, то можно внести изменения в конфигурацию, которые позволят использовать в 4-м фреймворке такую же политику безопасности как и в предыдущих версиях, но это делать не рекомендуется, а вместо этого рекомендуется испльзовать XNA Framework.

    • Предложено в качестве ответа Svyatoslav Pankratov 6 июня 2010 г. 20:44
    • Помечено в качестве ответа I.Vorontsov 7 июня 2010 г. 6:13
    6 июня 2010 г. 20:44

Все ответы

  • Том Миллер "Managed DirectX 9 Программирование графики и игр" тебе в помощь =) Сам когда то читал, вполне не плохо написано.

    Там рассказывается про написание программ под DirectX на C#

    • Предложено в качестве ответа Svyatoslav Pankratov 5 июня 2010 г. 23:08
    • Помечено в качестве ответа Ein_Shved 6 июня 2010 г. 13:02
    5 июня 2010 г. 23:02
  • Блин! мне не нужна литература, в этом проблемы у меня не будет! мне нужны библиотеки DirectX последние!! Где их взять?
  • На C# при написании под DirectX есть свои нюансы. Вот там как раз все и написано.

    Для тех кто вообще не хочет ничего читать, поясню: для написания под DirectX на C# нужен не классический DirectX, а Managed DirectX.

    Скачать DirectX SDK можно отсюда: http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=2c7da5fb-ffbb-4af6-8c66-651cbd28ca15

    Если ты все делаешь правильно, то у тебя все должно работать.

    • Предложено в качестве ответа Medet Tleukabiluly 6 февраля 2013 г. 18:12
  • чорт! я же написал, что мне нужны библиотеки!! эти сдк я уже скачал, но мой VS C# не видит Microsoft.DirectX. При загрузке было написано, что достаточно установтиь и радоваться, но у меня это, почему-то оказалось недостаточно(((

     

    первые шаги я вычитал от сюда http://www.codersource.net/asp-net/directx/directx-programming-in-c.aspx

    6 июня 2010 г. 10:35
  • Странно. Попробуй все снести. И студию и DirectX SDK и с нуля все это установить. И еще, напиши точные ошибки, которые вываливаются.

    И еще хотел спросить, ты ссылку на Microsoft.DirectX и в проекте и в файле проекта добавил?

    6 июня 2010 г. 10:41
  • Действительно, в одной из установленных у меня версий VS, а именно в VS 2010, нету сборки Microsoft.DirectX. Как будут какие детали, отпишусь.
    6 июня 2010 г. 11:57
  • вот у меня VS 2010 prof стоит. Но можешь не парится - я уже нашел выход)) Мне посоветовали Xna установить - все пошло, буду теперь разбираться)) А трабла, по-моему я знаю в чем - у меня видяха полетела, сваливает все на процессор и не отвечает не под каким соусом)) поэтому тему, по-моему, можно будет продолжать, када куплю новую видяху))

    6 июня 2010 г. 12:20
  • Вобщем, кому интересно, нашел объяснение всему происходящему.

    Из прочитанного здесь https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=519801&wa=wsignin1.0 следует:

    .NET Framework 4.0 некорректно работает с DirectX, так что если кому-то нужно его использовать в проектах в Visual Studio 2010, то установите в настройках проекта .NET Framework 3.5 либо еще ниже. Если очень нужно использовать DirectX в проекте под .NET Framework 4.0, то можно внести изменения в конфигурацию, которые позволят использовать в 4-м фреймворке такую же политику безопасности как и в предыдущих версиях, но это делать не рекомендуется, а вместо этого рекомендуется испльзовать XNA Framework.

    • Предложено в качестве ответа Svyatoslav Pankratov 6 июня 2010 г. 20:44
    • Помечено в качестве ответа I.Vorontsov 7 июня 2010 г. 6:13
    6 июня 2010 г. 20:44
  • Собственно, я именно так и сделал)
    10 июня 2010 г. 9:56
  • как альтернативу можно использовать XNA
    10 июня 2010 г. 15:51
  • У меня прекрасно работает .Net4 + MDX. Вот пример проекта: http://bitbucket.org/nesteruk/mdxconsole
    - Dmitri Nesteruk
    11 июня 2010 г. 13:16
  • Спасибо. Как только посмотрю, отпишусь =)
    11 июня 2010 г. 23:03
  • Скачай последний SDK или runtime за июнь месяц он с поддержкой 4 нета и усё  у тебя появяться библиотеки в твоей 2010 студии

    21 июня 2010 г. 11:28
  • очень странно... но я как бы установил SDK, но вижул их почему-то не видит - пытаюсь добавить в референсез, но ни в одном списке Microsoft.DirectX  негу(((
    4 августа 2010 г. 10:05
  • очень странно... но я как бы установил SDK, но вижул их почему-то не видит - пытаюсь добавить в референсез, но ни в одном списке Microsoft.DirectX  негу(((
    Аналогично...
    6 августа 2010 г. 22:07
  • Так XNA же под Visual Studio 2010 нету же. Я имею ввиду для Windows. То что есть для  Windows Phone 7 я в курсе. Или я чего то не знаю или не правильно понимаю?
    28 августа 2010 г. 7:36
  • Интересно когда же выпустят DirectX который будут работать корректно с net.framework 4 ?

    или может уже что то придумали?

    просто DirectX входит в курс обучения(с графикой)  нашего факультета и..

     как же все таки быть.

    1 декабря 2010 г. 23:22
  • AndreyMaybe, лучше наверное будет создать новое обсуждение, чем обсуждать это в решенной проблеме
    Для связи [mail]
    2 декабря 2010 г. 5:26
  • C# + DirectX = http://sharpdx.org/
    6 февраля 2013 г. 18:29
  • Сам столкнулся с такой проблемой сегодня. Может кому понадобится. Решение:

    1. Библиотеки лежат в "%windir%\Microsoft.NET\DirectX for Managed Code\1.0.2902.0\
    2. В свойствах проекта Platform target: x86
    3. В App.config заменить строку <startup> на <startup  useLegacyV2RuntimeActivationPolicy="true"> 

    и счастье близко.

    Однако, ИМХО, не следует путать с "настоящим" (полноценным) DirectX.

    2 сентября 2015 г. 10:58
  • Это вполне "настоящий" DirectX, только очень, очень старый и давно не поддерживаемый. На деле конечно семейство API DirectX использует COM, так что это по сути оболочка для согласования COM и управляемого кода. XNA была гораздо более продвинута и предоставляла более высокий уровень API.

    Для новых разработок можно использовать современные оболоки как то SlimDX или SharpDX:

    https://katyscode.wordpress.com/2013/08/24/c-directx-api-face-off-slimdx-vs-sharpdx-which-should-you-choose/


    This posting is provided "AS IS" with no warranties, and confers no rights.

    2 сентября 2015 г. 18:36
    Модератор
  • Думаю дело в версии студии, а не в версии фреймворка.  Если вспомнить прошлое (сейчас не пишу под DX), то была VS2003, потом вышла 2005. 2005 без проблем работала с 9 DX. А 2003 нет.

    Хотя версии фреймворка были одинаковые, кажется вторые.

    Сдается мне, тут та же история.

    Попробуйте поставить VS2012 express например, и если проблема исчезнет...

     

    2 сентября 2015 г. 23:29
  • Продолжаю работу над движком и пожалуй соглашусь, вполне настоящий. А для поддержки 3D-графики в бизнес-приложениии - так за глаза...

    15 сентября 2015 г. 20:34
  • Продолжаю работу над движком и пожалуй соглашусь, вполне настоящий. А для поддержки 3D-графики в бизнес-приложениии - так за глаза...

    Если вас не смущает то что ваше бизнес приложение использует технологию которая не поддерживается (т.е. может перестать работать в любой момент как это случилось например с большим числом старых игрушек) то конечно. Да собственно вся тема об этом.

    Ну я понял бы если были бы наработки 10-15 летней давности (хотя и в этом случае надо было давно работать над переходом), но в новом коде то зачем это делать?


    This posting is provided "AS IS" with no warranties, and confers no rights.

    16 сентября 2015 г. 5:58
    Модератор