Your SlideShare is downloading. ×
Intro to openFrameworks
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Intro to openFrameworks

735
views

Published on

This workshop was given at FITC Toronto 2012. Most of the details were shared by browsing code and talking together, so there isn't very much "content" in the slides themselves.

This workshop was given at FITC Toronto 2012. Most of the details were shared by browsing code and talking together, so there isn't very much "content" in the slides themselves.

Published in: Technology

0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
735
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
21
Comments
0
Likes
2
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Intro to openFrameworks
  • 2. Overview Intros from me, and you OF history and inspiration OF structure and syntax Running and modifying the examples Using addons and contributed code Getting started on a project you want to make
  • 3. Intros Me − http://kylemcdonald.net/ − https://twitter.com/#!/kcimc You − Name − Experience level − What you want to make with OF
  • 4. Lets go!
  • 5. aka or ks am ew nF r o pe ur deT o
  • 6. aka meopenFrameworks safari
  • 7. A (Rough) History of OF− Pre-2003: ACU library at MIT  Inspired Processing via Ben Fry and Casey Reas  Golan Levin also studies at MIT, uses ACU to teach− Zach Lieberman studies under Golan  Zach cant teach ACU, develops OF− Theo Watson studies under Zach (2004+)  Theo does OSX, Zach does Windows− Arturo Castro meets Zach + Theo (2007/8?)  Arturo ports to Linux, joins the OF core team− OF lab (Ars Electronica 2008)− OF dev conferences (2011 Pittsburgh, 2012 Detroit)
  • 8. OF Inspiration Lets check out some awesome OF work! openFrameworks on Vimeo openFrameworks on Flickr openFrameworks on Creative Applications
  • 9. OF Structure OF is a bunch of classes and functions that simplify things by reducing the amount of code you have to write The “core” of OF is in libs/openFrameworks/ A good way to see everything in one place is the OF reference Some more notes on folder structure
  • 10. OF Syntax Its just C++ syntax, except for the “of” prefixes and some other minor conventions Some great resources for learning C++ at the bottom of the about page So...
  • 11. C++ Syntax <> are for templates, called “generics” in java . (dot operator) is for accessing children of objects, :: (colon colon) is for classes and namespace access You dont normally use an “int[] arr;” like in Processing, you have to use a “vector<int> arr;” Operator overloading means you can use complex types with mathematical notation: for example, ofVec2f
  • 12. Comparison to other Environments Cinder has a steeper learning curve, but was created by “real” programmers Pocode is more like Flash in having a scene graph, where everything is drawn implicitly Processing is most similar, but the community is more focused on sketches than addons.
  • 13. Running and Modifying Examples 007 and before, everything is in apps/examples/ and apps/addonsExamples 0071 and after, everything is in examples/ There are a lot more examples online, were continually working to bring in more.
  • 14. Running and Modifying Examples imageSequenceExample noiseField2dExample videoGrabberExample asciiVideo pointPickerExample ...
  • 15. Using Addons and Contributed Code Sometimes people share their entire project! rise and fall perfume-global face++ and feedrdio ...
  • 16. Using Addons and Contributed Code Q: Why is openFrameworks amazing? A: ofxAddons − ofxBox2D − ofxKinect − ofxFft − ofxCv − ...
  • 17. Getting Started on a Project / Hacking Together What project do you want to make? Lets brainstorm about what you need to make it happen. What techniques do you want to play with? Lets see if theres something out there that you can wrap or use.