It has been quite a while since I posted anything here, so I figured I would at least write an update on what I have been working on. Mostly, I have been spending my spare time the last few weeks looking at a variety of wrappers around Chromium in order to facilitate integrating it in to my hobby engine - which I have started calling "Plaster" (for no particular reason other than I thought it sounded good). The idea behind integrating Chromium is that it buys me a couple things: one, I can leverage the rich world of the web to drive my user interfaces; two, I get a familiar scripting system in Javascript and a very quick VM in Google's V8. If I want it also buys some other things as well - e.g. some measure of network support, video and audio playback, and generally anything else that you can do in a browser.
In my quest to integrate Chromium I have been primarily working with the Chromium Embedded Framework. I have also spent some time looking at Berkelium and very briefly looked at the EA WebKit code. Ultimately I went with CEF since it seemed more currently active than Berkelium. Unlike Berkelium, CEF hasn't necessarily been built toward this concept of using HTML inside of a game, where you essentially want to render the webpage to a texture that you can use with say DirectX. The latest binary drop added support for off-screen rendering, but unfortunately I found that I needed to go to the source anyway in order to get transparent page backgrounds working properly and in order to muck with font rendering. I say unfortunately because that meant not just the source for CEF but the source for Chromium as well - which there is a fair amount of (the build time on my poor little laptop was a few hours for the initial build). On the positive side it did get me trawling through the Chromium source and peaking under the hood there a little bit, which was fun.
I have been testing building up some UI in it using the YUI javascript libraries and currently it is all rendering correctly but not animating quite as smoothly as I would like - certainly not as smoothly as what it does in the actual Chrome browser. Once I get that ironed out as much as I can I need to spend some time thinking about how I actually want to setup using V8/Javascript for my scripting. When that is done I intend to release a demo of it all (and hopefully get some feedback about compatibility...). At some point in the future I might also start looking at stripping some things out of Chromium that I probably don't need, such as WebGL, in order to bring the size down a bit.