I've seen a lot of talk about implementing my own ISurface but no actual examples of how I'd do that, there was one in a gist but that gist is gone now...
Ideally I'd like to keep everything on the GPU, as ultimately that's where I need it (I'm working on SteamVR Dashboard Overlays, which you pass an OpenGL Texture ID to), of course it's also a lot more efficient too.
Anyone got an example of the best way to go about this? I've tried using Mashal to copy the BitmapSurface buffer into a byte array and then into a texture on the BitmapSurface.Updated event but it's way, way too slow - scrolling the page looks incredibly choppy. Oddly though, while scrolling was slow this fish demo was reasonably speedy (not as speedy as in Chrome though)
When using EnableGPUAcceleration, access to the GPU buffer (whether it be OGL or DX11 render target) would be incredibly helpful here I think.