Last year I wrote a wrapper that enables modern PCs to a few old KAMUI demos, and promised to release the source as soon as I could. Today is that day - you may find it at https://github.com/sifting/kamuidirect.
I apologise that it took so long to release, but the past few months have been interesting to say the least. The code is not as tidy as I would like, so I beg forgiveness - it was written during what free time my previous job allowed me between the grueling 50-60 work weeks. A big shout out goes to @Sega Dreamcast Info for approaching me about this project in the first place. It would have not been done without him.
You will need premake5, direct3d9 and gcc to build the source. Clang should work as well, but I have not tested it.
As an aside, while writing this wrapper I realised that the Kallistios API doesn't support the PVR's on chip accumulation buffer - am I correct in this assertion? I saw no functionality for it when I looked over the source code. KOS seems to have support for it in the headers, so it should be quite possible to add the functionality if needed. It would enable homebrew developers to implementation a whole new class of effects on the DC if so - I believe it's how urban chaos and alone in the dark 4 managed to do shadowmapping, and also how raster managed to get quake3 running so well.
I apologise that it took so long to release, but the past few months have been interesting to say the least. The code is not as tidy as I would like, so I beg forgiveness - it was written during what free time my previous job allowed me between the grueling 50-60 work weeks. A big shout out goes to @Sega Dreamcast Info for approaching me about this project in the first place. It would have not been done without him.
You will need premake5, direct3d9 and gcc to build the source. Clang should work as well, but I have not tested it.
As an aside, while writing this wrapper I realised that the Kallistios API doesn't support the PVR's on chip accumulation buffer - am I correct in this assertion? I saw no functionality for it when I looked over the source code. KOS seems to have support for it in the headers, so it should be quite possible to add the functionality if needed. It would enable homebrew developers to implementation a whole new class of effects on the DC if so - I believe it's how urban chaos and alone in the dark 4 managed to do shadowmapping, and also how raster managed to get quake3 running so well.