Description

There are many ways to spin a cube and in today's episode we're coming from a different... angle =P. Cooper Partin from the Windows Graphics team is joining to tell us about his work on the ANGLE project to enable OpenGL ES 2.0 support in Windows Store, Phone and Universal Windows apps. ANGLE is an open-source library initially developed by Google to allow Windows desktop apps to run OpenGL ES or WebGL content by translating calls to DirectX 9 or 11.

The Discussion

I don't understand how Marian Luparu from Microsoft is taking credit on stating how they got ANGLE to work on essentially the WinRT platform when us, the ANGLE development community have had it running on WinRT for three years now. Where was Microsoft three years ago? The Window Store, WinRT platform has been a big disappointment. Microsoft has deprecated Windows RT and the ARM Surface RT tablets. Maybe if Microsoft gets the iOS and Android bridges working for the Universal Windows Platform someday it will be a substantial platform.

@William, I am not trying to take any credit away - let me know where that's not clear and I will try to rectify if I can.

ANGLE is an open-source project with many great community contributions. One of the contributors is the Windows Graphics team and in this video Cooper from that team talks about their specific contribution. For details about their contribution, check out their repo here: https://github.com/MSOpenTech/angle

@mluparu, It just seems that Microsoft is taking credit for bringing ANGLE to WinRT platform. See video at 3:04; it states Microsoft "bringing" ANGLE to Windows Store Mobile platform. Also at 12:40 states "we done it correctly". If you look at the ANGLE project issue 12917046 "Changes to support Angle on WinRT devices (Windows Store Apps)" was completed back in September 2013. We had ANGLE running on the original Surface RT device two years ago. https://groups.google.com/forum/#!searchin/angleproject-review/ANGLE$20winRT/angleproject-review/y-9AFE0q4wg/NPNKZlzabFsJ

@William, it is certainly not our intent to take credit for the work of others. ANGLE is a great project combining the hard work of many, and my team is proud to claim a place as just one of its many contributors!

Over the last year Microsoft has put significant effort into making ANGLE run better on the Universal Windows Platform. Improvements we made include:

- Greatly improved support for feature level 9.x GPU HW in the DX11 renderer (for example: a path that emulates point sprite rendering using HW instancing, as opposed to the previous geometry shader emulation that was not compatible with FL 9.x).

- Memory optimizations (important for low end devices like Windows Phone) which in some cases can provide a 2x reduction in texture memory usage.

- Performance optimizations (again focusing on low end HW) such as a render-to-backbuffer feature that can significantly reduce GPU copy bandwidth.

- EGL integration with both the CoreWindow and XAML swapchain presentation models.

- Packaging via NuGet makes it easy for new developers to get up and running using ANGLE in their UWP apps.

As mluparu asked, please let us know if there are places where we are not being clear enough about giving credit where it is due. There is plenty of credit to be shared between everyone who contributed toward making ANGLE work as well as it does today. My team is happy to claim the work we did, and feels no need to accidentally also steal the credit of others :-)