「がんばれない」けど「がんばりたい」

ITエンジニアの仕事のこと。AI、機械学習、ディープラーニング。地頭力。車のこと。

Nature of Code

Nock Line|Nature of Code

フラクタル その1 Nock Lineのメモです。 ・startとendの位置で決まっている線を下の用に分割する。 ・これを再帰的に行う。

Algorithmic Efficiency bin-lattice spatial subdivision|Nature of Code

プログラムではloop処理が多数使われます。これまでTryしてきた事もフンダンにloop処理を書いてきました。前回のFlocking SystemでBoidオブジェクトの数が多くなるとフレームレートも伴って落ちて行きます。私が使っているMacBookPro15 2011 earyモデルでも1…

Flocking System|Nature of Code

■Overview 1. Separation: Steer to avoid colliding with your neighbors. 2. Alignment: Steer in the same direction as your neighbors. 3. Cohesion: Steer towards the center of your neighbors. (stay with the group)

Group Behaviors|Nature of Code

■ グループ これまでMoverクラスやVehicleクラスも配列でインスタンスを管理し扱ってきた。配列はある意味【グループ】と考えることが出来る。だが、これまで行ってきた事は各々オブジェクトがそれぞれの動作を個々で行うのみに過ぎなかった。ここではComplex…

Complex Systems|Nature of Code

■ これまで 個としてのオブジェクト(agent)に対し動きを与えてきた しかし環境内に存在する任意オブジェクトが他のオブジェクトに 影響を与える事も出来る 例えば蟻は個として次の動きを決める事は可能だが 【巣を作る】【餌を集める】【女王蟻を決める】…

Path Following #01|Nature of Code

PathFollowing from Kazuyoshi Ueno on Vimeo. 前回は内積について復習。今回は再びVehicleを使用したアルゴリズムを。前々回で画面を適当なグリッドで分割し、各々のグリッドにランダムな、またはある程度規則を持たせたベクトルを配置し、

Dot Product|Nature of Code

内積についてはOPENFRAMEWORKS.CC TUTORIAL|Vector Mathsを読むで1度、まとめているが、具体的に使用した事がなかったので、いまいちなママでした。実は。

Flow Field|Nature of Code

Vehicleオブジェクトを使用した記事も3つ目になります。これまでの記事で取り上げた事は、 flowFieldSample3DPerlinNoise from Kazuyoshi Ueno on Vimeo. 静的なオブジェクトではなく命を持ったオブジェクトを表現したい。 「生きているもの」を動かす。動…

Autonomous Agents - your own desired velocity|Nature of Code

前回の「ターゲット」は恒久的に動かない的でした。ただし自然界における「環境」は様々であると同様に「ターゲット」も必ずしも動かないとは限りません。ここでは”動く”ターゲットと”環境そのものがターゲット”の例を考察してみます。結論から言うと今回の…

Autonomous Agents|Nature of Code

これまでは無機質な…言い換えれば「生きていない」ものに対してモデリングを行ってきましたが、もし「ある環境で生きている」ものをモデリングしたい場合は、どのようにコーディングすれば良いでしょうか。命・恐れ・夢や希望など。この記事からは「命」の存…

Particle System|Nature of Code

Particle Systemの基本・考え方 (すっごいシンプルなシステムから〜)

Spring Force|Nature of Code

バネforceについて バネの公式はHooke’s lawで定義されている。 F = -k x X;

Trigonometry and Forces: The Pendulum|Nature of Code

振り子の運動についてまとめ。

Waves|Nature of Code

角速度を用いて位置を変化させる事について前回の記事で行ってみた。今回は波をプロットしてみる事を行ってみる。といっても、前回までの角速度を用いたオブジェクト移動のロジックと同じ。

Oscillation with Angular Velocity|Nature of Code

period や Frequencyについて前回の記事で簡単にまとめたが、もうすこしステップアップした考察を角速度の面で行って行こう。前回の記事で書いた基本となる式。 float x = amplitude * cos(TWO_PI * frameCount / period);

Oscillation Amplitude and Period | Nature of Code

Amplitude: The distance from the center of motion to either extreme Period: The amount of time it takes for one complete cycle of motion

Oscillation|Nature of Code

■Oscillation 角度について。角度についてもvelocity, accelerationと同じ考え方が出来るという話。で、velocityはベクタだったがangleはスカラなので、少々扱いやすい。 下記は回転角angleをupdateで更新し、draw時にバトンを回転するプログラムだが、実行…

Gravitational Attraction |Nature of Code

■Gravitational Attraction ※この章が何を伝えているかというと、結局のところ引力に変わる力が大きく働いている空間でのオブジェクトの動きをどう再現するか?だと思う。

Air and Fluid Resistance|Nature of Code

■Air and Fluid Resistance Friction also occurs in any circumstances and conditions.

Friction | Nature of Code

■Friction 抵抗・摩擦について。 Nature of Codeより

Vector|Nature of Code.

1. 移動(位置) 1-1. 位置の更新 location = location + velocity.