Windows 8에서 XNA의 미래는 무엇입니까? 또는 Windows 8에서 관리되는 게임은 어떻게 개발됩니까? [닫은]


83

나는 이것이이 질문 의 잠재적 인 속박이라는 것을 알고 있지만, 18 개월 전에 마지막 답변이 있었고 그 이후로 많은 일이 일어났습니다.

Windows 8의 XNA에 대해서는 약간의 불확실성이있는 것 같습니다. 특히 Windows 8은 기본적으로 XNA에서 지원하지 않는 Metro 인터페이스를 사용합니다. 또한 Windows 8 스토어는 비 메트로 앱을 비축하지 않으므로 XNA 앱을 비축하지 않습니다.

우리는 XNA를 고수해야합니까, 아니면 Microsoft가 Windows 8에서 관리되는 게임 개발을위한 다른 프레임 워크로 옮기기를 원합니까?

편집 : 의견 중 하나에서 지적했듯이 Windows 8은 XNA 게임을 하위 호환성 모드로 실행할 수 있습니다. 그러나 그것은 더 이상 사용되지 않습니다.


2
Windows 8에는 기본적으로 이전 버전과 호환되는 모드가 있는데 이것이 왜 문제가됩니까?
ashes999

6
메트로 UI 용 AC # 게임을 개발하려면 어떤 프레임 워크를 사용해야합니까?
Ken

5
SharpDX를 사용해야합니다.
Jonathan Dickinson

Johnathan에게 +1 SharpDX는 이제 Metro 호환성을 위해 DirectX 11.1을 지원합니다.
ChrisC

4
@Deza : 메트로를 지원할뿐만 아니라 XNA는 Windows Phone 8에도 사용되지 않습니다. 또한 XNA가 업데이트되지 않으면 DX11을 지원하지 않으며 곧 출시 될 Xbox 콘솔에서는 작동하지 않습니다. XNA가 업데이트되지 않으면 개발자가 XNA에서 멀어지게하는 많은 이유가 있습니다.
Nic Foster

답변:


61

편집 : 그것은 공식적이며 Microsoft는 XNA를 죽였습니다 . 나는 이것에 슬퍼하지만 예상치 못한 것은 아니었다. 예상했던 일이지만, 내가 잘못되기를 바랐다. 이 시점 아래의 모든 것은 2012 년 초의 원래 게시물입니다.

고려해야 할 또 다른 사항은 Microsoft가 2013 년 중반에서 후반에 새 콘솔을 출시 할 가능성이 있다는 것입니다. 콘솔에서 XNA와 같은 작업을 계속하려고합니까? 개인이 새로운 Xbox에서 게임을하기를 원한다면 무언가가 필요할 것입니다. XNA를 폐기하고 다른 것으로 새로 시작하는 것은 낭비입니다. 또한 Windows 8은 ARM 프로세서가 장착 된 태블릿에서 실행되며 전화 및 태블릿 용 앱의 시장 규모가 어느 정도인지 알고 있습니다. 이는 Microsoft가 해당 장치에서 앱을 만들기위한 API를 가질 수있는 큰 기회이지만 XNA 일 것입니다. 또는 .NET 만?

두 가지 잠재적 인 길을 봅니다.

  1. XNA는 현재 Xbox에서 크게 성공하지 못했습니다. 주로 XNA 게임이 거의 표시되지 않고 Xbox Live의 XNA 게임에 대한 저장소 설정이 좋지 않기 때문입니다. 따라서 Microsoft는 플러그를 완전히 뽑아 DX10과 호환되는 XNA 4.0을 남겨두고 앞으로 몇 년 동안 간단한 PC 게임을 할 수있는 적절한 플랫폼이 될 것입니다.

  2. Microsoft는 집에서 만든 앱으로 큰 가능성을 볼 수 있습니다. Apple의 App Store와 같은 것들이 돈을 많이 버는 것입니다 .Microsoft가 게임을 더 쉽게 만들어 Xbox Live 및 Windows 8 태블릿에 넣을 수 있다면 큰 기회를 가질 수 있습니다 콘솔 앱 시장에서. Microsoft가이 길을 따라 가면 DX11.1을 다음 버전으로 지원하고 5 년 이상 XNA를 계속 지원하는 새로운 XNA를 볼 수 있습니다.

고려해야 할 사항 :

  • 현재 XNA를 사용하면 Xbox 360 용 게임을 개발하려면 100 달러를 지불해야합니다. 100 달러는 시험해보고 돈을 벌 수 있는지 확인하는 것입니다. 심지어 MS도 게임에서 이익의 덩어리를 얻습니다. Microsoft가 100 달러의 수수료를 내고 이윤을 청산하면 실제로 더 많은 게임을 보게되고 더 많은 돈을 벌게됩니다.

  • XNA 게임은 Xbox 360에서 성능 문제가 있습니다. Microsoft는 XNA 게임이 다른 사람의 Xbox에서 실행될 때 보안 위험에 노출되는 것을 원하지 않기 때문에 기본적으로 CPU, GPU 및 메모리에 대한 액세스가 제한된 샌드 박스에서 XNA 게임을 실행합니다. 제한된 액세스 외에도 전체 Xbox SDK에서 프로그래밍 된 게임은 C #으로 작성되지 않으며 가비지 수집과 같은 것이 필요하지 않지만 XNA는 Microsoft 자체 C #에서 실행되므로 Microsoft는 XNA를 실행하기 위해 래퍼를 작성해야했습니다. Xbox와 그 래퍼로 인해 속도가 약간 느려집니다. 부동 소수점 성능과 같은 것은 전체 SDK를 통해 작성된 Xbox 게임보다 최대 10 배 느릴 수 있습니다. 이러한 성능 문제는 XNA를 통해 개발 된 Xbox 게임이 Xbox의 모든 잠재력을 실제로 사용할 수 없다는 것을 의미합니다. 이는 Microsoft가 커뮤니티에서 얻을 수있는 게임의 품질을 떨어 뜨립니다. XNA를 계속 사용할 경우 다음 콘솔에서 XNA 개발자가 시스템을 최대한 활용할 수 있도록 Microsoft가이를 고려하는 것이 좋습니다.

  • 내가 아는 한, XNA는 Windows 8의 메트로 스타일을 지원하지 않으므로 개발자는이를 활용하기 위해 게임을 작성할 수 없습니다. XNA는 ARM 프로세서에서도 실행되지 않으므로 XNA를 사용하여 곧 출시 될 Windows 8 태블릿 용 앱을 작성할 수 없습니다. 향후 XNA가 지원되지 않을 수 있다는 신호입니까?

  • Microsoft는 현재 게임에 XNA를 사용하고 있지만 약간의 작업만으로도 흥미로운 응용 프로그램을 만드는 데 사용될 수 있습니다. Microsoft가 게임 개발자 이외의 커뮤니티에 XNA를 푸시 한 경우 더 자주 사용되며 Microsoft가 계속 지원해야 할 더 많은 이유가있을 수 있습니다.

  • XNA 포럼이 약간 말라서 사람들이 답변을 얻는 데 더 많은 시간이 걸리며, Shawn Hargreaves를 제외하고는 더 이상 포럼에서 XNA 팀의 구성원을 거의 볼 수 없으므로 현재로서는 지원 역할을 수행 할 수 있습니다.

  • 지난 2 년 동안 XNA 용 오픈 소스 게임 엔진 을 만들어 지원 했는데, 엔진이 이전보다 훨씬 나아졌지 만 엔진 다운로드가 시작 시점의 약 절반으로 떨어졌습니다. 이것은 이전보다 XNA를 사용하는 사람이 훨씬 적다는 것을 나타냅니다. 여기 내 사이트에서 발생한 조회수에 대한 그래프가 있습니다. XNA에 대한 관심이 2007 년 말에서 2008 년 중반에 정점에 도달 한 것을 볼 수 있습니다. 빠른 시작 엔진 페이지보기

다음은 XNA 팀의 일부 구성원을 포함하는 긴 토론입니다. 물론 Microsoft는 발표 전에 많은 것에 대해 이야기하지 않기 때문에 많은 것에 대해 기꺼이 언급하지 않습니다.

http://xboxforums.create.msdn.com/forums/t/91616.aspx

이 같은 인용문도 흥미 롭습니다.

DirectX의 강력한 기능을 사용하여 몰입 형 게임 제작 새로운 Windows 8 그래픽 스택이 더 잘 통합되어 Direct2D, Direct3D 및 DirectCompute 구성 요소를보다 쉽게 ​​함께 사용할 수 있으며 이전보다 적은 수의 복제 리소스가 필요합니다. DirectXMath, XAudio2 및 XInput과 같은 XNA에서만 이전에 사용 가능했던 기능을 이제 사용할 수 있습니다. 게임 및 비디오에서 최고의 경험을 얻으려면 DirectX 11.1을 사용하여 입체 3D를 앱으로 가져 오십시오.

http://download.microsoft.com/download/1/E/4/1E455D53-C382-4A39-BA73-55413F183333/Windows_Developer_Preview-Windows8_guide.pdf

현재 XNA 용 오픈 소스 게임 엔진을 지원하고 있기 때문에 향후 지원되는 것을 선호하지만 XNA 4.0이 마지막 XNA 인 경우에도 Windows 게임을 빠르고 쉽게 만들 수있는 적절한 플랫폼입니다. 비디오 게임을 만드는 법을 배우려는 사람들에게 훌륭한 API입니다.

제 솔직한 의견은 XNA 4.0이 마지막 것이 될 것이지만, 나는 그것이 틀렸다는 것을 진심으로 바랍니다.


3D 지원은 아직 개발 중이지만 Microsoft 담당자는 Windows 8 지원을 위해 MonoGame을 사용하도록 사람들에게 말하고 있습니다. 엔진을 포팅 할 수 있는지 살펴볼 가치가 있습니다
.

1
그래, 내가 생각할지도 모른다. 나는 주로 엔진 프로젝트를 내가 익숙하지 않은 게임 개발 영역에 대해 더 배우기위한 취미로 사용했다. 무료로 사용할 수있는 Unity와 같은 엔진이 있으면 (내가 아는 한) 내 엔진을 거의 사용하지 않았습니다. 엔진이 얼마나 적게 사용 될지 알기 때문에 엔진의 접근성을 높이는 것이 얼마나 심각한 지 잘 모르겠습니다. 일반적으로 게임 엔진 기술을 계속 연습하기 위해 엔진을 계속 확장 할 수 있습니다.
Nic Foster

1
현재 WP7, Windows 및 W8에서 작동하는 3D XNA 게임에 Monogame을 사용하고 있습니다. 내가 원했던 몇 가지 중요한 요소가 여전히 남아 있지만 주요 관심 당사자가 많이 개발하고 있습니다.
RobCurr

47

iOS, Android, MacOS 및 Linux에서 커스텀 셰이더를 지원하는 MonoGame (XNA의 OpenSource, OpenGL 구현) v2.5가 오늘 릴리스되었습니다. 우리 팀은 PlayStation Suite SDK 지원과 Window8 Metro (SharpDX를 기반으로 함)를 추가하는 작업을 시작했습니다.

우리는 이미 상상력이있는 develop3d라는 3D 브랜치를 가지고 있습니다. v3가 곧 출시 될 몇 달 안에 모든 노력이 집중 될 것입니다. 현재 3D 사이트 인 YouTube 채널 ( http://www.youtube.com/user/MonoGameTeam?feature=watch)을 살펴보십시오 .

우리는 두 개의 게임 스튜디오에서 개발자를 도와 주므로 현재 develop3d 브랜치가 v2.5 브랜치보다 최적화되고 거의 완전히 다시 작성해야한다고 생각합니다. 지난 주말에 처음부터 시작했을 때 Reach 데모는 Windows에서 MacOS X로 포팅하는 데 15 분이 걸렸습니다. develop3d 브랜치는 아직 완벽하지 않으며 MonoGame 전체도 아닙니다. 그러나 우리는 우리가 가진 문제를 해결하고 더 많은 사람들이 도움을 줄 경우 더 나은 방법으로 나아가고 있다고 생각합니다.

Apple App Store에는 이미 28 개의 iOS 게임 (27 2D 및 1 3D)이 있으며, Android 마켓 플레이스에는 5 개, MacOS 및 Linux 스토어에는 1 개가 있습니다. 여기 Chrome Chrome에서 Bastion을 플레이 한 사람이라면 MonoGame의 수정 버전을 사용하고 있으며 SuperGiant가 MonoGame을 NaCL과 함께 사용하는 방법에 대한 정보를 보내 주셔서 감사합니다.

우리는 약 4-5 명의 활동중인 개발자가 MonoGame에서 일하고 있으며, 우리와 대화를 나누고 싶다면 monogame.codeplex.com 또는 #MonoGame 채널의 irc.gnome.org로 이동하십시오. Github 에서 최신 코드를 가져옵니다

XNA를 사용하여 크로스 플랫폼 게임을 만들 계획이라면 MonoGame을 고려하십시오.

도미니크.


4
나에게 부정적인 점수를 준 사람은 "Windows 8에서 관리되는 게임을 어떻게 개발할 것인가"에 대한 저자의 질문에 대답하지 않습니까? 앞으로 MonoGame이 Windows 8을 구현할 것이라고 제안 했으므로 Unity3D, DeltaEngine 등의 대안이 될 수 있습니다. 또한 MonoGame에 대한 xoofx 포인트를 명확히했습니다. 왜 다운 투표가 궁금합니다.
Dominique

6
귀하의 답변이 답변보다 광고처럼 읽히기 때문일 수 있습니다.
Josh

6
@Dominique 나는 당신에게 투표했다. 나는 당신의 제품을 사용하고 즐겼지만 "나의 요점은 XNA를 사용하여 크로스 플랫폼 게임을 만들 계획이라면 MonoGame을 고려하십시오"라고 말하는 비트입니다. 답변의 의도를 요약합니다. 소량의 유용한 정보가 그 사실을 숨기지 않습니다.
ClassicThunder

1
@Dominique 사이트 홍보관한 FAQ를 참조하십시오 . 나는 당신이 정직하게 질문에 대답하려고 노력했다고 생각하지만 질문에 대한 답변을 제공하는 것보다 프로젝트를 홍보하는 데 약간 걸렸습니다. 프로젝트는 오픈 소스이므로 Community Promotion Ad 자격이있을 수 있으며 살펴볼 가치가 있습니다. 답변 주셔서 감사합니다. GDSE에 오신 것을 환영합니다.
MichaelHouse

1
이 스레드에 응답 한 이후로 오랜 시간이 걸렸으며 많은 일이 발생했습니다. 저는 Windows 8 Preview Store에 MonoGame을 사용하는 게임이 2 개 이상 있다는 것을 지적하고 싶었습니다. 첫 번째 무장! 최근 Microsoft의 스탠드 및 사이트에 소개되었습니다. 룬 전설은 또 다른 것입니다. Windows 8에 제공되는 더 많은 MonoGame 기반 게임을 찾으십시오. 불과 2 주 전에 저와 다른 MonoGame 개발자는 영국의 Microsoft Reading을 방문하여 MonoGame에 대해 이야기했습니다. 우리는 8 명의 전도자에게 선물했습니다. 또한 미국의 Microsoft 전도사 인 Bob Familiar는 최근 3 부 기사 abou를 작성했습니다
Dominique

16

내가 상황에 대해 이해 한 것에서 그것은 두 가지 방법 중 하나를 갈 수 있습니다. API가 더 이상 사용되지 않거나 DirectX 11을 기반으로 XNA 버전을 만들기 위해 증가하고 있습니다.

각 관점에 대한 기사는 다음과 같습니다.


8
XNA가 몇 년 동안 XNA를 얼마나 많이 밀고 나면 XNA를 사용하지 않으면 똥이 있기 때문에 실제로 후자 가기를 바랍니다.
jhocking

@jhocking은 똥에 동의합니다. 그러나 개발자는 항상 다국어를 사용해야합니다. XNA는 내가 가장 좋아하는 플랫폼이기도했지만 지금은 플래시 나 다른 것으로 돌아 왔습니다. 한숨.
ashes999

2
XNA에서 프로그래밍 한 적이 없기 때문에 lol도 "너무"좋지 않습니다. 나는 이것이 XNA를 계속 복음화하는 모든 친구들을 망칠 수 있다고 생각했습니다. 그것은 개인적으로 나를 망칠 수는 없지만 다른 사람들이 망하는 것을 좋아하지 않습니다.
jhocking 2012 년

DX 자체에서 일어나는 일은 다른 버전의 XNA가 없을 것입니다. 그러나 기술은 변합니다.
Blecki

11
  1. Windows 8에서 XNA의 미래는 무엇입니까?

    XNA는 Win8 데스크톱에서만 실행되며 Microsoft가 Win8 Metro UI / DirectX11.1에서 실행되는 XNA 호환 API를 개발할 가능성은 거의 없습니다.

    Windows 8 Metro에서 API와 같은 XNA에서 계속 개발하고 싶지만 콘텐츠 파이프 라인 (XNA가 저예산 게임 개발자에게 적합한 이유 중 하나)을 계속 사용할 수 있으려면 ANX Framework 프로젝트를 따라야합니다 . 이 프로젝트는 Windows 8 RTM 이전 (적어도 SpriteBatch 지원)을 사용할 수있는 좋은 기회입니다. 쉐이더 (예 : 의미론)를 약간 변경해야 할 수도 있지만 ANX는 기존 XNA 프로젝트를 가져 오는 방법을 제공하므로 크게 도움이 될 수 있습니다. 또한 다른 백엔드 (그래픽의 경우 OpenGL)에서 작업하므로 다른 .NET 플랫폼 (Android / iPhone의 Mono)과 같은 다른 .NET 플랫폼을 대상으로 할 수도 있습니다.

    MonoGame은 또 다른 옵션이 될 수 있지만 현재 단일 OpenGL / ES 백엔드를 사용하는 2D 전용이므로 Windows 8 Metro에서 실행할 수 없습니다 (OpenGL은 Win8 Metro에서 "인증 된"API가 아니며 대부분 Microsoft 계획의 일부가 아님).

  2. XNA API를 제외한 관리되는 게임은 Windows 8 (Metro)에서 어떻게 개발됩니까?

    몇 가지 옵션이 있습니다.

    • 저수준 DirectX API 인 SharpDX를 직접 사용할 수 있습니다 (ANX에서 사용). 예를 들어, 2D 게임의 최소 프레임 워크는 일반적으로 이와 같은 낮은 수준의 API로 실현 가능합니다 (Direct2D로 수행 가능). Win8 Metro 게임을 개발하는 데 사용하는 두 개 이상의 소규모 회사를 알고 있습니다.

    • 다음을 사용하여 시작할 수 DeltaEngine 할 것이다 다음 달에 Win8 메트로와 희망 호환을 (아마 라이센스가 필요합니다)

    • 아직 Windows 8 Metro 지원을 발표하지 않았음에도 불구하고 Unity3D 로 개발을 시도 할 수 있습니다 (라이센스 필요). 그러나 최근 Direct3D11 렌더러에서 작업했기 때문에 Win8 지원을 제공하기가 어렵지 않아야합니다 (그러나 많은 Win32 API가 Win8 Metro에서 승인되지 않았으므로 포팅해야 할 유일한 것은 아닙니다).


5

WinRT 릴리스를 통해 Microsoft 방식이 크게 변화하고 있음이 점점 더 분명 해지고 있습니다. 과대 광고가 중단되고 네이티브 과대 광고가 그 어느 때보 다 강력 해졌습니다. 회사에 영향력이있는 사람 (일부는 Windows 팀의 핵심 주장)이 .NET 성능에 전혀 만족하지 않는 것 같습니다. 최신 기사에서 볼 수있는 주요 트렌드는 다음과 같습니다.

WinRT는 다음 .NET이고 C ++ / CX 는 다음 C #입니다.

그들은 말합니다 :

C # 에서처럼 C ++로 작성하는 것도 쉽습니다! C ++ 및 DirectX로 작성할 수 있다면 왜 XNA가 필요합니까?

그것이 내가 마지막으로받은 느낌입니다. 관리되는 모든 관련 프로젝트의 속도 저하를 예상 할 수있는 유일한 차이점은 속도 저하 량입니다.

Microsoft는 제품에 대한 지원을 거의 포기하지 않는 것에 대해 존경심을 가지고 있으며 더 이상 개발되지 않습니다. 따라서 XNA 4.0은 마지막으로 지원되는 버전이더라도 상당히 오랫동안 사용할 수 있습니다.


2

XNA 게임을 Metro로 이식하려는 인디 XNA 개발자에게는 좋지 않습니다. Microsoft는 관심을 보이지 않았으며 C ++ / DirectX 프로그래밍으로 돌아가거나 타사 C # 프레임 워크를 채택 할 것으로 기대합니다. 대부분 XNA Content Pipeline을 지원하지 않습니다.

슬프게도, 나는 때때로 MS를 이해할 수 없습니다.


7
Jules 안녕하세요. GDSE에 오신 것을 환영합니다! 우리는 여기서는 포럼과는 다르므로 그냥 말이 안되는 이와 같은 답변은 권장하지 않습니다. 추가 할 실제 정보가 있거나 답변의 출처가 있다면 좋을 것입니다!
MichaelHouse
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.