public static GLTFAnimation Deserialize(GLTFRoot root, JsonReader reader) { var animation = new GLTFAnimation(); while (reader.Read() && reader.TokenType == JsonToken.PropertyName) { var curProp = reader.Value.ToString(); switch (curProp) { case "channels": animation.Channels = reader.ReadList(() => AnimationChannel.Deserialize(root, reader)); break; case "samplers": animation.Samplers = reader.ReadList(() => AnimationSampler.Deserialize(root, reader)); break; default: animation.DefaultPropertyDeserializer(root, reader); break; } } return(animation); }
public static AnimationChannel Deserialize(GLTFRoot root, JsonReader reader) { var animationChannel = new AnimationChannel(); while (reader.Read() && reader.TokenType == JsonToken.PropertyName) { var curProp = reader.Value.ToString(); switch (curProp) { case "sampler": animationChannel.Sampler = SamplerId.Deserialize(root, reader); break; case "target": animationChannel.Target = AnimationChannelTarget.Deserialize(root, reader); break; default: animationChannel.DefaultPropertyDeserializer(root, reader); break; } } return(animationChannel); }