Interaction and OpenGL 3D graphics using Microsoft Kinect and Cycling ’74 Max by Dale Phurrough

Preview:

DESCRIPTION

During this university style interactive session, you will learn easy methods for connecting to the Microsoft Kinect 3D depth sensor using patching tools like Cycling ’74 Max. After briefly learning the basics, you will see how two streams of data from the Kinect can be manipulated easily using Max and displayed in an interactive OpenGL 3D graphics environment. You will leave the session with access to the code examples from which you can learn and reuse. Prior knowledge of the Kinect, Max, or OpenGL graphics is not required. Questions from you, the participants, are encouraged.

Citation preview

Interaction and OpenGL® 3D graphics using Microsoft® Kinect® and Cycling ’74 Max®

Dale Phurrough

Hello World:Procedural Languages

#include <stdio.h>int main(){ printf("Hello World"); return 0;}

program Hello;

begin write('Hello World');end.

do puts "Hello World"end

<? echo "Hello World";?>

Hello World:Visual Patching Languages

Cycling '74 Max

● Visual patching environment/language with 23 year history

● Original ancestor from IRCAM; French institute for science about music and sound

● World-wide use by musicians, developers, researchers, and visual artists

● Enhancements (extensions) are both open source and commercial

● Available for Windows and OS X

Microsoft Kinect

● Released Nov 2010 for Xbox 360® gaming● Quickly hacked for art and robotics● Microsoft responded with hardware refresh and

SDK● Includes 4 sensors

– Depth camera for 3D

– Color camera

– Accelerometer (gravity rotation)

– Audio microphone array

Depth Camera for Kinect

● Position in real distance (meters)

● Coordinates in X, Y, Z

● Head = 0.0, 0.8, 2.0

2.0 m

0.8

m

3D Computer Graphics

● Commonly used today in all media

● Range of power from handys clusters of →computers

● Two common programming standards: OpenGL and Direct3D

OpenGL 3D graphics

● Cross-platform (Windows, Android, Linux®, OS X, and more)

● Coordinates in X, Y, Z

Max OpenGL Kinect↔ ↔

X

YZ

Time to Code...Time to Patch

Patching time...

Patch 1: Hello World

Patch 2: Hello World in OpenGL

Path 3: OpenGL shapes and color

Path 4: Kinect Interactive OpenGL

Cycling '74 Max

Slides and code are available on my website:

http://hidale.com Seminars

Credit Notices

● Max/MSP and Jitter are trademarks of Cycling '74

● Mac, Mac OS, and OS X are trademarks of Apple Inc.

● Windows is a registered trademark of Microsoft Corporation in the United States and other countries.

● Linux is the registered trademark of Linus Torvalds in the U.S. and other countries.

● OpenGL is a registered trademark of Silicon Graphics, Inc.

● All other product and company names are trademarks or registered trademarks of their respective owners.

Recommended