2011-06-13 7 views
1

경험이 있고 VB.NET을 사용하는 사람들에게 SlimDX 또는 SDL을 사용하는 것이 더 쉽습니다. SlimDX 용 자습서는 이미 .NET 용으로 작성되었지만 SDL은 DirectX 자체보다 훨씬 쉽습니다. 제 경우에는 2D 그래픽 만 있으면됩니다.SlimDX 대 SDL - 어느 것이 가장 좋습니다?

또한 어떤 언어를 사용 하시겠습니까? 나는 보통 VB.NET을 사용하지만 probabily 인터넷을 통한 대부분의 자습서는 C#에 있으며 나는 C와 PHP를 아는 것처럼 배우기가 어려울 것이라고 생각하지 않는다. :)

+1

.NET은 기능상 VB.NET과 거의 같습니다. 유일한 차이점은 1 ~ 2 주 후에 제 2의 성격을 느낄 구문에 있습니다. 더 많은 프로그래머가 알고있는 언어에 능숙하므로 C# .NET에 익숙해지는 것이 가장 좋습니다. –

답변

0

VB 이제 XNA 프레임 워크에 대한 지원이 있음을 지적 아마 가치 :

시작 가이드 : http://create.msdn.com/en-US/education/gamedevelopment/VBSupportForXNA

+0

그래, 이미 들었지만, WinForms를 사용할 계획이라서 중요하지 않습니다. 어쨌든 고마워. :) –

+0

@Scorch [This] (http://create.msdn.com/en-US/education/catalog/sample/winforms_series_1)에 관심이있을 수 있습니다. – aligray

+0

그럴 줄 알지 못했습니다. 그러나 어떤 의존성이 있습니까? 이것은 내가 도서관을 짓기 때문이며, 실제로는 배부 될 것입니다. –

0

SlimDX는 상대적으로 낮은 수준의 라이브러리입니다. DirectX의 모든 기능에 액세스 할 수 있으며 기존의 하드웨어 및 새로운 최상위 제품을 대상으로 할 수 있습니다. 이것은 또한 설정하기가 어렵다는 것을 의미하며, 스프라이트 및 텍스트와 같은 간단한 것을 그리기 위해 더 많은 코드가 필요합니다.

사용성 관점에서 보면 SDL이 더 나은 선택 일 수 있습니다.

1

SDL은 구형 그래픽 카드를 사용하는 사용자에게 적합 할 수 있습니다. 오래된 그래픽 카드는 괜찮은 OpenGL 가속화가 부족한 경향이 있습니다. 지난번에 SDL에 대한 .NET 래퍼가 유효하지 않은 것으로 확인되었습니다.

.NET 프로젝트를위한 2D 하드웨어 가속 라이브러리를 찾고있을 때 Gorgon이라는 라이브러리를 사용하게되었습니다. SlimDX 기반으로 SlimDX를 객체 지향적으로 만들고 2D 응용 프로그램에서 사용하기 쉽도록 만드는 데 중점을 둡니다.

원하는 컨트롤로 렌더링을 지원하므로 Windows Forms와 자유롭게 혼합 할 수 있습니다. 성능은 기본적으로 SlimDX 래퍼와 동일하므로 SlimDX와 기본적으로 동일합니다.

+0

SDL에 대한 정보는 어디서 구형 하드웨어에서 문제가 될 수 있습니까?이전에 그런 말을 들어 본 적이 없으며 SDL의 오랜 역사를 고려할 때이 정보가 거짓이라고 생각할 것입니다. SDL을 사용해 본 경험으로 인해 소프트웨어 표면에서 하드웨어 표면을 다루기가 어려웠으므로 (적어도 테스트 할 수있는 모든 하드웨어에서) 많은 작업을 수행하게됩니다. –

+0

저는 SDL 앱을 완전히 질식시키지 만 SlimDX를 정상적으로 실행하는 몇 대의 오래된 컴퓨터를 가지고 있습니다. 그게 작동하지 않는 문제는 아니지만 하드웨어 가속이 없기 때문에 진정한 성능을 얻을 수 있습니다. * CPU가 좀 느립니다. DirectX는 고대 그래픽 카드에서도 잘 작동하므로 고대 시스템에서도 성능을 충분히 발휘할 수 있습니다. 물론 P2-4와 같은 오래된 하드웨어에 대해 걱정하지 않아도 상관 없습니다. 왜냐하면 현대의 소프트웨어가 소프트웨어 전용 모드에서 SDL을 적절하게 실행할 수 있기 때문입니다. –

+0

해당 라이브러리를 알지 못했습니다. 나는 그것을 시도 할 것이다, 좋게 보인다. 감사. :) –

1

질문의 두 번째 부분에 대답하기 : 당신이 관심이 있다면

는 여기에 몇 가지 링크의

VB.NET과 C#은 대부분의 의도와 목적을 위해 동일합니다.

동일한 끝 코드로 컴파일되고 동일한 성능을 갖습니다. 각 오버플로 검사가 일치하도록 변경하면 마찬가지입니다. 여기에 몇 가지 차이점입니다 :

VB.NET

  • 케이스 C#
  • 는 기본 전임자의 나쁜 평판, 프로그래머 (주로 C를 많이 상속보다 문자를 구분
  • 더 자세한 ++ 사람, 제 생각 엔) VB에서 내려다 보입니다.NET은 열등하다고.
  • C보다 덜 일반적으로 사용 #
  • "With ... With With", 어느 은 C#이 갖고 싶습니다.
  • 오버 플로우 기본
  • 에 의해 확인 "내"네임 스페이스가

C#

  • 대소 문자 구분
  • 약간 더 유용성 - VS08 모두 C# & VB를 사용하는 데, I C# 인텔리 센스는 지능이 약간 적다는 것을 알았습니다.
  • C#을 사용하면 더 많은 데이터 유형을 캐스팅해야하지만 유연성이 향상됩니다.
  • 더 인기
  • 밀접하게
  • 은 VB 등은 "안전하지 않은"키워드로하지 않는 몇 가지를 가지고 자바와 같은 다른 언어 관련.
  • /* 간편한 멀티 라인 주석 */
  • 오버 플로우가 기본
  • 없음 "내"네임 스페이스에 의해 해제 체크 가지고

당신이 고른 경우이 문제 것 아주 몇 가지 시나리오가있다 VB.NET 또는 C#의 주요 차이점은 단순히 구문에 불과하며 많은 프로그래머가 VB.NET을 "열등한"것으로 간주하는 경향이 있다는 사실 (프로그래밍 언어라고 생각하지만 실제로 어떻게 사용되는지는 알 수 있습니다. , 불행히도)

즉, VB.NET에서 C#으로 전환 할 가치가 있습니다. 이유는 다음과 같습니다.

  • 그 그들은 당신이 말했듯이 많은 다른 언어를 학습 같은
  • 항상 좋은 일
  • 입니다 것 때문에, 너무 어려운 변화 될 수 없습니다, C#을 availible 더 자습서를 가지고있는 당신은 C#으로 물건을 다했다고 말할 수있는, 경력의 관점에서 코드
  • 번역을 절약 할 수

왜 그것을 스핀을주지 도움이 될 것입니다? 내가 생각할 수있는 유일한 단점은 SDL/SlimDX + C#를 한 번에 두 가지를 배우고 있지만 실제로는 C#이 쉽지 않다는 것입니다.

+0

C# 코드를 읽고 VB.NET으로 수동으로 변환하는 experinece가 이미 있기 때문에 C#을 배우는 것이 어렵지 않을 것이라고 생각합니다. (때로는 코드가 너무 단순하여 전날 밤 간단하지 않습니다. 자동 도구 사용). 또한 C#과 유사한 구문으로 된 언어에 대한 경험이 있습니다. 가장 큰 문제는 이미 VB.NET에서 프로젝트를 시작했지만 중요하지 않다는 것입니다. 다시 시작하겠습니다. 어렵지 않아야합니다. :) –