GLdc - A new OpenGL implementation for the Dreamcast!
Posted: Thu Sep 20, 2018 10:57 am
I thought it was time for me to announce this more publically now that it's getting to a really good state.
GLdc is a new OpenGL 1.1+ implementation for the Dreamcast. It is already powering at least two in-development Dreamcast games (Reaperi Cycle is one and you'll have definitely heard of the other
)
It improves on libGL by more strictly adhering to the spec and it has a faster near "zero-copy" near-z clipping implementation. It supports a bunch of stuff:
- Dynamic memory allocation - only uses the memory you need
- Lots of texture data formats
- Dreamcast specific formats to glCompressedTexImage2D
- Per-vertex Lighting
- Automatic mipmap generation (glGenerateMipmapEXT)
- Triangles, Quads, Triangle Strips and Polygons
- glVertexPointer et al.
- Immediate mode
- Fog
I'm currently working on paletted texture support, and spotlights, as well as more performance improvements.
It's being lined up to become the default implementation in the KallistiOS ports repository. If you're a developer I'd appreciate it if you give it a go, report bugs, and send patches.
If you're not a developer, or you are and you're making use of my work. I've started a Patreon for my DC game development work, and I could use the support: https://www.patreon.com/kazade
This is the first of a few big announcements from me coming over the next couple of months. Stay tuned!
P.S. There's a video of it in action here (the low-poly look is intentional, it's totally capable of fully textured scenes):
GLdc is a new OpenGL 1.1+ implementation for the Dreamcast. It is already powering at least two in-development Dreamcast games (Reaperi Cycle is one and you'll have definitely heard of the other

It improves on libGL by more strictly adhering to the spec and it has a faster near "zero-copy" near-z clipping implementation. It supports a bunch of stuff:
- Dynamic memory allocation - only uses the memory you need
- Lots of texture data formats
- Dreamcast specific formats to glCompressedTexImage2D
- Per-vertex Lighting
- Automatic mipmap generation (glGenerateMipmapEXT)
- Triangles, Quads, Triangle Strips and Polygons
- glVertexPointer et al.
- Immediate mode
- Fog
I'm currently working on paletted texture support, and spotlights, as well as more performance improvements.
It's being lined up to become the default implementation in the KallistiOS ports repository. If you're a developer I'd appreciate it if you give it a go, report bugs, and send patches.
If you're not a developer, or you are and you're making use of my work. I've started a Patreon for my DC game development work, and I could use the support: https://www.patreon.com/kazade
This is the first of a few big announcements from me coming over the next couple of months. Stay tuned!
P.S. There's a video of it in action here (the low-poly look is intentional, it's totally capable of fully textured scenes):