public void MapBoneWeightTest()
        {
            {
                var map = new BoneMap();
                map.Add(new GameObject("a"), new GameObject("A"));
                map.Add(new GameObject("b"), new GameObject("B"));
                map.Add(new GameObject("c"), new GameObject("C"));
                map.Add(new GameObject("d"), new GameObject("D"));
                map.Add(null, new GameObject("null"));
                // map.Add(new GameObject("c"), null); // ありえないので Exception にしてある
                var boneWeights   = map.CreateBoneWeight(64).ToArray();
                var newBoneWeight = MeshUtility.BoneNormalizer.MapBoneWeight(boneWeights, map.Map,
                                                                             map.SrcBones.ToArray(), map.DstBones.ToArray());

                // 正常系
                // exception が出なければよい
            }

            {
                var map = new BoneMap();
                map.Add(new GameObject("a"), new GameObject("A"));
                map.Add(new GameObject("b"), new GameObject("B"));
                map.Add(new GameObject("c"), new GameObject("C"));
                map.Add(new GameObject("d"), new GameObject("D"));
                map.Add(null, new GameObject("null"));
                // map.Add(new GameObject("c"), null); // ありえないので Exception にしてある
                var boneWeights   = map.CreateBoneWeight(64).ToArray();
                var newBoneWeight = MeshUtility.BoneNormalizer.MapBoneWeight(boneWeights, map.Map,
                                                                             map.SrcBones.ToArray(), map.DstBones.ToArray());

                // 4 つめが 0 になる
                Assert.AreEqual(0, newBoneWeight[1].boneIndex0);
                Assert.AreEqual(0, newBoneWeight[1].weight0);
                // 5 つめ以降が 0 になる。out of range
                Assert.AreEqual(0, newBoneWeight[1].boneIndex1);
                Assert.AreEqual(0, newBoneWeight[1].weight1);
            }
        }