Simon Armstrong

Forum Replies Created

Viewing 15 posts - 211 through 225 (of 231 total)
  • Author
    Posts
  • in reply to: Raspberry Pi binaries #1491

    Simon Armstrong
    Participant

    Have now added changes to common.sh and building modules slowly….

    As this is just a fork of the main repo to use monkey2 on pi do following from the pi home folder:

    git clone https://github.com/nitrologic/monkey2

    cd monkey2/scripts

    ./updatemods

    etc.

    in reply to: Image collide #1456

    Simon Armstrong
    Participant

    I was pretty proud of my BlitzMax collision implementation.  It uses a pretty simple scan converter and allows use of layers that can be used to optimise collision performance further.

    in reply to: portmidi module #1424

    Simon Armstrong
    Participant

    PortMIDI is desktop only.

    A native mobilemidi module could share a common midi namespace with portmidi module so from Monkey2 app development the receiving / sending midi over OSC and bluetooth could be nice and simple.

    As for timing, I plan to start running multiple processes per app. At present sharing the main thread with an SDL2 window rendering loop is not ideal.

    On Android separation of render and gui threads is enforced so it will be interesting to see how SDL2 behaves in this environment.

    in reply to: Streaming Audio #1275

    Simon Armstrong
    Participant

    The vsynth feature set is growing including noise wave and pitch bend.

    Attachments:
    in reply to: Creating new arrays #1274

    Simon Armstrong
    Participant

    I missed this one before:

    Found it again here

    in reply to: When is Ted2 IDE coming out ? #1272

    Simon Armstrong
    Participant

    Golly this sounds cool. Can’t wait!

    in reply to: Streaming Audio #1262

    Simon Armstrong
    Participant

    Samples per frame is 44100/60 = 735 but typical audio buffers need to be power of two so I am thinking for simple ping pong buffers fragment size of 2048 should be safe bet for uninterrupted polling per OnRender.

    How do Monkey2 timers work? Do they interrupt code or fire on app update?

    in reply to: Streaming Audio #1260

    Simon Armstrong
    Participant

    I use a mutex to stay thread safe and it is up to monkey2 app to keep the buffer fill.

    This is my current polling technique which I call every render:

     

    in reply to: Streaming Audio #1257

    Simon Armstrong
    Participant

    I have written following C++ class so vsynth.monkey2 can hopefully be thread safe.

    It seems to be working and hooking up C++ to monkey2 felt pretty darn cool.

     

     

    As a possible optimisation I would like to change the deque to be fragments (const sized array of doubles) but not sure if that makes sense.

    in reply to: Streaming Audio #1256

    Simon Armstrong
    Participant

    I am running with fragment size of 32 samples on Mac in release mode and in audio heaven.

    A vsynth banana featuring 5 types of oscillator, an ADSR envelope and arpeggiator from unknown universe looks to be this weeks project.

    in reply to: connecting to the Github with SVN client #1240

    Simon Armstrong
    Participant

    Github does support SVN protocol.

    Information here:  https://help.github.com/articles/support-for-subversion-clients

    in reply to: Streaming Audio #1236

    Simon Armstrong
    Participant

    Cool, am slowly getting the hang of structs.

    Yup, got threading and debugger acting in most arbitrary manner. To be honest, it was nice to be back in unsafe environment:)

    The actual call back needs to do a mem copy and increment a pointer so I will move that to a cpp file.

    Or yes, it could block and wait for a monkey2 signal to say the copy has been performed on main thread…

    Also, without a NoDebug flag like BlitzMax I think rule seems to be all monkey2 code should be app thread only no matter what.

    I aim to implement a freeaudio style mixer in monkey2 code using float samples and just poll it per update to keep write pointer ahead of read pointer on some shared memory.

    in reply to: First Impressions #1204

    Simon Armstrong
    Participant

    After machine generating (badly) the total API of 1630 lines here

    https://github.com/nitrologic/m2/blob/master/modules/box2d/box2d.api.monkey2

    I will probably cherry pick the bits needed for a minimal simulation, just not today.

    in reply to: First Impressions #1198

    Simon Armstrong
    Participant

    Yes, I am using original C++ source.

    in reply to: First Impressions #1195

    Simon Armstrong
    Participant

    I got sidetracked and wanted to find out how modules worked.

    First Box2D test successful!

     

Viewing 15 posts - 211 through 225 (of 231 total)