{"id":15063021,"url":"https://github.com/90-008/godot_boids","last_synced_at":"2025-10-23T20:03:20.821Z","repository":{"id":254819282,"uuid":"844589330","full_name":"90-008/godot_boids","owner":"90-008","description":"Addon for Godot that adds 2D / 3D boids (flocking). (THIS REPOSITORY IS A MIRROR)","archived":false,"fork":false,"pushed_at":"2024-12-06T20:27:34.000Z","size":240,"stargazers_count":5,"open_issues_count":1,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-07-01T22:53:03.866Z","etag":null,"topics":["boid","boids","flock","flocking","gdext","gdextension","godot","rust"],"latest_commit_sha":null,"homepage":"https://git.gaze.systems/dusk/godot_boids","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/90-008.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-08-19T15:07:10.000Z","updated_at":"2025-03-11T20:47:36.000Z","dependencies_parsed_at":null,"dependency_job_id":"80a2d2bb-36bb-4697-a371-0dee4ef3d358","html_url":"https://github.com/90-008/godot_boids","commit_stats":{"total_commits":35,"total_committers":2,"mean_commits":17.5,"dds":0.02857142857142858,"last_synced_commit":"742dc85414e0d469552eedfcfa91955b6baa30bb"},"previous_names":["yusdacra/boid_2d","yusdacra/godot_boids","90-008/godot_boids"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/90-008/godot_boids","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/90-008%2Fgodot_boids","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/90-008%2Fgodot_boids/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/90-008%2Fgodot_boids/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/90-008%2Fgodot_boids/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/90-008","download_url":"https://codeload.github.com/90-008/godot_boids/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/90-008%2Fgodot_boids/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263431934,"owners_count":23465548,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["boid","boids","flock","flocking","gdext","gdextension","godot","rust"],"created_at":"2024-09-24T23:50:10.198Z","updated_at":"2025-10-23T20:03:20.487Z","avatar_url":"https://github.com/90-008.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# boids\n\naddon for Godot that adds 2D / 3D boids (flocking).\n\n![boids 2d](./resources/boids_2d.gif)\n![boids 3d](./resources/boids_3d.gif)\n\nit can handle about 2000 boids in a single flock at 11ms physics process tick on my PC (Ryzen 5600).\n(keep in mind this is without any partitioning of sorts, so it's bound to get better)\n\n## install\n\ndownload it from the [asset library](https://godotengine.org/asset-library/asset/3284).\n\nor clone the repository, and run `just all` to build the libraries (in release mode) for all supported targets.\n(requires [cross](https://github.com/cross-rs/cross), [just](https://github.com/casey/just) and [nushell](https://github.com/nushell/nushell))\n\ncurrently, linux, windows and web (wasm) is supported.\n\n## usage\n\ntake a look at the [examples](./examples/boids/).\nthe addon folder also contains [a set of default properties extracted from the examples](./addons/boids/defaults/).\n\n## development\n\nit's just a standard rust project under `rust`, so make sure you have `rustup` installed (or the toolchain specified under `rust-toolchain.toml`.)\nalso don't forget to have godot installed and available in your `PATH` (the extension currently targets 4.3).\n\n- **cargo features**\n\t- enable `stats` feature to let the extension log into godot console timings for how long its processing the boids.\n\n## todo\n\n- [ ] memoize calculated distances\n- [ ] implement avoidance (point avoidance, edge avoidance)\n\t- [ ] implement nodes for these (for 2d, point and a rect node and 3d point and a cube node, circle / sphere too)\n- [ ] implement partitioning (quadtree/octree)\n\t- [ ] do we just use `spatialtree` crate?\n- [ ] write better usage documentation\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F90-008%2Fgodot_boids","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F90-008%2Fgodot_boids","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F90-008%2Fgodot_boids/lists"}