First public release of marrow: a high performance, 2-tier animation library in pure C.
It is *very* fast, has seamless transition from CPU SIMD to baked GPU, and has no dependencies.
First public release of marrow: a high performance, 2-tier animation library in pure C.
It is *very* fast, has seamless transition from CPU SIMD to baked GPU, and has no dependencies.
@NickDrisc0ll @jesta88 gotta say, the code reads like everything was "the boring part" 👀
including design - not sure why it even attempts to support non-uniform scaling for "tier A" skinning but then drop it for "tier B" - they're not LOD transition-friendly substitutes of each other
@archo @NickDrisc0ll Ouch! That's fair though, I'm not proud to use AI tools.
Regarding non-uniform scaling, this is by design. In Tier-B the baked paelette tries its best to approximate the non-uniform scales, and if it's not within tolerance, it's rejected. In my own project it's been pretty useful in cases where the rig has non-uniform scales with small variations.
@jesta88 @NickDrisc0ll what does "rejected" mean in a practical sense?
if this is the part you're referring to - https://github.com/jesta88/marrow/blob/da60d0d9e09df45657c09e043f39646118a6ff97/tools/bake/mrw_bake.c#L177 - it looks like the transform still gets written, there's just a new error competing for the worst case in stats
also, why would a rig have non-uniform scaling, or any scaling at all?
@NickDrisc0ll @jesta88 yeah the uses of non-uniform scaling in animations are clear to me
I was under the impression that by "rig" it was meant that the skeleton bind poses contained scaling - but if that's not the case (e.g. the rig meant the range of allowed motion) then my question can be ignored
@archo @NickDrisc0ll A rig can stretch some bones for example.
As for the line you pointed to, bake_clip doesn't reject by skipping a write. It produces the full palette every time with the marks you pointed to on bones. The "reason" is just for diagnostics. The bone_ok is the one that propagates and sets the rig eligible or not a bit later (line 206).