Interview: Microsoft Universal speaks on Windows platform

Microsoft’s Windows 10 has improved a lot compared to its predecessor, but perhaps the most important aspect of the new OS is the company called the Universal Windows Platform. That’s why Microsoft has pushed Windows 10 as a platform for all devices. UWP allows developers to create apps for a specific device family instead of building for a specific OS. This means that if you create an app for Windows on the phone, it will be compatible with tablets and PCs, requiring minimal effort from the developer. While reviewing Microsoft Surface Pro 4, we asked ourselves some questions that seemed understandable from the end user’s point of view, but did not mean to answer them ourselves. So, to get the answer from the horse’s mouth, we discussed the questions with Harish Vaidyanathan, Director – ISV Business, Microsoft. Here is what he told us.
Can Continuum run x86-based legacy apps on phones?
No, you can’t.
Do you think something like this could be done in the end?
If you think specifically about continuity, it’s basically the ability to scale apps running on the phone to a larger display and other input types. This is the promise that the Universal Windows platform offers. So, all public apps today can take advantage of such features. So, if a Chrome has a universal app, it can take advantage of the same.
What if you have x86-based SoCs on your mobile, like Intel?
I can’t comment on an x86 Intel-based phone, but if you think about it, today we’ve solved a different problem with consistency. The problem we solved is actually a few layers above the processor. So, the Lumia 950XL or 950 is running a non-x86 processor, while on the PC side, we are running Intel SoCs, and we have no problem scaling, but no problem scaling. But Windows systems are the same, as far as developers are concerned, so the same app runs across different devices. So we have already solved the scaling across the x86 and ARM platforms.
But does that bring performance barriers? How do you get over that?
The way to think about it is, when a developer creates a universal Windows platform app, they are actually writing on a set of APIs we have created. So, when you decide to create an animation, you are not actually writing on a CPU or GPU, you are basically writing on the operating system. And all you have to do is make sure the animation maintains the frame rate across the processor type. The enormity of the engineering wonder is that it has never been done before.
That being said, does this mean that apps written for Windows 8.1 were created similarly or differently?
From a developer’s point of view, the way they would create apps for phones and PCs was a bit different. This is being made compatible with the launch of the universal Windows platform. This has been a major change.
Didn’t the developer write the app in OS before?
No, they will only write in the OS, but the difference is that the phone operating system was materially different from the PC operating system, which has been argued this time. So what happens now is that when you write an app for PC or phone, they are basically the same operating system. We have done the same with the kernel across both operating systems, which was different before. UWP etc. comes on top of the kernel.
Are there any limitations to the game, if any?
Most games are created using middleware, such as Unity. So, we had to work with most of the middleware to make sure the frame rate, graphics etc were retained across the device. So, this is the engineering work that game middleware developers have to do, to make sure that the developer himself does not see the difference between ARM and x86, dual-core vs. octa-core.
The other thing is that when you come up with an extreme gaming environment like Xbox, you don’t write on UWP platform. You write in the Xbox development kit instead. Xbox has apps mode and game mode, which allows casual games and high-end games, respectively.
So a game like Asphalt 8 can be written using UWP but not Call of Duty?
That’s right. If you have a mobile game, you’ll want to write as close to metal as possible.
But isn’t Windows a hindrance to mobile gaming? Since Android has Vulcan and Apple has Metal?
It’s funny that you say, since what Metal does is a DirectX equivalent, and we always have DirectX across devices. So it’s not really a limitation on us. The only thing is that people on the phone do not use DirectX, but use Unity. But our developers need to be able to use DirectX.
Does a developer have to write a new app?
If they accept a Windows 8 PC or tablet app, the process is faster. But if they use the old framework, it is more difficult. Or an older version, such as Windows RT, will make it easier.