Re: TurboSphere
Reply #452 –
I'm not too concerned with 100% accuracy. Not yet, anyway. What I need most right now is just a working, mostly correct map engine.
Anyway, I've update TurboSphere to use the newest version of V8. I'm now building V8 with the TurboFan enabled, too. I'm working on rawfiles now, mostly so that I can start reading the Sphere filetypes in script. At that point I should be able to see what I really need to add to the rest of the engine (in particular the gfx API), and begin working on the stuff that the other plugins handled by calling OpenGL in the raw.
Alternatively, I may want plugins to be able to generate surfaces in native code through Sapphire when they open resources...well, we'll see how things look when we get there.
Also, the new V8 seems to stutter a LOT less. I can run unthrottled and not see any noticeable stuttering! Of course, I can't rely on V8 always working that nicely, I'm on a brand new MacBook and I suspect it would be a lot less smooth on my Core 2 Duo laptop.
I'm quite happy to see some new V8 stuff finally showing up. Finally, there is a way to shut down the engine at any time without just jumping ship and calling Exit()! Plus, they've exposed the platform API, so now it's up to the embedder to supply platform methods (like threading calls and atomics). They still provide a default platform for common ones (well...OS X, Windows, Linux, and Android), but that actually will make it a lot easier to port TurboSphere. Especially since I've been making a lot of the stuff V8 needs now on my own, for Sapphire and other plugins.
Which is kind of neat. To a certain extent, both TurboSphere and the V8 instance under it will use the TSPR. Platform integration for the win!
I also may have mentioned this before, but you can pass V8 flags through TurboSphere with the -8 option (or --v8flags). For instance, if you wanted to use the `let' keyword, you could call TurboSphere like this:
./turbosphere -8"--harmony --use-strict"
Or ./turbosphere --v8flags="--harmony --use-strict"
I've been printing TurboFan stats using some V8 flags like this. This is probably one of the more useful things I've put into the base engine!