At The Barbarian Group, we have an impressive 9 screen rig that was used for the Samsung CenterStage project. Since it’s been running the same application nonstop for 2 years, we figured it was time to give some other applications a shot up on the big screen. In addition to running other Cinder apps, I wanted to figure out how to get WebGL running on it.
It’s crazy to think that we are all still talking about animated gifs in 2015. But we are. Even though it may seem like a silly thing to do, Cinder supports the loading and displaying of animated gifs.
Following is a simple class for loading and playing said animated gifs. All it does is loads the animated gif from your asset folder. You can optionally set the framerate to something other than the default 60fps. Note, this doesn’t take the original gif framerate and timing into account. It simply loads and stores references to the frames of the gif. If you want more advanced control over decoding and encoding animated gifs, check out Jesús Gollonet’s GifEncoder and GifDecoder Open Frameworks add-ons. You should be able to use them in Cinder with relatively little effort.
The Road to Cinder Docs
Last week, the latest version of Cinder (v0.9.0) was released. This release is kind of a big deal. At least it is for the creative coding C++ developer community. Over the last year and a half or so, Cinder has been going through a rewrite to enable the use of Modern OpenGL and to pave the way for for supporting future platforms ports, like Android and Linux. This was a massive undertaking and it’s been amazing to witness the steps taken by the Cinder development team in real time. Other features this update includes are the inclusion of GLM for all math functions, the Logging API, EXR support and much more. You can read the release notes here. This release also came with a new Cinder website and a new docs website.
I’m still working on it in my spare time, but I’ve made some progress. You can check out the first 4 chapters on github. I hope to have the next chapter done in December. Enjoy.
And if you haven’t checked it out yet, take a look at The Nature of Code. Buy the ebook or print copy. Whatever. Dan does a great job breaking down the principles that are necessary to simulating these different systems in a way that’s accessible and makes you actually feel kind of smart. It’s quite great.
Cinder Kaleidoscope Tutorial on Creative Applications
I hope to do more tutorials and walkthroughs in the future, so if there’s anything any of you out there want to know how to do, please let me know.
Cinder – Begin Creative Coding Book Review
I recently got my digital hands on a review copy of Packt Publishing’s new book Cinder – Begin Creative Coding by Krisjanis Rijnieks, the first of what will hopefully be many books centered around Cinder.
The book begins with a brief description of what creative coding is and eases into how Cinder fits into the equation. Before jumping into any actual code examples, the author does his due diligence and walks through how to get Cinder downloaded and set up on both OSX and Windows, showing how easy it is with the release version of Cinder. To get your first glimpse into seeing Cinder in action, the book guides you through some of the included samples. It’s an exercise that every first time Cinder user should go through anyway and continues to be a good resource when playing with a feature for the first time.
This is the first tutorial in a series designed to help Flash developers transfer their skills to the C++ creative coding framework Cinder. I’ll provide links to sample code at the end of the post. There’s a lot to learn, so lets get started.
Timing events to happen in a repeating loop is a common technique used in games and applications. It’s commonly used in games when for instance, you want a missile to attack you’re hero every 2 seconds or in an application when you want to remind the user where to click if they haven’t touched anything in a few minutes. I recently used a timed event loop for an installation that required an image transition every 30 seconds.
I’m about to start putting together a series of short tutorials dedicated to helping Flash devs get up to speed with using Cinder. Since there seems to be a wave of Flash developers making this move, I wanted to share some useful bits of code that are a result of research that I’ve done myself and put together into something that someone else might find useful. Cinder can be an intimidating environment to get going with, especially if you’ve never touched C++ at all before (as was my experience). My hope is to try and take some of the intimidation out of the process and maybe even save some of you some time so that you can go ahead and start using those flash skills to make some cool shit in Cinder too.
If anyone has requests for things you’d like to know how to do with Cinder, let me know. I hope to put one of these out every couple of weeks. The first one should be out shortly.