Generate Normal Data for All Meshes in a 3D File
Contents
[
Hide
]
Using Aspose.3D for .NET, developers can generate normal data for all meshes in any 3D model (without the normal data).
Generate Normal Data for All Meshes in a 3DS File
The GenerateNormal method exposed by the PolygonModifier class can be used to generate normal data for all meshes in a 3DS file. If VertexElementSmoothingGroup element was defined in the mesh, the generated normal data will get smoothed by the VertexElementSmoothingGroup.
Programming Sample
This code example loads a 3DS file, visit all nodes and create normal data for all meshes.
// For complete examples and data files, please go to https://github.com/aspose-3d/Aspose.3D-for-.NET
// Load a 3ds file, 3ds file doesn't have normal data, but it has smoothing group
Scene s = new Scene(RunExamples.GetDataFilePath("camera.3ds"));
// Visit all nodes and create normal data for all meshes
s.RootNode.Accept(delegate(Node n)
{
Mesh mesh = n.GetEntity<Mesh>();
if (mesh != null)
{
VertexElementNormal normals = PolygonModifier.GenerateNormal(mesh);
mesh.VertexElements.Add(normals);
}
return true;
});