Catálogo de publicaciones - libros
Processing: Creative Coding and Computational Art
Ira Greenberg
Resumen/Descripción – provisto por la editorial
No disponible.
Palabras clave – provistas por la editorial
Software Engineering/Programming and Operating Systems
Disponibilidad
Institución detectada | Año de publicación | Navegá | Descargá | Solicitá |
---|---|---|---|---|
No detectada | 2007 | SpringerLink |
Información
Tipo de recurso:
libros
ISBN impreso
978-1-59059-617-3
ISBN electrónico
978-1-4302-0310-0
Editor responsable
Springer Nature
País de edición
Reino Unido
Fecha de publicación
2007
Información sobre derechos de publicación
© Apress 2007
Cobertura temática
Tabla de contenidos
Code Art
Ira Greenberg
Ask the average person what they think computer art is, and they’ll likely mention the types of imaging effects we associate with Photoshop or maybe a blockbuster 3D animated film like Shrek. I still remember the first time I cloned an eyeball with Photoshop; it was totally thrilling. I also remember getting a copy of Strata Studio Pro and creating my first perfect 3D metal sphere (you know, the one with the highly reflective ship plate texture map). However, once we get a little more experience under our belts and have tried every freakin’ filter we can get our hands on, the “gee whiz” factor subsides, and we are stuck with the same problem that all artists and designers experience—the empty white page or canvas. Of course, each year I have many students who believe that they have found the perfect combination of filters that will produce remarkable and original works of art— without the need to exert too much effort (or leave their game consoles for very long). In the end, though, the stylistic footprints left behind by these filters is unavoidable. That is not to imply that the filters are the problem; I couldn’t do my job without the genius of Photoshop. It is the approach to using them that is the problem, or the belief that all that power will make the process of creating art any easier
Part One - Theory of Processing and Computational Art | Pp. 3-24
Creative Coding
Ira Greenberg
I have a friend, Mark K., who was a web developer who had artistic yearnings (don’t they all). I met him a number of years ago when he enrolled in a 3D animation course I was teaching. Mark worked for a sizable, very businessy type company that will remain nameless, doing pretty dull programming. Mostly he was working on legacy code—stuff other people had written—and trying to keep things together with band-aids and string. On top of this, his company was outsourcing most of the interesting development work overseas, and Mark also had the fun job of trying to coordinate video conferences at all hours of the night (big time difference), while integrating their code (in a programming language/ development environment he wasn’t too familiar with) back into the company’s legacy spaghetti (disorganized and poorly structured) code. Is it any surprise Mark was pretty sour on coding and dreamed about painting rainbows and unicorns in the Elysian Fields? Well, actually it was more like working in the game industry. We met at the perfect time
Part One - Theory of Processing and Computational Art | Pp. 27-54
Code Grammar 101
Ira Greenberg
This is where the techie stuff really begins! Hopefully, in the last two chapters you’ve gotten some context and maybe even inspiration and are ready to dive right in. This chapter looks at the nuts and bolts of programming in general. I make the assumption that you have no experience with coding at all, so for those of you coming to Processing from another language, you may want to skim this chapter. In Chapter 4, I cover the basics of graphics coding, and in Chapter 5, I discuss the details of the Processing environment
Part One - Theory of Processing and Computational Art | Pp. 57-104
Computer Graphics, the Fun, Easy Way
Ira Greenberg
This chapter gives a simplified and highly abridged overview of computer graphics. Graphics and visualization is one of the major research areas in computer science and has a reputation for being highly complex and mathematically demanding. However, there is a wide range of research being conducted under the heading “graphics and visualization”— with varying degrees of complexity. Dr. Edward Angel, in his widely read textbook , lists four major application areas within computer graphics:
Part One - Theory of Processing and Computational Art | Pp. 107-141
The Processing Environment
Ira Greenberg
Processing, besides being a language of sorts, is an integrated development environment (IDE)—an IDE created by artists for artists. The Processing development environment is simple to learn and use, and doesn’t add to the complexity of learning to program, as with many other IDEs. In fact, the Processing IDE really does substantially simplify the process of coding, even for absolute beginners. Even Flash, which is another very popular IDE of sorts, also geared toward artists, has a steep learning curve, and its complexity can get in the way on pure coding projects. In contrast, the Processing IDE has a well-designed interface and core functionality that allows you to work efficiently; it’s a huge improvement over working in your old text editor
Part One - Theory of Processing and Computational Art | Pp. 143-170
Lines
Ira Greenberg
This chapter will concentrate on lines and how they are represented though code. You’ll also look at how lines can represent more multidimensional space, such as shapes and volume
Part Two - Putting Theory into Practice | Pp. 173-238
Curves
Ira Greenberg
Curvy stuff is difficult for people to understand. Had I taken a calculus class earlier in my life, this fact would have been blatantly obvious. When drawing directly from a model, edges are indistinct and there are all sorts of subtle foreshortening. In time, you learn how to, in a sense, “not draw” what’s not there, which is often the secret to allowing the curve structures to emerge in the drawing. When it comes to coding, curves again prove especially challenging, and often require a more “mathy” approach than when working with lines. Processing does makes it relatively easy to generate simple curves, but being able to precisely control a combination of curves to create a form such as a human figure is very difficult
Part Two - Putting Theory into Practice | Pp. 241-299
Object-Oriented Programming
Ira Greenberg
Object-oriented programming (OOP) is a deep and complex subject, and a detailed discussion of it is beyond the scope of this book. However, in this chapter I will give you a solid grounding in OOP to get you started. While OOP is challenging to start with, it is fundamental to Java and therefore Processing, and it is very rewarding once you get the hang of it, so don’t despair if you find this chapter difficult to follow. As you work through the rest of the book, it will help you to keep returning to this chapter to look up OOP concepts as you meet them in all the applied examples you come across. It will get easier as you practice, I promise
Part Two - Putting Theory into Practice | Pp. 301-336
Shapes
Ira Greenberg
Shapes are a natural extension of lines and curves. In the simplest sense, a shape is just the enclosed space formed between three or more lines. Of course, a single continuous curve can enclose space as well (e.g., an ellipse). Shapes can be generally categorized. For example, an enclosed three-sided shape is referred to as a triangle, even if its size or configuration can’t be determined. Fundamental 2D shapes (e.g., rectangles, circles, and triangles) are commonly referred to as . Primitives are essential building-block shapes, which when combined allow you to (efficiently) construct most other shapes. Processing includes both 2D and 3D primitive functions. In this chapter, you’ll just be dealing with 2D shape functions
Part Two - Putting Theory into Practice | Pp. 339-397
Color and Imaging
Ira Greenberg
Thus far in the book l’ve focused on the structural aspects of creative coding—an armature upon which to build. However, l’ve barely scraped the surface of Processing’s expressive potential. Nowhere is this potential more evident than in Processing’s extensive color and imaging capabilities. I’ll begin this chapter by exploring Processing’s high-level color and imaging functions, which conceal the internal mathematics while still providing lots of creative range. Working at the pixel level, you’ll learn how to generate custom gradients and even spin some of your own cool imaging filters. Finally, you’ll apply an object-oriented approach to imaging and color, building upon the OOP concepts introduced in Chapters 8 and 9.
Part Two - Putting Theory into Practice | Pp. 399-479