Porting Open Asset Import Library (Assimp) to WinRT

With the advent of Microsoft’s Windows 8, and it’s ARM-compatible Windows RT variant, Microsoft have really jumped headlong into the mobile device arena. I think the fact that developers will now be able to develop a single code-base that works on Phones, Tablets, Laptops and Desktop computers, will be quite a big deal for their platform, but it comes with one particularly difficult challenge: the code must only be compiled against what is know as the WinRT stack. This is a subset of the full Windows 8 SDK which is common to all hardware platforms, and it presents a challenge because none of the libraries we’re used to using right now (libpng, libjpg, etc, etc, name your library here). So, I’ve decided, mainly for interest’s sake, to try and port the wonderful Open Asset Import library, commonly referred to as Assimp, to the WinRT platform. Now, I probably would use this in a toolchain more than a runtime engine, but it is still a good test case. I started on this project today, and I can see a few troubles ahead of me:

  1. They don’t currently support VS2012, but CMAKE should fix this
  2. I have to do a “Boost Free” build, so I’ll have to see how that goes.
  3. The library uses D3DX, which is deprecated from Windows 8 up, so I’ll have to build it agains the old DirectX SDK first, and then start there.

Anyhow, I’m downloading the DirectX SDK now, so I’ll have to wait. More as it happens.

2 thoughts on “Porting Open Asset Import Library (Assimp) to WinRT

  1. Just a quick note: D3DX is only necessary for the Assimp Viewer, not for the library itsself. D3DX or the DirectX SDK are not necessary to build the library.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s