You are previewing Cinder – Begin Creative Coding.
O'Reilly logo
Cinder – Begin Creative Coding

Book Description

A quick introduction into the world of creative coding with Cinder through basic tutorials and a couple of advanced examples

  • More power – Cinder is one of the most powerful creative coding engines out there and it will be hard to find a better one for your professional grade project

  • Do it fast – each section should not take longer than one hour to complete

  • We give you the tools and it is up to you what you do with them – we won't go into complicated algorithms, but rather give you the brushes and paints so you can paint the way you already know

  • In Detail

    Cinder is one of the most powerful professional grade C++ creative coding frameworks out there. It is open-source and peer-reviewed, meaning that there are experienced professionals behind its developmentand that every development step is taken seriously. Its philosophy is based on the capabilities of the operating system it is used for – Cinder will take the best from every OS and hardware you choose to work on.

    "Cinder – Begin Creative Coding" will let you take your previous creative coding experience to a higher and also more demanding level. It will show you the Cinder way of using the most used creative coding functions for drawing, animation, interaction and allow you to do much more in terms of performance and cross-application-compatibility.

    Starting by downloading Cinder and setting up the development environment, we will work through some of the most widely used topics in creative coding by creating and discussing simple sample applications.

    Throughout this book we will deal with relatively simple topics like basic drawing, basic animation, basic 3D, interaction, loading files, playing back video files, applying built in and custom effects. Then going through to more advanced topics like how to use Cinder for a generative projection mapping project by using Syphon technology and how to connect Open Sound Control enabled applications for receiving and sending data and commands.

    "Cinder – Begin Creative Coding" will bring your craziest ideas closer to the core of your computer by using the pure power of C++.

    Table of Contents

    1. Cinder – Begin Creative Coding
      1. Table of Contents
      2. Cinder – Begin Creative Coding
      3. Credits
      4. About the Author
      5. About the Reviewers
      6. About the Reviewers
      7. www.PacktPub.com
        1. Support files, eBooks, discount offers and more
          1. Why Subscribe?
          2. Free Access for Packt account holders
      8. Preface
        1. What this book covers
        2. What you need for this book
        3. Who this book is for
        4. Conventions
        5. Reader feedback
        6. Customer support
          1. Downloading the example code
          2. Downloading the color images of this book
          3. Errata
          4. Piracy
          5. Questions
      9. 1. Learn Cinder Basics – Now!
        1. What is creative coding
        2. A few words about Cinder
        3. Downloading Cinder
        4. Setting up Cinder on Mac OS X
        5. Setting up Cinder on Windows
          1. Microsoft Visual C++ Express 2010
          2. Windows Platform SDK
          3. DirectX SDK
          4. QuickTime SDK
          5. Launching the sample application
        6. Summary
      10. 2. Know What is Possible – The Cinder Toolset
        1. BasicApp
        2. BezierPath
        3. CairoBasic
        4. CaptureTest
        5. EaseGallery
        6. TextBox
        7. ArcballDemo
        8. Earthquake
        9. AudioGenerative
        10. Summary
      11. 3. Initial Setup – Creating the BaseApp
        1. TinderBox
        2. Creating a project from scratch (Mac OS X)
          1. Basic project setup (Xcode 3)
          2. Basic project setup (Xcode 4+)
          3. Adding code (Xcode 3 and 4+)
          4. Connecting to Cinder (Xcode 3)
          5. Connecting to Cinder (Xcode 4+)
        3. Creating a project from scratch (Windows)
        4. Final adjustments
        5. Summary
      12. 4. Prepare Your Brushes – Drawing Basic Shapes
        1. Preparing your workspace
        2. Drawing lines
        3. Drawing circles
        4. Drawing rectangles
        5. Other useful drawing functions
        6. Summary
      13. 5. Making Use of Images – Loading and Displaying
        1. Loading an image
        2. Handling assets
        3. Summary
      14. 6. Accelerate – Creating Generative Animation
        1. Preparing the stage
        2. Adding animation
        3. Adding randomness
        4. More circles
        5. Using built-in eases
        6. Summary
      15. 7. Working with Images – Real-time Postprocessing and Effects
        1. Introducing Texture, Surface, and Channel
        2. Applying the grayscale effect
        3. Using threshold
        4. Animating effects
        5. Applying effects to moving images
        6. Summary
      16. 8. Adding Depth – Cinder 3D Basics
        1. Introducing the 3D space
        2. Drawing in 3D
        3. Understanding nested states
        4. Handling depth sorting
        5. Exploring other Cinder 3D primitives
        6. Summary
      17. 9. Enter Sound – Adding Sound and Audio
        1. Loading and playing a sound file
        2. Using tracks
        3. Changing track parameters
        4. Visualizing audio
        5. Using audio input
        6. Summary
      18. 10. Talk to the User – Adding Interactivity and UI Events
        1. Handling events
          1. Using mouseMove()
          2. Using mouseDown()
          3. Using mouseDrag()
          4. Using keyDown()
          5. Using fileDrop()
        2. Summary
      19. A. Basic Cinder Functionality Reference
        1. Basic types
        2. Applications
        3. Basic graphics
        4. Images
        5. Other functions
      20. Index