Skip to main content

News

Recent Posts

21
Engine Development / Re: miniSphere 5.2b1 (stable 5.1.3)
Last post by Fat Cerberus -
It was actually somewhat tricky to implement that, as miniSphere is fully v1 compatible and Sphere 1.x didn't have an event loop.  So if you close the window while the game is in the middle of while (true) { FlipScreen(); }, the only way the engine can honor the exit request at that point is to forcibly bail out of JavaScript execution.  With ChakraCore that's done by calling a function to disable script execution, and doing so works well enough... the tricky part is that if you leave it disabled, you'll fall right through the event loop without getting a chance to run any exit handlers.  Figuring out where to put the safety net to stop that from happening without causing other unwanted side-effects was... fun. :stuck_out_tongue:
22
Engine Development / Re: miniSphere 5.2b1 (stable 5.1.3)
Last post by Radnen -
  • Dispatch.onExit: Run some code on shutdown, after the event loop terminates.  This works even if the user manually closes the window!

I like this. This prevented me from writing a clean MMO in Sphere back in the day. I had to 'poll' every user to see if they were actually logged in or not every like 5 minutes. Good times, hahaha,
23
Editor Development / Re: QtSphere IDE (working title) 0.2.3
Last post by Eggbertx -
And here's a long overdue update. It isn't much of an editor yet, but I'm making progress and starting with spritesets.
24
Engine Development / Re: miniSphere 5.2b1 (stable 5.1.3)
Last post by Fat Cerberus -
The first beta of miniSphere 5.2 is here!  I don't normally do beta releases for minor versions, but this one turned out to be bigger than I anticipated...

Big new features showed off in the beta are:

  • Profiling with SpheRun: Run your game with spherun -p to have it profiled and see exactly how hard you're pushing the engine.  You can also use the new SSj.profile function to have the engine profile your own function calls so you can see where you're spending the most time.
  • Z.inflate and Z.deflate for general-purpose data compression.  Just pass an ArrayBuffer or typed array containing the data to be compressed!
  • Dispatch.onExit: Run some code on shutdown, after the event loop terminates.  This works even if the user manually closes the window!
  • Shape.drawImmediate: Draw a vectorized primitive on-the-fly without the need to create a VertexList and Shape first.  The prim module takes advantage of this now as well, vastly improving its performance.
  • Texture#upload and Texture#download which allow direct access to a texture's RGBA bitmap
  • Surface objects will now be accepted wherever a Texture is expected, no need to call .toTexture() first.  This allows render-to-texture effects, as well as pre-rendering, to be implemented very easily.
25
Editor Development / Re: QtSphere IDE (working title) 0.2.3
Last post by Radnen -
Since QSI won't have a source editor, I'm going to work on a Visual Studio Code extension for miniSphere API completion/documentation and possibly for interfacing with SSj.

I like this Visual Studio Code idea!
26
Editor Development / Re: QtSphere IDE (working title) 0.2.3
Last post by Eggbertx -
I've resurrected and completed two dead projects so far (robotfindskitten-sphere and Sphere6502), so let's see if I can keep this fun train rolling. After messing around in Java and Vala with the intention of creating an editor solely for Sphere formats, I've decided that I would be better off working on QtSphere IDE again but completely dropping all of the source related stuff. Since I won't be using QScintilla, it should be much easier to build, since you won't have to go around and search for libraries.

Since QSI won't have a source editor, I'm going to work on a Visual Studio Code extension for miniSphere API completion/documentation and possibly for interfacing with SSj.
27
Engine Development / Re: miniSphere 5.1.3
Last post by Fat Cerberus -
Regarding the optimizations mentioned above, performance of API calls in particular has sped up a ton compared to the current release (5.1.3).  Before-and-after image attached.  This is a huge improvement and the effects are very noticeable in-game as well; everything is much snappier and CPU usage has been nearly cut in half across the board.
28
Projects / Re: Sphere 6502 emulator
Last post by Rhuan -
Glad I could help - I'm almost always happy to spend time optimising code :)

Nice to see this running smoothly at high FPS now.
29
Projects / Re: Sphere 6502 emulator
Last post by DaVince -
This is very neat. I played a little bit of adventure.asm.

I guess in a way this adds compatibility to a whole bunch of (simple) games to miniSphere all at once! :P
30
Engine Development / Re: miniSphere 5.1.3
Last post by Fat Cerberus -
I've made some improvements under the hood that should make miniSphere 5.2 noticibly snappier than 5.1 in various scenarios.

Also some new features coming in the next release, stay tuned for more info. :D