top of page

Origami Crane

2015/04

The origami crane was an OpenGL interactive scene. It started from a midnight setting and includes a sunrise transition to reminiscent times with parents. The technical focus was incorporating the Microsoft Kinect Sensor v2 into the project for the camera and certain gesture/posture control to get user skeletal joints position as inputs.

This was a course project of Computer Graphics Programming at Purdue University.

The technical features are listed as follows:

 

Camera can be controlled by user input

  • The eye position in view matrix is bind to the user head skeleton point

  • The field of view changes while both hands are raising overhead simultaneously

  • A rotation applied as well while both hands are raising overhead simultaneously

 

Other animation and motion events can be triggered by user input

  • The origami model tilts correspondingly while the user is leaning the body left to right

  • The sky box will change from night setting to day setting while both hands are raising overhead simultaneously

  • Two extra origami model appears while both hands are raising overhead simultaneously

  • Split screen for left view of the origami model smoothly inserted while only the right hand is raising over the should to the left and above

  • Split screen for right view of the origami model smoothly inserted while only the left hand is raising over the should to the right and above

 

Procedural animation in vertex shader

  • A simple animation applied to the vertices using sin(time) function

 

Multiple viewports or windows 

  • The main viewport fills the entire window

  • The room space point cloud viewport generated by Kinect on the bottom left and can be toggle on and off by F2 key

  • The user skeletal and joints viewport generated by Kinect on the bottom right and can be toggle on and off by F3 key

  • A left “split screen” viewport can be triggered by user while only the right hand is raising over the should to the left and above

  • A right “split screen” viewport can be triggered by user while only the left hand is raising over the should to the right and above

 

Cube mapping for reflections or other effects 

  • The origami model is using cube mapping for reflections of the sky cube and changes according to the sky cube

 

Per-fragment lighting 

  • The origami model is using Per-fragment lighting for the “night scene”

 

Alpha blending

  • Two extra origami model appears triggered by user input and using solid color alpha blending and the alpha value is changing according to sine function of time

 

Skycube 

  • The scene is wrapped by a Skycube and two set of texture are applied interchangeably according to user input

bottom of page