Welcome to the official site of independent game developer/music producer Julian Kantor, alias Funkmasonry Industries. Stay tuned for weekly updates about the upcoming musical action-adventure The Groov Cosmos. Email me with questions, comments, suggestions or criticisms!
Greetings, my brothers and sisters in the Order of the Funk...
What an exciting time it must be to be a visitor to this website! Two updates in as many weeks -- an unprecendented development in the history of a "weekly" feature! While I focused last week on graphics, I am going to talk a bit this week about Funk, and how it powers the game engine behind The Groov Cosmos.
Much like my first game Groov, The Groov Cosmos is driven by an internal musical timing system I call the conductor. The conductor triggers audio samples, game events, and is used to generate discrete and continuous graphical effects. In fact, while it shares the basic principles of the system behind Groov, I've completely re-written a new musical system for The Groov Cosmos that is able to do so many more things, like dynamic key changes, tempo changes, improvised patterns (a particulary cool feature), pulse shaping, and more.
Some of this stuff was implemented in a rather half-baked form in Groov, but a lot of the content was hard-coded into the game itself. Now, it's all abstract, and I've built tools for importing MIDI files and editing, or creating songs from scratch, within my new music engine. If I make a pattern in my toolset but don't think the instrument it's playing on quite suits it, I can record some new sounds, plug it into the sampler library and put it into the game; reverb, delay, filters and all.
One thing I'm particularly excited about is how I'm going to handle dialog. The Groov Cosmos takes place in a musical world, and you will encounter other characters throughout your journey. Since they live in a funk-powered universe, they naturally will sing and rap. And the cool part is, while the dialog lines will be pre-written, they will be rapped and/or sung dynamically so that it matches up with whatever part of whatever song happens to be playing at the moment.
The video above shows a very basic implementation of this idea. It's a real-time capture of a demo I put together for the systems I've been talking about -- the dialog lines and beat drops are triggered by me fiddling around with an Xbox 360 controller, and I didn't edit the captured video, just uploaded it straight to Vimeo. Neurotic disclaimers for unfinished work incoming:
- The speech synthesizer just has a plain old sample bank of me saying a bunch of phonemes in my regular voice. The characters in the game will sound much cooler.
- Hopefully I'll be able to get the dialog sound a bit more naturalistic by tweaking how emphasized syllables are handled
- I was capturing footage of this real-time demo at the same time as I was playing it, so the beat isn't very smooth and for some reason the voice drops a few phonemes here and there. It sounds better when it's running without video capture software, but hopefully I'll be able to optimize the time keeping a little more anyway.
I hope you enjoyed reading this and watching the video. If you have any questions or suggestions about what you'd like me to focus on, hit me up in the comments or on Twitter!
Greetings funk masons far and wide...
First of all, let me apologize for my lack of updates -- I've been really busy at my office job and as I result, I haven't gotten much work done on The Groov Cosmos. As I've posted about before, The Groov Cosmos is a pretty ambitious project and I'm starting to realize that I just don't have enough time to be able to work on it consistently enough to make good progress, so I've been thinking that I might start working on a smaller project before getting back to work on the big game.
I do plan on getting back into The Groov Cosmos at some point, hopefully with a small team to help me out. And thankfully, I will soon have the opportunity to work with a group of pretty incredible people at the USC School of Cinematic Arts' Interactive Media Division! As a huge fan of games like Journey (created by IMD graduates from ThatGameCompany) and the Uncharted series (directed by incoming IMD teacher Richard Lemarchand), I'm incredibly excited to learn a lot from some of the most creative people in the games industry.
I haven't completely stopped working on The Groov Cosmos though. I want to share a quick look at a 3D modeling tool I've been creating to make some of the procedurally generated graphics in the game.
The video shows the interface for editing a "surface of revolution" model, which basically sweeps an Adobe Illustrator-like curve around the Y axis and connects the dots, forming a 3D model. My tool also supports other model types but this is the simplest type, and the easiest to demo. Aside from changing the resolution of the model on-the-fly, which you can see demonstrated in the video, it's also possible to take a low-resolution version of the model and add an automatically calculated high-resolution normal map to it.
You can see just how quick and easy it is to create these models, and hopefully it will help lend The Groov Cosmos a really unique look. Plus, I can easily re-save all of the models at whatever resolution I want, which might come in handy considering I'm not sure which generation of game consoles might be out when I'm finally ready to release this game!