I have spent some time playing around with the Omega components and they appear to do everything that I need (very well).

The problem I have is that I need to draw my map to a DirectDrawSurface. The map comprises of various layers of different sized tiles, and to draw each of these on the fly (when you scroll in a particular direction) will really hit the CPU / GFX card.

The way I have done this in DirectDraw is to blit the centre (non changing bit) section of the current map screen and move it one tile in the direction the map is scrolling, then just draw the new tiles to that buffer surface, finally blitting the new map image to the back buffer. How can I do this with Omega? There doesn't appear to be any DirectDraw interface, or DirectDrawSurface for the back buffer?

I thought Direct3D used the DirectDraw interface, and needed a surface for the backbuffer? I did have a quick look at the Screen type to see if I could expose the interfaces but I couldn't see them >.<

Any ideas on how I could get around this? What else can I use in Omega as an offscreen rendering area to store the current map screen?