public static Kn5 FromFile(string filename, bool skipTextures, bool readNodesAsBytes = true)
{
if (!File.Exists(filename))
{
throw new FileNotFoundException(filename);
}
var kn5 = new Kn5(filename);
using (var reader = new Kn5Reader(filename)) {
kn5.FromFile_Header(reader);
if (skipTextures)
{
kn5.FromFile_Textures(reader, BlankKn5TextureLoader.Instance);
}
else
{
kn5.FromFile_Textures(reader, DefaultKn5TextureLoader.Instance);
}
kn5.FromFile_Materials(reader);
kn5.FromFile_Nodes(reader, readNodesAsBytes);
}
return(kn5);
}