internal void LoadPrimitveFromFile(string fileName, out DebugVertexType[] vertices, out UInt16[] indices)
{
Assimp.Scene scene = m_importer.ImportFile(fileName, PostProcessPreset.TargetRealTimeMaximumQuality | PostProcessPreset.ConvertToLeftHanded);
// Loaded primitive files should always only contain a single mesh so we load only the first mesh
if (scene.HasMeshes)
{
Assimp.Mesh assimpMesh = scene.Meshes[0];
vertices = new DebugVertexType[assimpMesh.Vertices.Count];
indices = new UInt16[assimpMesh.GetIndices().Length];
for (int i = 0; i < assimpMesh.Vertices.Count; ++i)
{
Vector3 position = FromAssimpVector(assimpMesh.Vertices[i]);
vertices[i].position = position;
}
for (int i = 0; i < assimpMesh.GetIndices().Length; i++)
{
int index = assimpMesh.GetIndices()[i];
indices[i] = (UInt16)index;
}
}
else
{
vertices = new DebugVertexType[0];
indices = new UInt16[0];
}
}