The performance of WineD3D depends on the application and display drivers. It is hard to say where we are losing the performance and whether it is WineD3D which has to be blamed. To find out where the performance is lost you need to profile the app using e.g. sysprof or oprofile. Then you can see where the time is spent. Typically we don't spend a lot of time in Wine code but outside Wine in the display drivers. Some drivers don't offer good implementations for all OpenGL calls which causes software emulation. It can also be that the drivers have to to convert data to a different format before they are upload to the GPU. It can also be that we use OpenGL in an inefficient way for this app. It is very hard to figure out good optimizations.