{"adoption": {"forks": 229, "observed_at": "2026-08-28T04:03:26.076046+00:00", "stars": 1062}, "canonical_url": "https://ross.abutalabs.com/products/gpuskinning", "card": {"archived": false, "artifact_type": "library", "description": null, "domain": ["graphics", "performance"], "enriched": true, "function": ["graphics", "animation", "simulation"], "health_score": 20, "homepage": null, "language": "C#", "license": "MIT", "license_family": "permissive", "maturity": "maintenance", "member_repos": ["chengkehan/GPUSkinning"], "name": "chengkehan/GPUSkinning", "platform": ["game-engine"], "pushed_at": "2019-07-21T14:47:31+00:00", "repo": "chengkehan/GPUSkinning", "stars": 1062, "tags": ["unity", "gpu-skinning", "gpu-instancing", "vertex-shader", "crowd-rendering", "level-of-detail", "game-development", "gpu"], "topics": ["gpuskinning", "gpu-skinning"], "urls": [], "use_cases": ["render thousands of animated characters cheaply in Unity", "move skinning from CPU to GPU for crowd scenes", "use GPU instancing for skinned meshes", "apply level-of-detail to animated characters", "attach props like weapons to animated bone joints"], "what_it_is": "A Unity library that replaces Unity's built-in CPU bone animation with custom GPU skinning, storing bone matrices in textures or compute buffers and using GPU instancing and LOD for performance. It includes an editor tool and supports legacy, generic, and humanoid animation types.", "when_to_avoid": ["you need actively maintained or production-supported software", "your project doesn't use Unity", "you rely on Unity's built-in animation system features not covered by this tool"], "when_to_choose": ["you need to render large crowds of animated characters in Unity", "CPU skinning is a performance bottleneck", "you want GPU instancing and LOD for skinned meshes"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/gpuskinning", "repo": "chengkehan/GPUSkinning", "role": "main", "score": 23}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:03:26.076046+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T06:56:43.789207+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "67eacb3bf07c35e3800aa729c843774d101c2cbb65b3f9bc28ae4c9adde5731e", "fetched_at": "2026-08-28T04:03:26.076046+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chengkehan/GPUSkinning"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:03:26.076046+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T06:56:43.789207+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "67eacb3bf07c35e3800aa729c843774d101c2cbb65b3f9bc28ae4c9adde5731e", "fetched_at": "2026-08-28T04:03:26.076046+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chengkehan/GPUSkinning"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T06:56:43.789207+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "67eacb3bf07c35e3800aa729c843774d101c2cbb65b3f9bc28ae4c9adde5731e", "fetched_at": "2026-08-28T04:03:26.076046+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chengkehan/GPUSkinning"}], "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:03:26.076046+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:03:26.076046+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:03:26.076046+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T06:56:43.789207+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "67eacb3bf07c35e3800aa729c843774d101c2cbb65b3f9bc28ae4c9adde5731e", "fetched_at": "2026-08-28T04:03:26.076046+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chengkehan/GPUSkinning"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:03:26.076046+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:03:26.076046+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T06:56:43.789207+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "67eacb3bf07c35e3800aa729c843774d101c2cbb65b3f9bc28ae4c9adde5731e", "fetched_at": "2026-08-28T04:03:26.076046+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chengkehan/GPUSkinning"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:03:26.076046+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:03:26.076046+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:03:26.076046+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T06:56:43.789207+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "67eacb3bf07c35e3800aa729c843774d101c2cbb65b3f9bc28ae4c9adde5731e", "fetched_at": "2026-08-28T04:03:26.076046+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chengkehan/GPUSkinning"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:03:26.076046+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:03:26.076046+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T06:56:43.789207+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "67eacb3bf07c35e3800aa729c843774d101c2cbb65b3f9bc28ae4c9adde5731e", "fetched_at": "2026-08-28T04:03:26.076046+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chengkehan/GPUSkinning"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T06:56:43.789207+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "67eacb3bf07c35e3800aa729c843774d101c2cbb65b3f9bc28ae4c9adde5731e", "fetched_at": "2026-08-28T04:03:26.076046+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chengkehan/GPUSkinning"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T06:56:43.789207+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "67eacb3bf07c35e3800aa729c843774d101c2cbb65b3f9bc28ae4c9adde5731e", "fetched_at": "2026-08-28T04:03:26.076046+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chengkehan/GPUSkinning"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T06:56:43.789207+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "67eacb3bf07c35e3800aa729c843774d101c2cbb65b3f9bc28ae4c9adde5731e", "fetched_at": "2026-08-28T04:03:26.076046+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chengkehan/GPUSkinning"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3486, "days_push": 2600, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 23, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}