저는 CNA에서 XNA를 사용하여 게임을 개발하고 사용하지 않는 경우의 성능에 대해 궁금합니다. 2D 텍스처 대신 PictureBox를 사용할 수 없습니까? 게임용 Windows Form 프로그래밍과 함께 실행하는 것이 가능합니까 아니면 XNA가 최상의 솔루션입니까? 장점/단점?C# : XNA 대 XNA (성능)
답변
게임이 복잡할수록 WinForms 개발이 지속 가능성이 낮아집니다. XNA는 그런 종류의 것을 지향하고 있습니다. 왜 사용하지 않을까요?
"Windows Phone 7, XBOX 360 및/또는 Windows 바탕 화면에서 게임을 실행하고 싶습니까?" 당신의 대답이 '예'라면 XNA를 배우십시오. 가장 좋은 점은 이러한 다양한 플랫폼을 목표로 삼을 수있는 대부분의 작업이 있다는 것입니다.
Hanselminutes Podcast 240 - Developing Indie Games for Xbox 360 and XNA with George Clingerman 주제의 Scott Hanselman이 최근 Podcast를 듣는 것이 좋습니다.
게임의 그래픽 복잡성에 따라 다릅니다.
좋은 그래픽으로 하이 엔드 게임을 만들 수있는 훌륭한 라이브러리를 배우려면 XNA를 사용하십시오. 그것은 당신의 취향에 더 많은 다양성을 열 것입니다.
그러나 비 스크롤링, 테트리스 또는 솔리테어 게임을 만들고 싶다면 더블 버퍼링 된 .NET 컨트롤이 트릭을 수행 할 수 있습니다.
최상의 성능을 원하는 경우 C# 또는 XNA를 전혀 보지 않아야합니다. 더 낮은 수준에서는 더 잘 이해할 수 있습니다. 그러나 더 낮은 레벨은 적은 결과로 프로그래밍에 더 많은 시간을 할애한다는 것을 의미합니다.
XNA는 게임 프로그래밍을 쉽게하기 위해 개발되었습니다. 그것은 지루한 저수준 코딩을 많이 필요로하며 우리가 호출 할 수있는 간단한 간단한 방법으로 마무리하여 매우 강력한 프레임 워크를 사용하면서 휠 재발생에 대처할 필요가 없습니다.
게임을 만드는 데 관심이 있다면 XNA를 사용하는 것이 좋습니다. 나는 당신이 대안보다 훨씬 더 즐겁게 보낼 것이라고 생각합니다.
나는 downvote 나를 재미있게 알아,하지만 그것을 계속하는 사람들이 좀 추론을 제공 할 수 있을까요? 학습을 제공 할 수 있다면 귀하의 투표 경험을 학습 경험으로 삼고 싶습니다. 감사합니다.) –
마이크, 제 생각에는 첫 문장이 잘못된 길을 건너 왔습니다. 사실, 내가 그것을 읽었을 때 거의 C++이 결국 언급 될 것을 기대하고있었습니다. :) 그럼에도 불구하고, 나는 당신의 응답에 전반적인 문제가 보이지 않기 때문에 그 downvote를 상쇄시키는 +1이 있습니다! –
감사! 미안해. 나는 그것을 다시 읽었으며 너무 극적이다.내 요점은 C#이나 XNA를 강타하지 않았기 때문에 그런 식으로 받아 들여지면 유감스럽게 생각합니다. 성능면에서 관리되는 코드는 원래 의도했던 것보다 많은 오버 헤드가있을 것입니다. Ahmad의 머리에 감사 드리며 다음 번에 더 명확하게하려고 노력할 것입니다! –
XNA를 사용하십시오.
XNA는 "즉시"스타일의 API입니다 : 제외 크게 더 나은 성능, 더 나은 지원 플랫폼 (X 박스 360, 윈도우 폰), 사운드 및 입력 처리 같은 다른 API의 쾌적있는에서, 하나의 매우 중요한 이유가 (유지 된 것과 반대, this description 참조).
이 유형의 API를 사용하는 게임을 개발하는 경우는 이 크게입니다. 그 이유는 너무 많은 detial에 빠지지 않고 유지 된 API에서 외부 장면이 게임 상태와 동기화되어 있어야한다는 것입니다. 이것은 지루하고 버그가 발생하기 쉽다 (나를 믿어 라.).
- 1. 학습 XNA 3.1 대 XNA 4.0
- 2. XNA 윈도우 스케일링 성능
- 3. XNA 입자 시스템 성능
- 4. WPF AxisAngleRotation3D 대 XNA CreateFromAxisAngle
- 5. C# Winform/XNA Question
- 6. C# XNA : AI 엔진?
- 7. XNA GameScreens
- 8. (XNA 3.1 "Effect.CompileFromFIle") 해당하는 (XNA 4.0) 있습니까?
- 9. XNA ContentLoadException
- 10. XNA Quaternion.createFromAxisAngle
- 11. XNA 마우스 코즈 대 객체 문제
- 12. XNA C# 2D Platformer 게임
- 13. C#/XNA 의사 난수 생성
- 14. C# XNA : 사전에 문제가 발생했습니다.
- 15. XNA/C# 게임 설정 (메뉴?)
- 16. C# XNA 패들 볼 게임
- 17. XNA C#을 HUD SpriteFont
- 18. WinForms에 XNA 포함하기
- 19. XNA 카드 게임
- 20. XNA 4.0 자습서?
- 21. 제스처 기반 인터페이스를위한 WPF 대 XNA 대 표면
- 22. 벡터 XNA 애니메이션 저장
- 23. 게임 개발 xna/unity3d
- 24. XNA 게임 지연 결정
- 25. Pong in Box2D XNA
- 26. XNA 게임 배포 질문
- 27. XNA MathHelper.SmoothStep? 어떻게 작동합니까?
- 28. XNA 단위 테스트
- 29. XNA 및 WinForms
- 30. 로컬 멀티 플레이 XNA
단순히 2D 게임 XNA는 배우기 쉽고 멋지다. 하지만 정말 큰 3D 게임을 만들고 싶다면 더 나은 성능을 제공하는 [Unity] (http://unity3d.com/unity/)와 같은 다른 프레임 워크를 권장합니다. – harry180
단결은 XNA와 같은 프레임 워크가 아니라 " 도구 " –