Book Description

Processing: Creative Coding and Generative Art in Processing 2 is a fun and creative approach to learning programming. Using the easy to learn Processing programming language, you will quickly learn how to draw with code, and from there move to animating in 2D and 3D. These basics will then open up a whole world of graphics and computer entertainment.

If you've been curious about coding, but the thought of it also makes you nervous, this book is for you; if you consider yourself a creative person, maybe worried programming is too non-creative, this book is also for you; if you want to learn about the latest Processing 2.0 language release and also start making beautiful code art, this book is also definitely for you.

You will learn how to develop interactive simulations, create beautiful visualizations, and even code image-manipulation applications. All this is taught using hands-on creative coding projects. Processing 2.0 is the latest release of the open-source Processing language, and includes exciting new features, such as OpenGL 2 support for enhanced 3D graphics performance.

Processing: Creative Coding and Generative Art in Processing 2 is designed for independent learning and also as a primary text for an introductory computing class. Based on research funded by the National Science Foundation, this book brings together some of the most engaging and successful approaches from the digital arts and computer science classrooms.

  • Teaches you how to program using a fun and creative approach.

  • Covers the latest release of the Processing 2.0 language.

  • Presents a research based approach to learning computing.

  • What you'll learn

  • Learn the latest features of Processing 2.0

  • Gain a solid understanding of coding concepts, such as design, analysis, and object-oriented programming

  • Generate algorithmic art

  • Code 2D and 3D interactive animations

  • Create a visualization based on big data

  • Who this book is for

    Processing: Creative Coding and Generative Art in Processing 2 is for anyone who wants to learn how to program, really anyone! It is also a great, research-based companion text for an introductory computing class.

    Table of Contents

    1. Title Page
    2. Dedication
    3. Contents at a Glance
    4. Contents
    5. Foreword
    6. About the Authors
    7. About the Technical Reviewer
    8. About the Cover Image Artist
    9. Acknowledgments
    10. Introduction
    11. Chapter 1: Diving into the Shallow End
      1. Programming vs. Computer Science
      2. Art + Science = Creative Coding
      3. MIT Media Lab
      4. What Is Processing?
      5. Quick Tour
      6. Processing Menu System
      7. Summary
    12. Chapter 2: Art by Numbers
      1. Algorithms
      2. Drawing with Code
      3. Primitives
      4. Algorithmic Face
      5. Summary
    13. Chapter 3: Processing Boot Camp
      1. Functions
      2. Moving Beyond the Primitives
      3. Expanding the API
      4. Having Some Polygonal Fun
      5. Summary
    14. Chapter 4: Creating Across Time and Curved Space
      1. Keep It Local
      2. Returning Value
      3. Prime Time
      4. Making Things Move
      5. Introducing Curves
      6. Summary
    15. Chapter 5: Expressive Power of Data
      1. Arrays
      2. Primitive and Reference Types
      3. Arrays As Parameters
      4. Time Series Visualization
      5. Data Visualization
      6. Basic Plots
      7. Algorithms and Issues of Space and Time
      8. Summary
      9. References
    16. Chapter 6: Organizing Chaos
      1. Objects: Attributes and Behavior
      2. Classes: Object Factories
      3. Object-Oriented Programming in Processing
      4. Ball in a Box
      5. Simulated Physics: Verlet Motion
      6. Inheritance: Is-a Relationships
      7. Interfaces Are Doable
      8. Summary
    17. Chapter 7: Creative Abstraction
      1. Strings
      2. Text Visualization: Creating Word Clouds
      3. Creative Data Visualization
      4. Summary
      5. References
    18. Chapter 8: Drawing with Recursion
      1. Recursive Functions
      2. Factorial
      3. Recursive Circles
      4. Recursive Squares
      5. Recursive Tree
      6. Lindenmayer Systems
      7. Advanced Visualization: Treemap
      8. Summary
      9. References
    19. Chapter 9: Painting with Bits
      1. Digital Images
      2. Raster Processing
      3. Multi-dimensional Arrays
      4. Processing’s Pixel Buffer(s)
      5. Bitwise Processing and Component Functions
      6. Complex Systems
      7. Chapter Project: Truchet Tiling
      8. Summary
      9. References
    20. Chapter 10: Expressive Imaging
      1. Image IO
      2. Tinting
      3. Masking
      4. Blending
      5. Filtering
      6. Advanced Filters
      7. Image specialFX
      8. Chapter Project: Image Mosaic
      9. Summary
    21. Chapter 11: Spreading Your Creative Coding Wings
      1. 3D
      2. Advancing to Java
      3. Modes
      4. Summary
    22. Index