Microsoft Open Technologies is contributing code to the popular creative development toolkit openFrameworks (OF) to add support for Windows Store applications. This will allow openFrameworks developers to easily publish their applications to PCs and tablets running Windows 8 or 8.1 through the Windows Store, on which millions of users are now used to find their favorite apps.
Developers get to choose between two types of projects: the OF classic structure and the Windows UI XAML structure.
The OF Traditional way
The first type contains the traditional openFrameworks project structure, with a simple main() function and the usual methods derived from the ofBaseApp object setup(), update() and draw(). You will just need to copy and paste your code in. That is the magic of this release: your existing code just works!
The Windows UI XAML way
The second type of project provides the Windows UI XAML structure. With this one, the project will contain at least one XAML file describing the visual interface. You will be able to add controls like text edit, combo list, buttons, checkboxes and more, either by editing XAML code or using the designer in Visual Studio (2012 or 2013). While this XAML structure might be new for openFrameworks developers, it will allow them to easily integrate their app in the Windows experience, and to take advantage of other frameworks designed for use in Windows Store apps, as needed.
Note that the ofBaseApp object is still present, and if you have code in Draw(), Setup() or in events handlers methods, this will run correctly in XAML window. So it is easy to mixt OF draw instructions with XAML controls in the same window.
To learn more about Windows Store apps development, check out this page.
openFrameworks is OpenGL-based and mobile versions (for iOS and now for Windows devices) use OpenGL ES 2.0 (the embedded version of OpenGL), so when openFrameworks code runs on Windows, all OpenGL API calls need to be converted into DirectX API calls. To achieve this, we typically reference the open source ANGLE project code, which MS Open Tech previously enabled on Windows Store and Windows Phone apps, making it a good starting point to easily port OpenGL based libraries. This is the same approach used to enable Cocos2D-X on Windows Devices.
While we work with the openFrameworks community to integrate our changes in the main OF github repo, if you want to take a head start on developing OF experiences for WinRT Devices, you are warmly encouraged to check out the MS Open Tech development branch, which contains all the applicable updates.
Needless to say, besides any bug reports we welcome your input on feature requests and suggestions to make OF application development even more fun and productive!
Principal Program Manager
Microsoft Open Technologies, Inc.
A Subsidiary of Microsoft Corporation