new layout for hwyv

I redesigned the hwyv sequencer layout in a way that I think represents time and what’s happening in the program more accurately, using horizontal channels instead of vertical.  Recorded a screen shot of a bit of performance using samples from the John Cage work Six Melodies that I plan to eventually use as background music in my new game.

animation tool

I turned the drawing tool for my new app into an animation tool.  It’s a bit idiosyncratic, and geared towards the type of animation I want to use in the app, but it’s online and could be used with some guidance.

Right now you can basically draw, add frames, copy and paste.  When you click to go to next frame or last frame it automatically save drawing on current frame.  All of the buttons have key commands so I can draw with right hand and operate the program with my left.  Maybe will make tooltips at some point, though I doubt anyone else will really use it.  Eventually want to add layers, frame timeline and erase functions, but that sounds hard….



new game

I started working on a game idea a few months ago, haven’t had much time to get into it but managed to get one character animated and a nav mesh for it to walk around.  Most of the game is generated at run time, there will be different characters, dialog and building regenerated after the player dies.  Basic idea is a sort of exploration of meaning using my weird alphabet that has been developed through different projects since the Levi Strauss Autobiography project in 2012.  So there will be different characters that interpret the alphabet to mean different things and the player is trying to find a sort of guru character that offers some sort of salvation.  I’ve been reading blogs by christians and other faiths questioning their beliefs and using the game as a way of understanding or exploring that search.  That’s as far as I’ve gotten.

In general I am trying to start documenting the process of making stuff more, like a dev blog, rather than just dumping everything into a blog post when I’m done.

Canvas drawing

I’ve been slowly working on a new app.  I’m having a hard time wrapping my head around what it will be but I am starting to try to incorporate content from a novel that I started writing back in 2010 and have worked on on and off since then.  I think something that early apps were missing was a longer story with real, complex characters.  But it’s tricky to add so much text into a game or interactive context.

Anyway, one of the tools I’ve created while building the app is a squiggly drawing thing using JS and HTML5 Canvas.  It’s a pretty simple drawing script that just animates the points of the drawing a little bit, in the style of Dr. Katz or early Home Movies episodes.  The drawing interface won’t be part of the app, but a way for me to make and save drawings.  You can play with it here, and if you like a drawing, press space bar and it will print out the point on the website, copy and paste it into an email and send it to me at obroberts at gmail.

HWVY controller done, sort of

Finally got something working for the non-butt version of my HWYV sequencer (this is the butt version).  There were several bad design ideas before I decided to 3d print it.  It took 3 prints but I got something close enough to hold the circuit and strong enough to work with the force sensing resistor.  A unintended benefit of the 3d print is that the platform is a little flexible so its actually a more responsive surface than earlier wood prototypes.


I used the same leather and sewing technique to hold the FSRs as in a previous analog synth.  It took almost four hours to sew the leather patches into place and I felt like it was a pretty stupid approach while I was doing it, but now that I’m done I think it’s really nice, and if I actually use it a lot and perform some HWYV stuff I guess 4 hours isn’t much.



The controller has two FSRs, the two black leather patches, one controls the rate at which the sampler plays a sample, the second controls the start time of that sample.  The slider at the top (which needs a slider knob) controls the duration of the sample.  The blue buttons move between different channels.  Currently the sequencer uses 8 channels (each channel plays a different sample).  The red button records the performance of the sequencer on each channel so it can be played back.  The two green buttons I added as auxiliary buttons in case I come up with future functionality.  A couple ideas I have are a mute button for each channel (thought that’s sort of counter-intuitive the musical approach behind HWYV), a on/off toggle for adjusting the sample length (currently it switches only when the slider changes, but the slider potentiometer is a little noisy, so it changes more than I would like it) and another is something to toggle between different sets of music.  Since I have to use a computer anyway, I usually do this just by triggering them in with the mouse, but would be nice do not have to do that.



I also updated the code in two significant ways.  First off, I realized that the logic in the original version was totally out to lunch.  I had two simultaneous systems, one a bunch of booleans, the other a series of state changes, to keep track of which channels had recorded performances and which didn’t, and how to play them back.  I realized that I could get rid of about 75% of the bogus logic I had written in 2012 by using only the state changes.  It’s kind of interesting to see how bad my approach was back then.  The original program didn’t use classes at all, instead I just had a bunch of different array keeping track of recordings on each channel.  So I made a Channel class which made everything much simpler.

Screen Shot 2015-11-20 at 2.56.31 PM

I also completely redesigned the visual interface.  I still need to rethink how I’m representing tempo, sample time and sample beginning positions, right now it is a little counter intuitive though easy for me because I understand what the numbers represent.  The biggest change was the color scheme, which was just white, black and red, to something a little more friendly on the eyes.  But I’m not sure the horizontal organization makes sense, it looks more like a mixing board, which is fine, but the bars look more like expressions of volume (which in a way they are, but not literally) than tempo, so I may return to a horizontal look.  Overall, a huge step forward but still a lot of improvements to be made.

What I really need to do now is start making some recordings and putting them on Soundcloud or something.  I’m a little worried about copyright violations but the tracks are so distorted it seems somewhat unlikely.



Toenail Swim is in the Apple Store

I made an art app/game thing over the last year called Toenail Swim which is now in the Apple Store.  It will run on iPhone or iPad, probably cooler on iPad, and remember to wear headphones.  The game is free, I wasn’t as happy with this one, but wanted to finish it because I put a lot of work into it, but I don’t want to charge a dollar or whatever for it.  Android version should be out soon.