Blog

FBX Import Test

Adding FBX Support

FBX has gotten quite a high adaption rate over the years. I had shied away from adding support for it because there is no official spec, only unofficial bits and pieces like the document the Blender foundation published a while ago. There is the official FBX SDK but it is in binary form only. However, it seemed to be the most viable option to be able to handle all the different versions the format had over the years.

Read More

Featured Post
Trac Logo

Setting up TRAC on macOS

For those who haven’t heard of it yet, TRAC is an open source combination of a ticket and a wiki system mixed with version control integration written in Python. It’s great for organising work especially in small to mid-size development teams but due to the large number of plug-ins and its incredible plug-in API, one can even customise it to cover other aspects of a business. I had meant to write a blog post about it for a while, mostly as a cheat sheet for myself or as a reference to point others to. Since I had to move my personal TRAC to a new machine it is the perfect occasion to write it down for once. So here goes …

Read More

Featured Post

Second update video on tessellation posted

The second instalment in the dev update videos has just been published. In the last couple of weeks, work has mostly been focused around improving the tessellation quality and algorithm robust with some nice results. ISO-lines are now weighted higher than trim curve tessellation which results in a much nicer topological flow.

Read More

Featured Post

Monthly Status Update Video

There hasn’t been much news lately as we have spent the time on improving tessellation quality and optimizing low-level NURBS functionality. So instead, here is the first in a monthly series of videos that will keep you in touch with what is going on inside our operation. Enjoy!

Featured Post
Sunglassed with and without ground shadow

Simple Ground Shadow Baking

Shadows add a lot of realism to renderings. After having done a lot of internal refactoring and ground work for future features, I wanted to add something that improves the image quality but doesn’t delay too much from the actual topics I have to work on. Hence the idea of adding a simple, pre-baked ground shadow.

Read More

Featured Post
Depth Buffer Sunglassses

Reading the Depth Buffer in Apple’s Metal API

I have been working on a feature that requires reading the depth buffer and storing the data in an image. While this was quickly done in the OpenGL-based renderer, I struggled getting it to work with the Metal-based renderer. Things got weirder and weirder … until the source of all problems presented itself as a single missing line of code! … Read More

Featured Post
Aliasing in stripe shader

Anti-Aliasing Shaders

Somewhat surprisingly, even in an age of retina displays aliasing is still an issue. Writing the stripe light shader was easy enough but creating an anti-aliased version took some research. It’s actually quite easy once you get your head around the principle.

Read More

Featured Post
Boost logo

Building boost locale on iOS

There are three main aspects in the Core SDK where boost is used: XML parsing, file system and unicode handling. Getting boost to compile correctly for iOS is already something that requires some custom sh scripts but getting “locale” (the library that does unicode handling) to compile is a headache for many people on the net. So here is a summary of all the problems and the final solution on how to compile boost (V1.61.0) for iOS with locale support using the iconv library.

Read More

Featured Post
PLMXML Engine example

PLMXML Support

Question: What is procrastination for software developers that do geometry processing? Answer: Writing importers apparently … I had some spare time and didn’t want to tackle the next big feature so I implemented yet another format: PLMXML. … Read More

Featured Post
Shapeflow 3D diagonstic override rendering modes

Diagonstic Rendering: Stripe Lights and U/Vs

The Shapeflow 3D iOS app is nearing feature completion. One big milestone was reworking the user interface concept. It is now easier to add additional features and the handling on the smaller screen devices (e.g. iPhone) has been improved. The other features that has been on my list for quite a while were rendering override modes as well as an extended material system. As a result, the app now features a U/V and stripe light diagnostic mode.

Read More

Featured Post