How can we capture the unpredictable evolutionary and emergent properties of nature in software? How can understanding the mathematical principles behind our physical world help us to create digital worlds? This book focuses on a range of programming strategies and techniques behind computer simulations of natural systems, from elementary concepts in mathematics and physics to more advanced algorithms that enable sophisticated visual results. Readers will progress from building a basic physics engine to creating intelligent moving objects and complex systems, setting the foundation for further experiments in generative design. Subjects covered include forces, trigonometry, fractals, cellular automata, self-organization, and genetic algorithms. The book's examples are written in Processing, an open-source language and development environment built on top of the Java programming language. On the book's website (http://www.natureofcode.com), the examples run in the browser via Processing's JavaScript mode.
##Daniel Shiffman 是世界上最有意思最可爱的编程老师!
评分##这真的不是一本高中物理书吗?
评分##Shiffman! Shiffman!
评分##Processing 看这个就够了,免费的。如果运动学都记得,直接看代码就行。 56789 章开始比较有意思。
评分##好多processing栗子啊!
评分##好多processing栗子啊!
评分##然后还是觉得程序艺术只在很窄的范围内才“艺术”
评分##好多processing栗子啊!
评分##这本都有lol,当年调研berlin noise和gaussian distribution时问别人要的coding书,简明易懂,我这种数学渣都看得懂(虽然是很简单的代码lol