Mastering openFrameworks: Creative Coding Demystified. openFrameworks is the doorway to so many creative multimedia possibilities and this book will t Pszów

openFrameworks is a powerful programming toolkit and library designed to assist the creative process through simplicity and intuitiveness. It's a very handy software library written in C++ to reduce the software development process, helping you to kick-start creative coding. With the help of C++ …

od 125,10 Najbliżej: 34 km

Liczba ofert: 1

Oferta sklepu

Opis

openFrameworks is a powerful programming toolkit and library designed to assist the creative process through simplicity and intuitiveness. It's a very handy software library written in C++ to reduce the software development process, helping you to kick-start creative coding. With the help of C++ and shaders support, openFrameworks allows for the processing of all kinds of media information with your custom-developed algorithms at the lowest possible level, with the fastest speed.Mastering openFrameworks: Creative Coding Demystified will introduce you to a world of creative coding projects, including interactive installations, audio-visual, and sound art projects. You will learn how to make your own projects using openFrameworks. This book focuses on low-level data processing, which allows you to create really unique and cutting-edge installations and projects.Mastering openFrameworks: Creative Coding Demystified provides a complete introduction to openFrameworks, including installation, core capabilities, and addons. Advanced topics like shaders, computer vision, and depth cameras are also covered.We start off by discussing the basic topics such as image and video loading, rendering and processing, playing sound samples, and synthesizing new sounds. We then move on to cover 3D graphics, computer vision, and depth cameras. You will also learn a number of advanced topics such as video mapping, interactive floors and walls, video morphing, networking, and using geometry shaders.You will learn everything you need to know in order to create your own projects; create projects of all levels, ranging from simple creative-code experiments, to big interactive systems consisting of a number of computers, depth cameras, and projectors. Spis treści: 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 O autorze: Denis Perevalov is a lecturer and programmer from Ekaterinburg, Russia. He teaches creating interactive media projects at Ekaterinburg Academy of Contemporary Art, and teaches 3D graphics at Ural Federal University. Also he is scientist the Krasovsky Institute of Mathematics and Mechanics.

Specyfikacja

Podstawowe informacje

Autor
  • Denis Perevalov
Rok wydania
  • 2013
Format
  • PDF
  • MOBI
  • EPUB
Ilość stron
  • 364
Kategorie
  • Programowanie
Wybrane wydawnictwa
  • Packt Publishing