Home Page Icon
Home Page
Table of Contents for
Table of Contents
Close
Table of Contents
by Denis Perevalov
Mastering openFrameworks: Creative Coding Demystified
Mastering openFrameworks: Creative Coding Demystified
Table of Contents
Mastering openFrameworks: Creative Coding Demystified
Credits
Foreword
About the Author
Acknowledgement
About the Reviewers
www.PacktPub.com
Support files, eBooks, discount offers and more
Why Subscribe?
Free Access for Packt account holders
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Downloading the example code
Downloading the color graphics PDF
Errata
Piracy
Questions
1. openFrameworks Basics
About openFrameworks
Use cases
Installing openFrameworks and running your first example
Installing on Windows
Microsoft Visual Studio
Code::Blocks (Windows)
Installing on Mac OS with Xcode
Installing on Linux with Code::Blocks
openFrameworks' folders
The examples folder
The apps folder
The addons folder
File structure of a project
Code structure of a project
main.cpp
testApp.h
testApp.cpp
setup()
update()
draw()
Other functions
Creating a new project
Creating a project from an existing example
Creating a project using Project Generator
Creating your first project – the Pendulum example
Running the book's examples
Basic utility functions
Summary
2. Drawing in 2D
Drawing basics
The background color of the screen
Pulsating background example
Geometric primitives
The simplest example of a flower
Controlling the drawing of primitives
Using ofPoint
Operations with points
Using control points example
Coordinate system transformations
Flower with petals example
Colors
Operations with colors
Color modifications example
Drawing with an uncleared background
Using FBO for offscreen drawings
Spirals example
Playing with numerical instability
Screen grabbing
Additional topics
Summary
3. Building a Simple Particle System
The basics of particle systems
Interaction types
Computing particles' physics
Rendering particles
Creating a particle system – summary
A single particle
Control parameters
Defining the particle functions
Implementing a particle in the project
An emitter
The attraction, repulsion, and spinning forces
Graphical user interface
Additional topics
Summary
4. Images and Textures
Raster and vector images
Loading and drawing an image
Rotating images
Color modulation
Transparency
Creating and modifying images
Creating images
Modifying images
Working with the color of a single pixel
A simple geometrical distortion example
The functions for manipulating the image as a whole
Using ofTexture for memory optimization
Image warping and video mapping
Using images for internal calculations
An image as a mask
An image as a palette
Summary
5. Working with Videos
Video basics
Playing a video file
Controlling the video playback
Processing a single video frame
The vertical lines image example
The replacing colors example
Processing multiple frames
Radial slit-scan example
Horizontal slit-scan
Discussing color interpolation
Processing a live video from the camera
The video synthesizer example
Using image sequence
Using image sequence example
Summary
6. Working with Sounds
Sound basics
Playing sound samples
The bouncing ball example
The singing voices example
Generating sounds
The PWM synthesis example
Image-to-sound transcoder example
Using a microphone
The loop sampler example
Saving a recorded sample to the file
Getting spectral data from sound
Dancing cloud example
Summary
7. Drawing in 3D
3D basics
Representation of 3D objects
3D scene rendering
Simple 3D drawing
The triangles cloud example
Using ofMesh
Enabling lighting and setting normals
Computing normals using the setNormals() function
Drawing sharp edges
Drawing line segments and points
Drawing line segments
Drawing points
Coloring the vertices
Texturing
Working with vertices
The oscillating plane example
The twisting knot example
Additional topics
Summary
8. Using Shaders
Basics of shaders
Types of shaders
When to use shaders
Structure of a shader's code
A simple fragment shader example
Creating the fragment shader
The vertex shader
Embedding shaders in our project
Debugging shaders
Creating video effects with fragment shaders
Passing a float parameter to a shader
A simple geometrical distortion example
Passing the float array to the shader
Using Perlin noise in shaders
A liquify distortion example
Processing several images
A masking example
An audio-reactive project example
Deforming objects with a vertex shader
Vertex shader
Fragment shader
Using vertex shader in our project
Using a geometry shader
The furry carpet example
Additional topics
Summary
9. Computer Vision with OpenCV
Understanding computer vision and OpenCV
Using ofxOpenCv
Working with ofxCv images
Image initializing
Algebraic operations with images
Drawing functions
Access to pixels
Working with color planes and color spaces conversion
Motion detection from movies
Discussing the algorithm's parameters
Motion detection from live video
Image filtering
The image filtering example
Geometrical transformations of images
Perspective distortion removing example
Searching for objects in an image
Using the ofxCvContourFinder class for finding contours
An example for searching bright objects in video
Using OpenCV functions
Optical flow
Video morphing example
Using optical flow for morphing
Applying morphing to another image
Summary
10. Using Depth Cameras
Depth camera basics
Active infrared stereo cameras
Installing the ofxOpenNI addon
ofxOpenNI examples
Working with examples of depth images
Hand-tracking examples
User tracking examples
Creating interactive surface
Running the project
Additional topics
Summary
11. Networking
Networking basics
Using OSC protocol
Sending data
Receiving data
Typical schemes of OSC usage
Using TCP protocol for streaming images
The streaming images example
Summary
A. Working with Addons
Addons basics
Addons in openFrameworks
Installing a non-core addon
Linking addons to a new project
Using Project Generator
Linking an addon to an existing project
List of selected addons
Summary
B. Perlin Noise
Perlin noise basics
Using the ofNoise() function
Space-coherent noise
Summary
Index
Search in book...
Toggle Font Controls
Playlists
Add To
Create new playlist
Name your new playlist
Playlist description (optional)
Cancel
Create playlist
Sign In
Email address
Password
Forgot Password?
Create account
Login
or
Continue with Facebook
Continue with Google
Sign Up
Full Name
Email address
Confirm Email Address
Password
Login
Create account
or
Continue with Facebook
Continue with Google
Prev
Previous Chapter
Cover
Next
Next Chapter
Mastering openFrameworks: Creative Coding Demystified
Table of Contents
Mastering openFrameworks: Creative Coding Demystified
Credits
Foreword
About the Author
Acknowledgement
About the Reviewers
www.PacktPub.com
Support files, eBooks, discount offers and more
Why Subscribe?
Free Access for Packt account holders
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Downloading the example code
Downloading the color graphics PDF
Errata
Piracy
Questions
1. openFrameworks Basics
About openFrameworks
Use cases
Installing openFrameworks and running your first example
Installing on Windows
Microsoft Visual Studio
Code::Blocks (Windows)
Installing on Mac OS with Xcode
Installing on Linux with Code::Blocks
openFrameworks' folders
The examples folder
The apps folder
The addons folder
File structure of a project
Code structure of a project
main.cpp
testApp.h
testApp.cpp
setup()
update()
draw()
Other functions
Creating a new project
Creating a project from an existing example
Creating a project using Project Generator
Creating your first project – the Pendulum example
Running the book's examples
Basic utility functions
Summary
2. Drawing in 2D
Drawing basics
The background color of the screen
Pulsating background example
Geometric primitives
The simplest example of a flower
Controlling the drawing of primitives
Using ofPoint
Operations with points
Using control points example
Coordinate system transformations
Flower with petals example
Colors
Operations with colors
Color modifications example
Drawing with an uncleared background
Using FBO for offscreen drawings
Spirals example
Playing with numerical instability
Screen grabbing
Additional topics
Summary
3. Building a Simple Particle System
The basics of particle systems
Interaction types
Computing particles' physics
Rendering particles
Creating a particle system – summary
A single particle
Control parameters
Defining the particle functions
Implementing a particle in the project
An emitter
The attraction, repulsion, and spinning forces
Graphical user interface
Additional topics
Summary
4. Images and Textures
Raster and vector images
Loading and drawing an image
Rotating images
Color modulation
Transparency
Creating and modifying images
Creating images
Modifying images
Working with the color of a single pixel
A simple geometrical distortion example
The functions for manipulating the image as a whole
Using ofTexture for memory optimization
Image warping and video mapping
Using images for internal calculations
An image as a mask
An image as a palette
Summary
5. Working with Videos
Video basics
Playing a video file
Controlling the video playback
Processing a single video frame
The vertical lines image example
The replacing colors example
Processing multiple frames
Radial slit-scan example
Horizontal slit-scan
Discussing color interpolation
Processing a live video from the camera
The video synthesizer example
Using image sequence
Using image sequence example
Summary
6. Working with Sounds
Sound basics
Playing sound samples
The bouncing ball example
The singing voices example
Generating sounds
The PWM synthesis example
Image-to-sound transcoder example
Using a microphone
The loop sampler example
Saving a recorded sample to the file
Getting spectral data from sound
Dancing cloud example
Summary
7. Drawing in 3D
3D basics
Representation of 3D objects
3D scene rendering
Simple 3D drawing
The triangles cloud example
Using ofMesh
Enabling lighting and setting normals
Computing normals using the setNormals() function
Drawing sharp edges
Drawing line segments and points
Drawing line segments
Drawing points
Coloring the vertices
Texturing
Working with vertices
The oscillating plane example
The twisting knot example
Additional topics
Summary
8. Using Shaders
Basics of shaders
Types of shaders
When to use shaders
Structure of a shader's code
A simple fragment shader example
Creating the fragment shader
The vertex shader
Embedding shaders in our project
Debugging shaders
Creating video effects with fragment shaders
Passing a float parameter to a shader
A simple geometrical distortion example
Passing the float array to the shader
Using Perlin noise in shaders
A liquify distortion example
Processing several images
A masking example
An audio-reactive project example
Deforming objects with a vertex shader
Vertex shader
Fragment shader
Using vertex shader in our project
Using a geometry shader
The furry carpet example
Additional topics
Summary
9. Computer Vision with OpenCV
Understanding computer vision and OpenCV
Using ofxOpenCv
Working with ofxCv images
Image initializing
Algebraic operations with images
Drawing functions
Access to pixels
Working with color planes and color spaces conversion
Motion detection from movies
Discussing the algorithm's parameters
Motion detection from live video
Image filtering
The image filtering example
Geometrical transformations of images
Perspective distortion removing example
Searching for objects in an image
Using the ofxCvContourFinder class for finding contours
An example for searching bright objects in video
Using OpenCV functions
Optical flow
Video morphing example
Using optical flow for morphing
Applying morphing to another image
Summary
10. Using Depth Cameras
Depth camera basics
Active infrared stereo cameras
Installing the ofxOpenNI addon
ofxOpenNI examples
Working with examples of depth images
Hand-tracking examples
User tracking examples
Creating interactive surface
Running the project
Additional topics
Summary
11. Networking
Networking basics
Using OSC protocol
Sending data
Receiving data
Typical schemes of OSC usage
Using TCP protocol for streaming images
The streaming images example
Summary
A. Working with Addons
Addons basics
Addons in openFrameworks
Installing a non-core addon
Linking addons to a new project
Using Project Generator
Linking an addon to an existing project
List of selected addons
Summary
B. Perlin Noise
Perlin noise basics
Using the ofNoise() function
Space-coherent noise
Summary
Index
Add Highlight
No Comment
..................Content has been hidden....................
You can't read the all page of ebook, please click
here
login for view all page.
Day Mode
Cloud Mode
Night Mode
Reset