private void ImportChannel(Skeleton skeleton)
{
channel channel = null;
foreach (var item in Animation.Items)
{
if (item is channel)
{
channel = item as channel;
break;
}
}
if (channel == null)
throw new ParsingException("Animation " + Animation.id + " has no channel!");
var parts = channel.target.Split(new char[] { '/' });
if (parts.Length != 2)
throw new ParsingException("Unsupported channel target format: " + channel.target);
Bone bone = null;
if (!skeleton.BonesByID.TryGetValue(parts[0], out bone))
throw new ParsingException("Animation channel references nonexistent bone: " + parts[0]);
if (bone.TransformSID != parts[1])
throw new ParsingException("Animation channel references nonexistent transform or transform is not float4x4: " + channel.target);
Bone = bone;
}