2.3 Simulating mass – The Nature of Code on Vimeo で Processing を勉強しよう15

ARVE Error: id and provider shortcodes attributes are mandatory for old shortcodes. It is recommended to switch to new shortcodes that need only url

テキスト
http://natureofcode.com/book/chapter-2-forces/#chapter02_section4

サンプルコード
https://github.com/shiffman/The-Nature-of-Code-Examples/tree/master/Processing/chp2_forces/NOC_2_3_forces_many_realgravity

今回は今まで使ってこなかった mass(質量)を反映させてみます。サンプルでは重さに応じて acceleration が変化します。素材が同じとしてサイズ=重さとすると、軽い(質量が大きい)ものの方が速く移動して、重い(質量が小さい)ものの方がゆっくり移動するというシミュレーション。
Continue reading “2.3 Simulating mass – The Nature of Code on Vimeo で Processing を勉強しよう15”

2.2 Applying a force – The Nature of Code on Vimeo で Processing を勉強しよう14

ARVE Error: id and provider shortcodes attributes are mandatory for old shortcodes. It is recommended to switch to new shortcodes that need only url

テキスト
http://natureofcode.com/book/chapter-2-forces/#chapter02_section2

サンプルコード
https://github.com/shiffman/The-Nature-of-Code-Examples/tree/master/Processing/chp2_forces/NOC_2_1_forces
https://github.com/shiffman/The-Nature-of-Code-Examples/tree/master/Processing/chp2_forces/NOC_2_2_forces_many

今回重要なポイントは force を PVector に反映させるところです。サンプルでは force に wind や gravity を加えていますが love や fear を加えたっていいそうです。ちょっとした力で世界は変わるんです。

Continue reading “2.2 Applying a force – The Nature of Code on Vimeo で Processing を勉強しよう14”

2.1 What is a Force? – The Nature of Code on Vimeo で Processing を勉強しよう13

ARVE Error: id and provider shortcodes attributes are mandatory for old shortcodes. It is recommended to switch to new shortcodes that need only url

テキスト
http://natureofcode.com/book/chapter-2-forces/

F = M *A (Force equals mass times acceleration.)

上記はニュートンの運動の第2法則 ですが、Processing でのシミュレーションは我々が作り出す世界なので、もし M が全て1の世界であると仮定すると A = F でいいんじゃないか?とも考えられるのでこれでやってみようよ(M も後で考慮するけど)ということを仰ってます。

次からまた実際にコードを書いていきます。

1.6 Vectors: Acceleration towards mouse – The Nature of Code on Vimeo で Processing を勉強しよう12

ARVE Error: id and provider shortcodes attributes are mandatory for old shortcodes. It is recommended to switch to new shortcodes that need only url

テキスト
http://natureofcode.com/book/chapter-1-vectors/#chapter01_section10

サンプルコード
https://github.com/shiffman/The-Nature-of-Code-Examples/tree/master/Processing/chp1_vectors/NOC_1_10_motion101_acceleration

現在の位置からマウスの位置へのベクトルを使って、acceleration をコントロールしています。

Continue reading “1.6 Vectors: Acceleration towards mouse – The Nature of Code on Vimeo で Processing を勉強しよう12”

1.5 Vectors: Acceleration – The Nature of Code on Vimeo で Processing を勉強しよう11

ARVE Error: id and provider shortcodes attributes are mandatory for old shortcodes. It is recommended to switch to new shortcodes that need only url

テキスト
http://natureofcode.com/book/chapter-1-vectors/

サンプルコード
https://github.com/shiffman/The-Nature-of-Code-Examples/tree/master/Processing/chp1_vectors/NOC_1_7_motion101
https://github.com/shiffman/The-Nature-of-Code-Examples/tree/master/Processing/chp1_vectors/NOC_1_8_motion101_acceleration
https://github.com/shiffman/The-Nature-of-Code-Examples/tree/master/Processing/chp1_vectors/NOC_1_9_motion101_acceleration

x、y 座標を動かすのでは無く、velocity、acceleration の PVector インスタンスの値を変化させ、ベクトルを足し算することで動きをつけてみます。limit() を使って変化の範囲を限定しています。

Continue reading “1.5 Vectors: Acceleration – The Nature of Code on Vimeo で Processing を勉強しよう11”

1.4 Vector Math II – The Nature of Code on Vimeo で Processing を勉強しよう10

ARVE Error: id and provider shortcodes attributes are mandatory for old shortcodes. It is recommended to switch to new shortcodes that need only url

テキスト
http://natureofcode.com/book/chapter-1-vectors/

サンプルコード
https://github.com/shiffman/The-Nature-of-Code-Examples/tree/master/Processing/chp1_vectors/NOC_1_5_vector_magnitude
https://github.com/shiffman/The-Nature-of-Code-Examples/tree/master/Processing/chp1_vectors/NOC_1_6_vector_normalize

PVector の基本的なメソッドから mag と normalize を紹介されてます。

Continue reading “1.4 Vector Math II – The Nature of Code on Vimeo で Processing を勉強しよう10”

1.3 Vector Math – The Nature of Code on Vimeo で Processing を勉強しよう9

ARVE Error: id and provider shortcodes attributes are mandatory for old shortcodes. It is recommended to switch to new shortcodes that need only url

テキスト
http://natureofcode.com/book/chapter-1-vectors/

サンプルコード
https://github.com/shiffman/The-Nature-of-Code-Examples/tree/master/Processing/chp1_vectors/NOC_1_3_vector_subtraction
https://github.com/shiffman/The-Nature-of-Code-Examples/tree/master/Processing/chp1_vectors/NOC_1_4_vector_multiplication

PVector の基本的なメソッドから add と mult を紹介されてます。

Continue reading “1.3 Vector Math – The Nature of Code on Vimeo で Processing を勉強しよう9”

1.2 PVector class – The Nature of Code on Vimeo で Processing を勉強しよう8

ARVE Error: id and provider shortcodes attributes are mandatory for old shortcodes. It is recommended to switch to new shortcodes that need only url

テキスト
http://natureofcode.com/book/chapter-1-vectors/

サンプルコード
https://github.com/shiffman/The-Nature-of-Code-Examples/tree/master/Processing/chp1_vectors/NOC_1_1_bouncingball_novectors
https://github.com/shiffman/The-Nature-of-Code-Examples/tree/master/Processing/chp1_vectors/NOC_1_2_bouncingball_vectors

今回は PVector のシンタックスのお話です。実際に x、y 指定を PVector 指定に置き換えていきます。

Continue reading “1.2 PVector class – The Nature of Code on Vimeo で Processing を勉強しよう8”

1.1 Vectors – The Nature of Code on Vimeo で Processing を勉強しよう7

ARVE Error: id and provider shortcodes attributes are mandatory for old shortcodes. It is recommended to switch to new shortcodes that need only url

テキスト
http://natureofcode.com/book/chapter-1-vectors/

今回から本題である Vector のお話に入ります。まずは簡単な説明から。Vector は以下の2つで構成されています。

1.magnitude length or size 長さや大きさ。
2.direction 角度で表される。

Continue reading “1.1 Vectors – The Nature of Code on Vimeo で Processing を勉強しよう7”

Intro5 Perlin Noise – The Nature of Code on Vimeo で Processing を勉強しよう6

ARVE Error: id and provider shortcodes attributes are mandatory for old shortcodes. It is recommended to switch to new shortcodes that need only url

テキスト
http://natureofcode.com/book/introduction/#intro_section6

サンプルコード
https://github.com/shiffman/The-Nature-of-Code-Examples/tree/master/Processing/introduction/NOC_I_5_NoiseWalk
https://github.com/shiffman/The-Nature-of-Code-Examples/tree/master/Processing/introduction/Exercise_I_10_NoiseLandscape

今回がイントロの最後。Perlin Noise はランダムでありながらよりオーガニックなスムーズモーションを作れるもので、元々は3Dのテクスチャのために作られたとのことです。Generative な作品を作ろうとすると避けては通れない道ではないでしょうか。

Continue reading “Intro5 Perlin Noise – The Nature of Code on Vimeo で Processing を勉強しよう6”