# Boids 向量解剖：一隻鳥怎麼算出下一步

正式網址：https://newmediaart.course.monolab.world/tools/boidsvec

把 Boids 一隻鳥的一步拆成七個向量操作：找鄰居、分離、對齊、聚合、轉向（力＝想要的速度－現在的速度）、合力、更新；畫面一步一步畫箭頭，程式碼放在旁邊，亮起來的行就是現在這一步。

- **分類**：自然的演算法
- **概念**：向量相減、向量相加、頭接尾、平均、轉向力、權重、Boids
- **p5.js**：createVector()、setMag()、limit()、sub()、add()、mult()、div()、dist()、filter()
- **誕生**：[第 3 堂](https://newmediaart.course.monolab.world/lesson/03)

拉滑桿、看畫面，旁邊的程式碼會跟著變，整段複製到 OpenProcessing 就能跑。

## 同類模組・自然的演算法

- [海龜繪圖：往前走、轉彎](https://newmediaart.course.monolab.world/tools/turtle)
- [遞迴分裂：一個變兩個](https://newmediaart.course.monolab.world/tools/recursion)
- [L-System：用一條字串長出植物](https://newmediaart.course.monolab.world/tools/lsystem)
- [碎形：自己裡面還有自己](https://newmediaart.course.monolab.world/tools/fractal)
- [Boids 群聚：三條規則，沒有領頭](https://newmediaart.course.monolab.world/tools/boids)
- [鏈條：兩條限制，長出會游的身體](https://newmediaart.course.monolab.world/tools/chain)
- [地形：noise 就是一張高度圖](https://newmediaart.course.monolab.world/tools/terrain)
- [年輪：用 noise 繞一個圈](https://newmediaart.course.monolab.world/tools/rings)
- [圓填滿：一個一個長大，互不重疊](https://newmediaart.course.monolab.world/tools/circlepack)

[回到全部模組](https://newmediaart.course.monolab.world/tools)

[到 Hahow 報名](https://hahow.in/cr/creative-code)。價格與優惠以 Hahow 頁面為準。
