The main challenge of this project was to realize DirectX 9-support and improved performance.
Our old solution was written in C++ using the DirectX 10 feature “instancing”. This worked very well on newer machines, but not on older PCs or virtual machines.
With the requirement of being able to run in virtualized environments, e.g. for the QA department, or Mac users, we have to support DirectX 9.
On top we wanted to increase the performance, too.