screenshot from the beginnings of a program to create binary rings
A good friend of mine was talking about how she wants a ring with binary characters around the edge (one vertical strip of eight raised or lowered dots per character), and that got me thinking. I’ve started in on a program to create 3d models of rings with a given bit of text rendered in binary around the outer surface.
It’s really early so far- just a program that renders a ring with a given inner/outer thickness and a given number of segments. I’m also using this project as an opportunity to learn about Qt, which I’m really liking so far.
The ultimate goal is to make it really quick and easy to generate STL models, and offer custom binary rings as part of Shapeways co-creator program.
This was meant to be the start of a project by which a user could navigate an endless procession of products, with the individual products being pseudorandomly generated based on a seed tied to user position in the game world. I also had some ideas about making it more game-like, with a target item that the player would need to find.
I ended up with just a rough prototype, then I got distracted with other projects. The demo included generation of a shopping cart and shelves (through hand-coded vertices), and simple keyboard navigation. See below for a video of the demo.
This was a kind of game design one-liner- a second person shooter. Instead of “I shoot”, “You shoot”- the player selects a character that then shoots them. In the application, you select a character from a typical character-selection screen. That character then shoots you, the screen goes red, and the application starts over.
If you’d like to try it, you can download it here. Note that it’s all 2d (though implemented with OpenGL) and uses Quake3 characters.
I recently created a new interactive 3d piece for the OmniCircus show, meant to accompany “Deaf on Hollow Winds”, one of the songs we perform (written by Frank Garvey). The piece consists of an endless stone walkway that crumbles away and spreads off into the sky, with a moving sunset backdrop.
So we did the show at the Xenodrome Friday, to a great audience response. Declan’s music is really haunting and touching, and a lot of people were strongly affected. As promised in the last post, below is a sampling of the interactive graphics I prepped for the show. All images are lifted from an excellent music video shot by Declan and Co. in Ireland, Photoshopped to look like old photos in a frame and stuck into a small OpenGL program that renders images to the screen and advances through them at the press of the up arrow.
As mentioned below, I bought a metal Dance Dance Revolution pad for the navigation interface for the Infinicity:
I’ve got the pad controlling motion through the suburb demo. Stepping forward moves the viewpoint forward, stepping back produces backwards motion, and stepping to either side causes the camera to turn in that direction.
I’ve also added a splash screen- it alternates through three shots from the various pieces of the app (to be updated as the visuals improve) until a coin is inserted. Once a coin is inserted, the user is free to move around the space via the DDR pad. The time a quarter buys isn’t strictly limited, but if there is no motion on the part of the user for a set period, the app reverts to the splash screen until another quarter is inserted.
I’ve got buildings-aplenty, being rendered via a recursive algorithm. Other than that, there’s been progress made on the interface front. I’ve got it responding to a coin interface I built awhile ago (pictures to come soon), and I have the navigation being controlled via a gamepad. In it’s final form, navigation will be driven by stepping on a metal Dance-Dance Revolution pad. I just received the pad on Saturday, but need to modify the code a bit, as the pad registers as X/Y axises rather than button presses.
I’ve started in on the creation of a coast for the infinite city, with the above results. The textures are just stand-ins, and will be improved. Also, the water doesn’t yet animate, and the coast could use some more variation than it presently has.
So I’ve been thinking that the next thing I want to add to the infinite city is a coastline, and that I want the coastline to have piers extending out into the ocean. While thinking about how best to approach that, I started thinking about generating an infinite variety of worn planks with which to construct the piers. I’ve coded up an algorithm that does just that, with results to the left. Haven’t had time to add texture support just yet, but the final version will also select from a few different textures based on random choice and the aspect ratio of the plank.
If you’d like to see for yourself, click here to download the demo app. The arrow keys will rotate around the plank, and F3 will cause it to alter itself. Note that there’s currently no bottom to the plank. I’m undecided as to whether or not to add one, as it adds polygons that aren’t likely to be seen, and a savings of 8 triangles per plank times lots of planks could end up being worthwhile.