GithubHelp home page GithubHelp logo

imclab / greenhouse-samples Goto Github PK

View Code? Open in Web Editor NEW

This project forked from dcsch/greenhouse-samples

0.0 1.0 0.0 60 KB

Sample applications built with Oblong's Greenhouse SDK. (http://greenhouse.oblong.com)

License: Other

greenhouse-samples's Introduction

Greenhouse Samples

This repo contains sample applications written using Oblong's Greenhouse SDK.

Greenhouse is a toolkit for creative coders; it is free for non-commercial and limited-scale use.

Greenhouse is a minimalist version of Oblong's g-speak SDK. (g-speak is what we at Oblong use to build all our spatially-aware, multi-user, multi-platform, multi-device software.) We've taken the core parts of g-speak and distilled them into a C++ SDK whose goal is to be approachable, powerful, and concise.

Greenhouse includes our own custom Kinect-processing pipeline, Leap Motion support, and hooks for using mobile devices as input.

Download the Greenhouse SDK here: greenhouse.oblong.com

Pre-requisites

  • These samples assume the Greenhouse SDK is already installed.
  • The Greenhouse SDK for Mac requires
    • Mac OS X 10.6 or greater
    • Xcode
      Available from: the Mac App Store
    • Xcode Command Line Tools
      Available from: within Xcode.
      Select Preferences -> Downloads -> Command Line Tools

About the samples

Each sample includes an Xcode project file, which Mac users with Xcode installed can just double-click. Separately, each sample has a vanilla Makefile as well, for command line usage.

For runnable samples that focus on using specific features of the Greenhouse API, see the Greenhouse API reference.

helloworld

  • Just about the simplest thing that can possibly work.

  • To build at the command line:

    cd helloworld
    make
    ./helloworld
    
  • To build with Xcode:

    • open helloworld.xcodeproj
    • press Run button

empty-proj

hantenna

  • handling Kinect input
  • learning the set of gestures that the hantenna pipeline supports

leap

  • handling Leap Motion input

heartbeats3D

  • using a Thing as a container for other objects
  • working with timers
  • working with protein messages
  • handling user pointing events
  • creating simple text labels
  • doing work every frame with the Travail() method
  • tagging/untagging objects
  • animating color
  • parent/kid relationships

flocking-hearts

  • using a Thing as a container for other objects
  • handling user pointing events
  • doing work every frame with the Travail() method
  • parent/kid relationships and using Parent()
  • arranging objects on a flat plane using vector math
  • behavioral simulation

radiology

  • sorting a Trove
  • working directly with the file system
  • handling user pointing events and Kinect events
  • using logical ordering instead of depth-sorting the scene

box-nav

  • using a Thing as a container for other objects
  • handling user pointing events and Kinect events
  • doing work every frame with the Travail() method
  • arranging objects in true 3D space
  • working with timers
  • working with protein messages
  • using a custom class inherited from Thing (Box.h)
  • tagging/untagging objects
  • animating color, rotation, translation
  • tickle/thrill/chill system
  • OpenGL drawing (immediate mode)

echo

  • making a Greenhouse 'worker' application
  • listening for incoming protein messages
  • sending out protein messages
  • using command-line protein utilities (peek, poke, etc)

hydra / imago-worker

  • making a Greenhouse 'worker' application
  • listening for incoming protein messages
  • sending out protein messages
  • using command-line protein utilities (peek, poke, etc)
  • packing and unpacking data from protein messages
  • coordinating messages among multiple Greenhouse programs
  • coordinating with a Ruby program
  • using Plasma in Ruby
  • connecting to a web service from Ruby

iO

  • taking input from the g-speak mobile app (for iOS or Android)
  • using a Thing as a container for other objects
  • working with raw image data
  • working with protein messages
  • handling user pointing events
  • creating simple text labels
  • setting timers

cities

  • working with latitude/longitude data sets
  • setting up VBOs (vertex buffers) in the DataSet class
  • using OpenGL shaders
  • handling user pointing events, Kinect events, and keyboard input

seismo

  • similar to cities but a richer application
  • working with latitude/longitude data sets
  • setting up VBOs (vertex buffers) in the DataSet class
  • using OpenGL shaders
  • handling user pointing events, Kinect events, and keyboard input

Contributing

Found a bug in a sample?
Built something cool?
Pull requests are welcome!

Issues?

If you have issues with the samples, or with the SDK itself, use the Issue Tracker for this repo, or join the Greenhouse SDK Google Group -- or both.

Or send email to [email protected].

greenhouse-samples's People

Contributors

doug-oblong avatar obcp avatar sandover avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.