private Vertices ReadVertices(Stream input, int vertexCount)
{
float scale = this.Scale;
int num = vertexCount << 1;
Vertices vertices = new Vertices();
if (!SkeletonBinary.ReadBoolean(input))
{
vertices.vertices = this.ReadFloatArray(input, num, scale);
return(vertices);
}
ExposedList <float> exposedList = new ExposedList <float>(num * 3 * 3);
ExposedList <int> exposedList2 = new ExposedList <int>(num * 3);
for (int i = 0; i < vertexCount; i++)
{
int num2 = SkeletonBinary.ReadVarint(input, true);
exposedList2.Add(num2);
for (int j = 0; j < num2; j++)
{
exposedList2.Add(SkeletonBinary.ReadVarint(input, true));
exposedList.Add(this.ReadFloat(input) * scale);
exposedList.Add(this.ReadFloat(input) * scale);
exposedList.Add(this.ReadFloat(input));
}
}
vertices.vertices = exposedList.ToArray();
vertices.bones = exposedList2.ToArray();
return(vertices);
}