Windows 10 게임을 위한 기술 선택

Windows 10 게임에서 사용할 수 있는 프로그래밍 언어 및 그래픽 기술이 몇 가지 있습니다. 선택하는 경로와 방향은 개발하고 있는 게임 유형, 개발 회사의 경험 및 선호도, 게임의 고유한 기능 요구 사항에 따라 다릅니다. C#, C++ 또는 JavaScript를 사용하나요? DirectX, XAML 또는 HTML5를 사용하나요?

게임에 적합한 선택을 하는 데 도움이 되는 사항을 자세히 알아보세요.

기술 선택

DirectX

Microsoft DirectX는 고성능 2D 및 3D 그래픽과 멀티미디어를 위한 최고의 선택입니다. Windows 10의 새 기능인 Direct3D 12는 콘솔과 유사한 수준의 API 성능을 제공하며 이전보다 더욱 빠르고 효율적입니다. 게임은 최신 그래픽 하드웨어를 완벽히 활용하고 더 많은 개체, 더욱 풍부한 장면 및 향상된 효과를 구현할 수 있습니다. Direct3D 12는 PC 및 Xbox One을 비롯한 Windows 10에서 최적화된 그래픽을 제공합니다. Direct3D 11의 친숙한 그래픽 파이프라인을 사용하려는 경우에는 여전히 Direct3D 11.3에 추가된 새로운 렌더링 및 최적화 기능의 이점을 누릴 수 있습니다. Win32의 루트로 신뢰할 수 있는 데스크톱 Windows API 개발자인 경우 Windows 10에도 해당 옵션이 있습니다.

DirectX의 폭넓은 기능과 심층적인 플랫폼 통합은 가장 까다로운 게임에 필요한 기능과 성능을 제공합니다.

XAML

XAML은 애니메이션, 스토리보드, 데이터 바인딩, 확장 가능한 벡터 기반 그래픽, 동적 크기 재조정 및 장면 그래프와 같은 편리한 기능이 있는 사용하기 쉬운 선언적 UI 언어입니다. XAML은 게임 UI, 메뉴, 스프라이트 및 2D 그래픽에서 훌륭히 작동합니다. UI 레이아웃을 쉽게 조정할 수 있도록 XAML은 Expression Blend, Microsoft Visual Studio 등의 디자인 및 개발 도구와 호환됩니다. XAML은 주로 C#와 함께 사용되지만, C++를 더욱 선호하거나 게임이 고성능 CPU 사양을 요구하는 경우 C++와 함께 사용해도 좋습니다.

HTML 5

HTML(HyperText Markup Language)은 웹 페이지, 앱 및 리치 클라이언트에서 사용하는 공용 UI 생성 언어입니다. Windows 게임은 HTML의 익숙한 기능, 유니버설 Windows 플랫폼에 대한 액세스, AppCache, 웹 작업자, 캔버스, 끌어서 놓기, 비동기 프로그래밍 및 SVG와 같은 최신 웹 기능에 대한 지원 등 모든 기능을 갖춘 표시 계층으로 HTML5를 사용할 수 있습니다. HTML 렌더링은 백그라운드에서 DirectX 하드웨어 가속 기능을 이용하므로 추가 코드를 작성하지 않고도 계속 DirectX의 성능 이점을 활용할 수 있습니다. HTML5는 웹 개발 및 웹 게임 포팅에 능숙하거나 다른 선택보다는 접근하기에 쉬울 수 있는 언어 및 그래픽 계층을 사용하려는 경우에 적합한 선택입니다. HTML5는 JavaScript와 함께 사용할 수 있지만, C# 또는 C++/CX를 이용하여 생성한 구성 요소로 호출할 수도 있습니다.

JavaScript

JavaScript는 최신 웹 및 리치 클라이언트 응용 프로그램에서 널리 사용되는 동적 스크립트 언어입니다.

Windows JavaScript 앱은 개체 지향 JavaScript 클래스의 메서드 및 속성으로 쉽고 직관적인 방식으로 유니버설 Windows 플랫폼의 강력한 기능에 액세스할 수 있습니다. 기존에 웹 개발 환경을 사용하고 있거나 JavaScript에 이미 익숙하거나 HTML5, CSS, WinJS 또는 JavaScript 라이브러리를 사용하려는 경우 JavaScript가 게임에 가장 적합한 선택입니다. XAML을 사용하려는 경우에는 대신에 C# 또는 C++/CX를 선택하세요. DirectX를 사용하려는 경우 C++/CX를 선택하세요.

C++

C++/CX는 속도, 호환성 및 플랫폼 액세스의 강력한 조합을 제공하는 오버헤드가 낮은 고성능 언어입니다. C++/CX를 사용하면 DirectX 및 Xbox Live를 비롯하여 Windows 10의 모든 멋진 게임 기능을 쉽게 활용할 수 있습니다. 또한 기존의 C++ 코드 및 라이브러리도 재사용할 수 있습니다. C++/CX는 가비지 수집의 오버헤드를 발생시키지 않는 빠른 네이티브 코드를 생성하므로 게임이 탁월한 성능을 발휘하고 전력 소모가 줄어들어 배터리 수명이 길어질 수 있습니다. DirectX 또는 XAML과 함께 C++/CX를 사용하거나 둘의 조합을 사용하는 게임을 만들어 보세요.

C#

C#("C 샤프"라고 발음)는 혁신적인 최신 언어로, 단순하고 강력하며 형식이 안전하고 개체 지향적입니다. C#를 사용하면 C 스타일 언어의 익숙함과 표현력은 유지하면서 신속하게 개발할 수 있습니다. C#는 사용하기 쉽지만, 다형성, 대리자, 람다, 종결, 반복기 메서드, 공변성(Covariance) 및 LINQ(Language-Integrated Query) 식과 같은 여러 고급 언어 기능을 제공합니다. XAML을 사용할 계획이거나 게임 개발을 서두르려는 경우 또는 이전에 C# 사용 경험이 있는 경우 C#를 선택하는 것이 좋습니다. C#는 대개 XAML과 함께 사용하므로 DirectX를 사용하려는 경우에는 C++를 선택하거나, DirectX를 조작하는 C++ 구성 요소로 게임의 일부를 작성하세요.

그래픽 기술 조합

Microsoft DXGI(DirectX Graphics Infrastructure)는 여러 그래픽 기술 간에 상호 운용성 및 호환성을 제공합니다. 고성능 그래픽을 위해 메뉴 및 기타 단순한 UI에는 XAML을 사용하고 복잡한 2D 및 3D 장면의 렌더링에는 DirectX를 사용하는 등 XAML과 DirectX를 조합할 수 있습니다. 또한 DXGI는 Direct2D, Direct3D, DirectWrite, DirectCompute, Microsoft 미디어 파운데이션 간에 호환성을 제공합니다.

Windows 런타임 구성 요소를 사용하여 언어 조합

유니버설 Windows 플랫폼에서는 다른 언어로 작성된 구성 요소를 조합하기가 쉽습니다. C++, C# 또는 Visual Basic으로 Windows 런타임 구성 요소를 생성한 후 JavaScript, C#, C++ 또는 Visual Basic에서 해당 요소로 호출합니다. 이것은 선택한 언어로 게임 부분을 프로그래밍하는 훌륭한 방법입니다. 또한 구성 요소를 통해 특정 언어에서만 사용 가능한 외부 라이브러리는 물론 이미 작성해둔 레거시 코드를 사용할 수도 있습니다.

게임 엔진

게임 엔진을 사용하면 게임 개발의 속도를 높이고 DirectX 12와 같은 신기술 사용을 빠르게 시작할 수 있습니다.
Unity

DirectX 12는 Unity 5에서도 그 성능을 발휘합니다! Unity 5는 DirectX 12를 지원하며, Direct3D 12의 성능과 효율성을 Unity 개발 플랫폼에 전달합니다. 완전히 새로 디자인한 그래픽 파이프라인의 이점을 사용하여 여러 핵심 및 최신 그래픽 하드웨어를 완벽히 활용합니다. Unity 5와 DirectX 12를 함께 사용하면 향상된 프레임 속도, 개선된 배터리 사용 시간 및 멋진 그래픽을 기대할 수 있습니다.

Unity 5는 수상 경력이 있는 차세대 개발 플랫폼으로, 2D 및 3D 게임과 대화형 환경을 만드는 데 적합합니다. Unity 5는 완전히 새로운 예술적 성능, 향상된 그래픽 기능, 개선된 효율성을 보장합니다.

Unreal Engine

Unreal Engine 4는 모든 유형의 게임과 개발자를 위한 완벽한 게임 개발 도구 모음입니다. Unreal Engine은 모바일에서 가장 까다로운 콘솔 및 PC 게임에 이르기까지 전 세계의 다양한 게임 개발자가 사용합니다. Unreal Engine 4에 가입한 초기 DirectX 12 액세스 프로그램 회원은 DirectX 12를 지원하는 Unreal Engine 4.4 개발 프로젝트에 액세스할 수 있습니다.

더 나은 파워, 더 나은 성능: DirectX12의 게임

Direct3D 12를 통해 Windows 10의 게임에 대한 새로운 성능 개선이 가능하게 되었습니다. 새로운 Direct3D 12 API를 사용하여 CPU 오버헤드는 대폭 줄이고, GPU 효율성은 높이고, 프레임 속도 안정성은 개선하도록 게임 엔진 아키텍처를 구성하는 방법에 대해 알아보세요. Direct3D 12의 효율적인 고성능 게임 엔진을 빌드하기 위한 기본 사항 및 심층적인 분석을 위한 최고의 리소스를 찾을 수 있는 위치에 대해 알아보세요.

이 GDC 2015 개발 논의 시청

Windows 10 게임 만들기

시작

Windows 10 게임의 개발을 시작하는 데 필요한 다운로드, 도구 및 정보입니다.

디자인

디자인에 대한 정보와 아이디어를 제공하는 갤러리 및 지침입니다.

개발

Windows 10 개발 관련 문서 및 기술 정보에 대한 전체 라이브러리입니다.

게시

Windows 스토어에서 휴대폰, PC 및 Xbox One용 게임을 게시하는 데 도움이 되는 프로그램 및 파트너 관계입니다.

이 페이지가 도움이 되었나요?
추가 피드백이 있나요?
감사합니다. 의견을 보내 주셔서 감사합니다.
팔로우하기 Twitter 블로그 Facebook Twitter 블로그 Facebook 웹채팅 라인