
Preface
xv
Acknowledgments
beyond just writing Processing code. We’ll have to interview occupational
therapists, work with assistive technology patients, clean up 3D meshes, use
a 3D animation program, solder a circuit, and program an Arduino. Along the
way, you’ll gain brief exposure to a lot of new ideas and tools, but nothing like
the in-depth understanding of the first four chapters. We’ll move fast. It will be
exciting. You won’t believe the things you’ll make.
Every step of the way in these projects, we’ll rely on your knowledge from
the first half of the book. So pay close attention as we proceed through these
fundamentals, they’re the building blocks of everything else throughout this
book, and getting a good grasp on them will make it all the easier for you to
build whatever it is you’re dreaming of.
Then, at the end of the book, our scope will widen. Having come so far in your
3D programming chops and your understanding of the Kinect, I’ll point you
toward next steps that you can take to take your applications even further.
We’ll discuss other environments and programming languages besides Pro-
cessing where you can work with the Kinect. These range from creative coding
libraries in other languages such as C++ to interactive graphical environments
such as Max/MSP, Pure Data, and Quartz Composer. And there’s also Micro-
soft’s own set of development tools, which let you deeply integrate the Kinect
with Windows. I’ll explain some of the advantages and opportunities of each
environment to give you a sense of why you’d want to try it out. Also, I’ll point
you toward other resources that you can use to get started in each area.
In addition to exploring other programming environments, you can take your
Kinect work further by learning about 3D graphics in general. Under the hood,
Processing’s 3D drawing code is based on OpenGL, a widely used standard for
computer graphics. OpenGL is a huge, complex, and powerful system, and Pro-
cessing only exposes you to the tiniest bit of it. Learning more about OpenGL
itself will unlock all kinds of more advanced possibilities for your Kinect ap-
plications. I’ll point you toward resources both within Processing and outside
of it that will enable you to continue your graphics education and make ever
more beautiful and compelling 3D graphics.
Acknowledgments
It’s a cliché of acknowledgments to say that all books with solo bylines are
really collaborative efforts. In this case, I’ll go further and say that I myself am
one. Specifically, my possession of the necessary knowledge and abilities to
write this book was the direct product of the excellent and patient work of a
series of amazing teachers I had at NYU’s Interactive Telecommunications Pro-
gram. This book would have been inconceivable without them.
Dan Shiffman’s passion spurred my initial interest in the Kinect; his tireless aid
as a professor, technical editor, and friend got me through learning and writ-
ing about it; and his inspiring abilities as a teacher and writer gave me a goal
to aspire to.
Kyle McDonald and Zach Lieberman taught a short, seven-week class in the
spring of 2011 that changed my life. That course introduced me to many of
the techniques and concepts I attempt to pass on in this book. I hope my