Microsoft Game Dev Blog
Game Creation Cloud Adoption and The Azure Game Dev VM
Today we're pleased to announce the Azure Game Development Virtual Machine, an Azure offering that makes modern game creation easier and opens the door for game developers to take full advantage of game production in the cloud.
Game studios around the globe are looking to adapt to new work paradigm needs to support the complexity of remote and distributed teams, including our own. Microsoft is cognizant of these challenges for the game creation community as well as the taxing effort that such an endeavor entails. We even see our own game studios accelerate their adoption of Azure to enable a more collaborative and efficient game development pipeline.
Let's explore some of the patterns we have seen studios adopting on the Azure cloud for game production, and also review a bit of what solutions exist today. Then we'll share our plan to bridge the existing gaps to make cloud production even better in the future.
Key Benefits to Cloud Adoption
As many teams are working remotely either due to hybrid working scenarios or being geographically distributed, game studios are seeing major benefits in moving either a small or large part of their game development pipeline to the cloud.
When it comes to the Cloud there are some key benefits that are being considered by game studios:
- Powerful compute: game studios need the ability to spin up powerful computers for GPU-intensive jobs, but they need to access it without latency to support their high-performance tasks.
- Remote studio enablement: Using Parsec or Teradici with cloud VMs enables remote work from anywhere. This way, the cloud machine functions as your desktop, which has persistent, highly-scalable storage, so you're only paying for compute when you need it.
- Global scale: The speed and accessibility of global scale is a huge benefit of the cloud, enabling studios to take advantage of dark fiber networking across the globe.
- Assets management: Centralized asset management helps game developers efficiently stay on task. By deploying Perforce proxies and replicas, you can accelerate onboarding of partners and staff.
- Faster builds: Burstable compute capabilities enable faster builds, which is especially true when using technologies like Incredibuild for accelerated compiling and asset cooking across hundreds of distributed cores.
- Deeper collaboration: With high-fidelity, low-latency desktop options like Parsec and Teradici, game creators get faster production and testing cycles from anywhere. Parsec's high-performance and seamless screen sharing functionality also allows you to share your desktop or creative work easily and securely. Unreal Engine Pixel Streaming enables collaboration and efficiency.
- Efficient testing: And the cloud powers efficiency of testing by enabling quick turnaround times for game testers to get compiled builds faster for testing.
At Microsoft, we are focused on strengthening our commitment to making Azure the cloud of choice for game creators so that they can take advantage of the benefits of cloud. That is why we have launched the Azure Game Development Virtual Machine. Microsoft partnered with the top game development partners to leverage Visual Studio, Unreal Engine, Perforce Helix Core, Parsec, Incredibuild, Blender, Teradici, DirectX/GDK/PlayFab SDKs and more in a customizable Azure workstation to make deploying your game creation environment simple, seamless, and secure.
Introducing the Game Development Virtual Machine
To help developers during these first cloud migration steps, and to quickly get exposure to what it's like using core game dev tooling in the cloud for remote workstations or build servers within your pipeline, we are announcing the public preview of the Azure Game Development Virtual Machine.
Microsoft has partnered with top game development tooling partners to offer a pre-built Game Development Virtual Machine in Azure, packed with core game development solutions pre-installed like
- Visual Studio Community Edition 2019
- Unreal Engine
- Quixel Bridge
- Perforce's P4V Client
- DirectX/GDK/PlayFab SDKs and more
This allows developers to quickly spin up a functional game dev workstation or build server in around five minutes, which enables easier validation of pipeline performance, pull down code/art assets from a Perforce repo to develop and test games right from the cloud. Additionally, it saves hours of downloads and configurations to get the environment needed for game creation. As your studio becomes more experienced in Azure, you can use a configured Game Dev VM as a base image to build your own custom workstation environments or build servers that adds any additional tooling needed (e.g., extra artist tooling, SDKs and frameworks).
We want to get the Game Dev VM in the hands of game developers and start getting feedback on how to make it better. Going forward, Microsoft will build on top of the Game Dev VM with not just new tooling and options, but also focusing more on deeper integrations and simplifications with using the core gaming partner solutions game devs use, working together with each partner to provide the best experience for game development in the cloud.
With the release of the Game Dev VM, Microsoft has built a stronger partnership across the game dev partner community and will continue to work together to develop new ways of making game development in the cloud as seamless as possible. We're committed to making Azure the cloud of choice for game creators, so expect to see additional investments in the future including: more powerful compute and GPUs; tighter partner integrations with improved cloud native authentication; better end-to-end examples and documentation on running your game dev pipeline in Azure; better options for cloud pipelines leveraging Xbox development and more. In the meantime, we encourage you to explore the new Game Development Virtual Machine and we believe it will become a critical component in your game development pipeline in Azure. To get started, visit our Game Dev VM documentation.
What can an entire game development pipeline look like in Azure?
This diagram shows a basic implementation of a game production workflow that is completely in Azure.
To the left and right are developers using Virtual Desktop Infrastructure to work directly in Azure through GPU-powered VMs. These workstation VMs can be in the form of our newly launched Game Development VM. At the core of the pipeline is Perforce Helix Core for version control, and Azure DevOps, our powerful, integrated SaaS CI/CD solution. Automated test farms can also be set up in Azure. Here the workflow, data and distribution are all centralized within Azure, allowing overall faster iteration, lower physical IT management effort, and greater overall security.
The above scenario is an ideal view for cloud native build out, but we know that the majority of game studios already have on-prem infrastructure running production builds today. As such, a wholesale lift-and-shift transformation would be largely out of the question as it would disrupt ongoing operations. These studios will instead need to embark on a journey with achievable steps into the cloud. In that case, the diagram above could serve as a template for a final cloud workflow. We believe that by judiciously migrating one component at a time into the cloud, Studios can better manage their overall migration risk while beginning to unlock the benefits of the cloud.
The key here is Azure's complete, yet customizable, solution suite. Technical Directors have the freedom to pick and choose components to transform at each stage, with the assurance that there's a full solution stack available to meet any end goal.
One of the first steps game studios tackle when looking to migrate anything to the cloud is linking the on-prem network to Azure through ExpressRoute to enable the fastest private connection possible, syncing Identities into Azure Active Directory, as well as ensuring security compliance is successfully managed. Once networking, identity management and security are set up, to ensure critical efficiency of the game development pipeline, the version control should be deployed, replicated or proxied into Azure to have the lowest latency accessing assets in the pipeline with minimal traffic back to on-prem. Once your game assets are available from within the cloud, now it's time for building your pipeline.
We also know that currently, many of the endpoints – or how the actual code and assets get generated and consumed – are still outside the cloud and the resulting data ingress/egress is a drag on efficiency. This is where the Game Development Virtual Machine comes in. The Game Development VM is a key piece of Virtual Desktop Infrastructure that could be used to round out a full development workflow in the cloud. Of course, every studio will have their own manifest of software packages, but the Game Development VM, with its dozens of major packages of pre-installed software, forms a solid base image on which to start. Additionally, the Game Development VM could be used in the build process itself, as a build agent in Azure DevOps leveraging prime building blocks like Perforce, Incredibuild, Visual Studio, GDK and other such pre-installed software.
First steps for cloud migration
Moving any workload to the cloud requires an investment of time and resources—but if approached correctly, the benefits quickly become apparent. We are here to help and would love to hear from you at our Game Dev VM channel on the Microsoft Game Dev Discord server. To get started, please check our documentation for Azure Cloud Build Pipelines, where we have a sample Perforce and Azure DevOps CI pipeline implementation you can try out.
From the Microsoft Game Dev blog
Creating for everyone: How to make more accessible games
Sarah Bond shares at the Microsoft Ability Summit why accessibility in gaming is so critical
Forza Horizon 5 crosses the finish line, fueled by AKS
FH5 relies on autoscaling Azure Kubernetes Service (AKS) clusters to meet the most challenging performance demands.
Lana Lux: Twitch Live-Coder and Creator of Strain
Meet Lana Lux, a game developer, designer, Twitch streamer and invested in an accessible, supportive community