2008-10-29 9 views
1

네이티브 및 매니지드 방식 모두 좋은 생각처럼 들리는 새로운 프로젝트를보고 있습니다. 이것은 MDI 인터페이스를 지원해야하는 Windows 데스크톱 응용 프로그램입니다. 클라이언트 영역은 Direct3D를 광범위하게 사용합니다. 프로젝트 개발자는 C#, C++/CLI 및 MFC에 대해 똑같이 숙련되어 있습니다.Direct3D MDI 프로젝트 : MFC 또는 .NET?

MFC 장점 :

  • 문서/뷰 아키텍처
  • 대부분의 Direct3D를 온라인 자원이 여전히 사용 C++

관리 코드의 장점 :

  • .NET Framework에서
  • C#

위의 목록에 더 추가 할 수있는 항목은 무엇입니까? 이것을하지 마십시오. 두 가지리스트. 그냥 그들에 추가하십시오.

참고 : 혼합 모드를 사용하지 않는 데는 (IDE 및 디버깅과 관련된) 아주 좋은 이유가 있습니다. 그걸 계산 해봐.

답변

2

둘 다 사용하지 않는 이유는 무엇입니까?

C#/VB.NET을 사용하여 UI (폼)를 작성하고 C++을 사용하여 창을 렌더링 할 수 있습니다.

기본적으로 C#에서 HWND (창 핸들)를 C++로 전달하고 해당 값을 사용하여 C++를 초기화하면됩니다.

내 블로그에서 예를 볼 수 있습니다. How-to Render managed (.NET) form using native DirectX

1

이것은 직접 목록에 추가하지는 않지만 .NET에서 3D를 수행하는 현재 "권장되는"방법은 XNA를 사용하고 있습니다. Managed DirectX는 더 이상 사용되지 않습니다.

편집 : 물론 WPF 3D도 옵션입니다! 깜빡 했음 :}

+0

와! 네가 XNA에 대해 말한 것은 나에게 뉴스 다. 어떤 포인터? –

+0

http://en.wikipedia.org/wiki/Microsoft_XNA, 추측;) – moobaa

+0

Nah. 왜 MDX가 XNA에 찬성하여 더 이상 사용되지 않을 것입니까? –