This is much faster and simpler. This is also to make it compatible with custom bone shape in the future.