Skip to main content

News

Topic: TurboSphere (Read 194446 times) previous topic - next topic

0 Members and 6 Guests are viewing this topic.
  • DaVince
  • [*][*][*][*][*]
  • Administrator
  • Used Sphere for, like, half my life
Re: TurboSphere
Reply #75


Well, someone has seen Wreck-it Ralph. :P


Haha, indeed, and that movie was awesome. Every gamer owes it to themselves to see it at least once, if only for the nostalgia factor alone. The filmmakers really did their homework there. The fact that the story is great is just icing on the cake (no pun intended, I swear! :) )

I'm going a bit off-topic here, but all that movie is missing is Sonic saying "and that's no good!" when he had a perfect opportunity to.

  • Fat Cerberus
  • [*][*][*][*][*]
  • Global Moderator
  • Sphere Developer
Re: TurboSphere
Reply #76
Yeah, we kind of hijacked the thread a bit there didn't we? Getting back on topic, any idea when TurboSphere will be at 1.5 levels of functionality? The current 1.x engine is pretty much a 10-year-old codebase, so it's be nice to use something a bit more modern :)
neoSphere 5.9.2 - neoSphere engine - Cell compiler - SSj debugger
forum thread | on GitHub

Re: TurboSphere
Reply #77
It'll be a while. I'm generally aiming for summer next year, but it might be later or sooner. Some weeks I get ten functions added in and the ability to read another Sphere filetype, sometimes a month passes with nothing to show.

If you want it sooner, bug folks to make up plugins for TurboSphere. That's 99% of what there is left to do, just flesh out the plugins.

  • DaVince
  • [*][*][*][*][*]
  • Administrator
  • Used Sphere for, like, half my life
Re: TurboSphere
Reply #78
I think I've found a reason to learn a bit more C++. But I'll wait until your API becomes stable (and until I've actually got the time to properly learn that stuff). :)

Re: TurboSphere
Reply #79
At the moment, I really only expect API changes to require minor changes to most plugins written right now.

Re: TurboSphere
Reply #80
I have a super small request:

Is it possible to have an image.blitMask() function? That would really help to create fade effects. That simple function alone would make me so much more happy ^^

Pleeeeeeeaaaaaaaaaseeee *-*

Re: TurboSphere
Reply #81
If you could think of a nicer way to do blitting than all the zoom/rotate/mask blit combinations that would be awesome (that part of Sphere's API kind of irritated me). Maybe a .zoom property on images? Since native prototypes are extendable in TurboSphere, the compatibility script could add the old methods.

Re: TurboSphere
Reply #82
Graphics masks are coming. But it's a big system, and I haven't quite fleshed out how I'm going to do it yet. I've been playing around with the idea for a while. I could certainly plan on adding them soon (or next).

As far as zoom/rotate/mask (and transform), at some point everything except a normal blit will use the same backend inside TurboSphere (which will be pretty much like transformBlit) with optimizations for when it would only need to do a zoom or rotate. I'm sure there could be a way to make it more unified in script, but I haven't thought of it yet.

The reason that rotate and transformBlits don't exist yet is that right now I'm not using OpenGL, which would make it much simpler and almost certainly much faster. At some point, I plan on replacing the graphics plugin with an OpenGL one.

Re: TurboSphere
Reply #83
Just a small bug report:
The Screenshot below shows four colored circles using FilledCircle( x, y, r, color );
It seems like it is broken for r = 5 and r = 6... I did not tried other values... r = 4 works fine.

Re: TurboSphere
Reply #84
Ah, that. It's actually a pretty common problem with circle drawing algorithms, Sphere's old editor does almost the same thing. I think I do know a good way to fix it now, though.

Re: TurboSphere
Reply #85
TurboSphere 0.2.3 binaries are released, Windows 32 and 64 bits.

I've mostly been sitting on this for a while, since I've been pretty busy lately.

This adds font.wordWrapString, font.drawTextBox, DoesFileExist, and upgrades V8 to its newest versiont (3.17). It also fixes a crash I found related to GetFileList and another very unlikely crash in WindowStyles.

Unfortunately, V8 is on the cusp of a huge change to the API. This is probably going to be the last upgrade of V8 I do for a while. Maybe. They might be fixing the weirdness where the only way to add weak reference callbacks is to make a handle persistent and then to change it back to being weak, and how handlescopes seem rather limited. I hope they change that, at least. In any case, they are refactoring the entire handle system, so all of the code I have now for wrapping objects for JS will be deprecated.

I also am distributing the libraries to read more image filetypes. You should be able to also use jpegs, tiffs, and...whatever libwebp can open. I actually don't know what that last one is for, but it came with the newer SDL_image, so I included it.

I also fixed quite a few one-time memory leaks, and a couple other minor leaks.

Internally, I also changed a couple things with plugin.h, which makes argument validation for plugins much less cumbersome.
  • Last Edit: April 15, 2013, 06:52:44 am by Flying Jester

  • DaVince
  • [*][*][*][*][*]
  • Administrator
  • Used Sphere for, like, half my life
Re: TurboSphere
Reply #86
Good job! Wish I had time to test today.

Quote
... whatever libwebp can open ...

WebP images.

Re: TurboSphere
Reply #87
Oh :/ looks like the new version lost its ability to render anything except fonts. Can you confirm that, or is it only on my machine?

And according to the console output GetSystemFont() always creates a new font. Is that a desired behavior?

Re: TurboSphere
Reply #88
It actually reopens the font's file and rereads it, too. Since you will be able to change the images in a font object like you can in Sphere, it's supposed to do that.

EDIT:

About not rendering other stuff, have you tried to, or is it just that the included test game doesn't render anything? Because the test game isn't supposed to.

It turns out I went and broke surface.blitSurface. And colors might be messed up. I didn't notice until after I made the release.
  • Last Edit: April 16, 2013, 07:30:33 pm by Flying Jester

Re: TurboSphere
Reply #89
I've begun creating the OpenGL graphics plugin.

It feels good to make a new graphics plugin. The old one was a bit long in the tooth, having bits from all the way back when I started, then through the internal plugin API, and then the current plugin API.