Skip to main content

News

Recent Posts

11
Engine Development / Re: miniSphere 5.1.0
Last post by Fat Cerberus -
That's odd, because 5.1.0 was supposed to fix that:
https://github.com/fatcerberus/minisphere/commit/51de201d53df8e4dc82afc6cff9f969f0a298890

So yeah, change any instances of "screen" to "Surface.Screen".
12
Engine Development / Re: miniSphere 5.1.0
Last post by Radnen -
So, I download a fresh, clean copy of MiniSphere 5.1.0 and I run a new, default game in the editor and I get a reference error. It says 'screen' is not defined.

I'm thinking of maybe creating games again, hahaha. I have a Raspberry Pi and I'd love to see if maybe it's possible to have Sphere games run on it someday.
13
Engine Development / Re: miniSphere 5.1.0
Last post by Radnen -
Merry Christmas! What you've done with Sphere in the last year is truly astonishing! Great work!!
14
Engine Development / Re: miniSphere 5.1.0
Last post by Fat Cerberus -
miniSphere 5.1.0 is out just in time for Christmas!  Not as many new features in this release as I originally planned, but I wanted to get a release out as it's been almost two months since 5.0.1. and I've done several important bug fixes since then.

Sphere API level is now 2.

Merry Christmas! :christmas_tree:
15
Engine Development / Re: miniSphere 5.0.1
Last post by Fat Cerberus -
I think the engine needs moar eaty pigz
16
Engine Development / Re: miniSphere 5.0.1
Last post by Eggbertx -
That was the idea. Also, I may or may not have brought this up before, but most games developed for desktop miniSphere won't be compatible with mobile miniSphere and vice versa without some heavy modification.
17
Engine Development / Re: miniSphere 5.0.1
Last post by DaVince -
Looks pretty good to me, and generic enough to Just Work on both platforms.
18
Engine Development / Re: miniSphere 5.0.1
Last post by Eggbertx -
I've been busy with IRL things so I haven't gotten a chance to work on it yet, but I was thinking about how I'm going to implement a mobile specific API, and I wanted to get your opinion on it before I start. Hopefully it will be compatible with both Android and iOS, but I don't have a macOS computer and don't feel like jumping through hoops.

Code: [Select]
`MobileDevice` Object
----------------------

MobileDevice.Default [read-only]

 Gets the device running miniSphere. This will likely only exist on mobile builds

MobileDevice.Platform [read-only]

 Can be 'android' or 'ios'

MobileDevice#activateTiltSensor()

 Activates the device's tilt sensor. If it is not activated, calling
 MobileDevice#getTilt() will return null

MobileDevice#deactivateTiltSensor()

 Deactivates the device's tilt sensor

MobileDevice#getTilt()

 Returns an object with x, y, and z float values representing the device's angle

MobileDevice#activateAccelerometer()

 Activates the device's accelerometer. If it is not activated, calling
 MobileDevice#getAcceleration() will return null

MobileDevice#deactivateAccelerometer()

 Deactivates the device's accelerometer

MobileDevice#getAcceleration()

 Returns an object with x, y, and z float values representing the device's
 current acceleration

MobileDevice#deactivateAllSensors()

 Deactivates all currently activated sensors

MobileDevice#getTouchCoordinates()

 Returns an array of objects with x and y coordinates for the current number
 of touches. If the screen isn't being touched, it will return a 0-length array.

Thoughts?
19
Sphere General / Re: Proper way of using Sphere?
Last post by Fat Cerberus -
Yes, miniSphere supports .mod (and .it, .xm etc.) through allegro.  It doesn't support mp3 however, or MIDI.
20
Sphere General / Re: Proper way of using Sphere?
Last post by Beaker -
Looping music, in particular mp3, has it's issues because of how the format is designed.  The fundamental problem occurs because of this:



You can read further into that if you want here, and while there are ways around it for mp3, it's flaky.  Some engines like Unity can get around it by accounting for the delay and padding programmatically/doing processing on the music file (this is more like what Rhuan was saying with changing the position).

To get looping working for music, the best way is to render it into .ogg format and then test how it loops in a good audio editor (eg: Audacity [it's free]).  If the music should be looping well, but there's a seam or click at the looping point, then you have to go down to the sample level of the audio file and make sure it starts and ends at the 0 volume point.  With monotracks you can do that by cutting off a few point samples, but with stereo tracks the easiest way is to fade out the music over the last few sample points and fade in the first few.


In the above, it can't cut be off correctly in stereo, so instead fade it out over the last 6 samples.  The 6 samples here will only last 1/10 of a millisecond, so it won't be noticeable to the listener and should get rid of the click sound.

From there, in sphere, you should be able to play it with repeat as true and it should loop just like in audacity.


If however, you're talking about more precise looping like, pay this part and then start looping this part, then you'll either have to do it in code by playing the first part and then fading in the loop when it should start (as two separate files would probably be easiest here), or maybe using a tracker format like .mod (more limited in terms of what it can do, but does have more complicated looping options).  I'm not sure if .mod is supported in miniSphere though.