{"adoption": {"forks": 310, "observed_at": "2026-08-28T04:05:35.727313+00:00", "stars": 1783}, "canonical_url": "https://ross.abutalabs.com/products/animation-instancing", "card": {"archived": false, "artifact_type": "library", "description": "This technique is designed to instance Characters(SkinnedMeshRender). ", "domain": ["graphics", "performance"], "enriched": true, "function": ["animation", "graphics", "image-processing"], "health_score": 20, "homepage": null, "language": "C#", "license": "NOASSERTION", "license_family": "other", "maturity": "maintenance", "member_repos": ["Unity-Technologies/Animation-Instancing"], "name": "Unity-Technologies/Animation-Instancing", "platform": ["cross-platform", "game-engine"], "pushed_at": "2024-03-06T08:22:22+00:00", "repo": "Unity-Technologies/Animation-Instancing", "stars": 1783, "tags": ["unity", "skinned-mesh-renderer", "gpu-instancing", "crowd-rendering", "csharp", "character-animation", "lod", "root-motion", "game-development", "mobile"], "topics": [], "urls": [], "use_cases": ["render hundreds of animated characters efficiently in Unity", "optimize crowd scenes with skinned meshes", "instance SkinnedMeshRenderers with GPU instancing", "reduce CPU cost of character animation in large scenes", "add LOD and culling to instanced characters", "support root motion on instanced characters", "optimize character rendering on mobile"], "what_it_is": "A Unity technique and sample project from Unity Technologies for instancing SkinnedMeshRenderer characters to improve CPU/GPU performance in scenes with many animated characters. It supports root motion, attachments, LOD, culling, and mobile platforms (Unity 5.4+).", "when_to_avoid": ["you use a game engine other than Unity", "you only have a handful of characters (standard animation is simpler)", "you need actively maintained, fully supported production code (repo is in maintenance mode)", "you need non-skinned static mesh instancing (use standard GPU instancing)"], "when_to_choose": ["you need many animated humanoid or skinned characters in a Unity scene", "performance of SkinnedMeshRenderer is a bottleneck", "you need root motion, attachments, or LOD with instanced characters", "targeting mobile platforms with crowds"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/animation-instancing", "repo": "Unity-Technologies/Animation-Instancing", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:35.727313+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:24:17.880376+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cc8c227c0c580a85ef6db4af48f69c14d0e7ff7240a9cee5f21b4ad4f05ee369", "fetched_at": "2026-08-28T04:05:35.727313+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Unity-Technologies/Animation-Instancing"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:35.727313+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:24:17.880376+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cc8c227c0c580a85ef6db4af48f69c14d0e7ff7240a9cee5f21b4ad4f05ee369", "fetched_at": "2026-08-28T04:05:35.727313+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Unity-Technologies/Animation-Instancing"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:24:17.880376+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cc8c227c0c580a85ef6db4af48f69c14d0e7ff7240a9cee5f21b4ad4f05ee369", "fetched_at": "2026-08-28T04:05:35.727313+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Unity-Technologies/Animation-Instancing"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:05:35.727313+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:35.727313+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:35.727313+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:24:17.880376+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cc8c227c0c580a85ef6db4af48f69c14d0e7ff7240a9cee5f21b4ad4f05ee369", "fetched_at": "2026-08-28T04:05:35.727313+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Unity-Technologies/Animation-Instancing"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:35.727313+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:35.727313+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:24:17.880376+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cc8c227c0c580a85ef6db4af48f69c14d0e7ff7240a9cee5f21b4ad4f05ee369", "fetched_at": "2026-08-28T04:05:35.727313+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Unity-Technologies/Animation-Instancing"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:35.727313+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:35.727313+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:35.727313+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:24:17.880376+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cc8c227c0c580a85ef6db4af48f69c14d0e7ff7240a9cee5f21b4ad4f05ee369", "fetched_at": "2026-08-28T04:05:35.727313+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Unity-Technologies/Animation-Instancing"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:35.727313+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:35.727313+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:24:17.880376+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cc8c227c0c580a85ef6db4af48f69c14d0e7ff7240a9cee5f21b4ad4f05ee369", "fetched_at": "2026-08-28T04:05:35.727313+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Unity-Technologies/Animation-Instancing"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:24:17.880376+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cc8c227c0c580a85ef6db4af48f69c14d0e7ff7240a9cee5f21b4ad4f05ee369", "fetched_at": "2026-08-28T04:05:35.727313+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Unity-Technologies/Animation-Instancing"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:24:17.880376+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cc8c227c0c580a85ef6db4af48f69c14d0e7ff7240a9cee5f21b4ad4f05ee369", "fetched_at": "2026-08-28T04:05:35.727313+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Unity-Technologies/Animation-Instancing"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:24:17.880376+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cc8c227c0c580a85ef6db4af48f69c14d0e7ff7240a9cee5f21b4ad4f05ee369", "fetched_at": "2026-08-28T04:05:35.727313+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Unity-Technologies/Animation-Instancing"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_releases", "no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3096, "days_push": 910, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 32, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}