What?
TurboSphere is a reimplementation of the Sphere API using the very modern and powerful libraries Google V8 and SDL. V8 is used in Google Chrome and its open source brother Chromium, and SDL is used in many games and by quite a lot of game console emulators. These libraries are functional descendants of SpiderMonkey and Corona+Audiere, the libraries used by the original Sphere, although in both cases they utilize modern technology and are extremely fast and powerful.
Sphere 2.0, a somewhat unrelated project, is currently the descendant of Sphere. It uses Squirrel as its scripting language, and for the moment still uses Corona+Audiere, although it is possible it too will use SDL in the future. While a worthy successor to Sphere, it has some notable differences.
- Sphere uses JavaScript, while Sphere 2.0 uses Squirrel
- Many of the original function names and usages are different
While those are not necessarily bad points, this breaks compatibility with original Sphere games, and abandons the JavaScript language which some prefer.
Why?
TurboSphere, on the other hand, is complete recreation of the original Sphere API, sharing all applicable function names and usages, and although it uses a newer revision of the JavaScript language it still retains backwards compatibility. The use of new libraries and all new source code also allows for several improvements to the engine's structure:
- A more sophisticated engine which manages resources more efficiently
- Native hardware OpenGL, DirectX, and Quartz support.
- Native 64-bit support in 64-bit versions
- Use true type fonts
- More efficient graphics and sound engines
- Extensive networking support
- No file system sandboxing
- Access to CD and DVD drives
- Modern mouse and keyboard support, allowing for advanced input
- Allows for features that are not feasible to add in 1.5/1.6, like dynamic window resizing. (i.e., horizontal scroll command)
TurboSphere also offers high performance by utilizing V8. Google V8 compiles JavaScript into machine code, allowing for extremely fast code execution.