After a four-month incubation and testing period, Amazon is finally opening the doors to its brand new AppStream service. This cloud-based and cloud-hosted framework will ease the burden of developing, distributing, and running not just mobile apps but those for the desktop as well, and even games.
With AppStream, Amazon wants to redefine the entire software world after its own cloud-based image. Web apps are definitely nothing new but they only represent a fraction, albeit a growing one, of software in the world. If Amazon has its way, all software that you'll ever run will be run from the cloud, turning mobile devices or even desktops into thin clients. This AppStream-enabled world includes even games.
What Amazon AppStream brings to the table isn't just processing power or remote storage. It includes resources such as a GPU as well. Basically everything you need to have a complete running graphical program, except that the graphical user interface is being streamed to a device located somewhere else. For game developers, this might be a very tempting offer. For one, they no longer have to worry about burdening users with large downloads, as seems to be the case with modern games of late. They also no longer have to worry about the hardware capabilities of the client device, since all processing and rendering is done in the cloud.
That's not to say the client app won't be doing anything anymore. For one, it still has to initiate the conversation with the AppStream through an Entitlement Service to authenticate the session. Once authorized, it is the client's responsibility to actually route input events, whether from the keyboard, mouse, touchscreen, or game controller, to the application.
Since its initial announcement in November last year, AppStream has gained some new features based on tester feedback. A new OS X SDK has been made available to facilitate writing client apps on Macs and all clients have been upgraded to support game controllers. AppStream will also be able to detect the specific SDK version used to develop the client and run the compatible services as needed. AppStream clients can be developed to run on multiple operating systems including, of course, Android and Amazon's FireOS version.