本文整理汇总了C#中UnityEngine.RecalculateNormals方法的典型用法代码示例。如果您正苦于以下问题:C# UnityEngine.RecalculateNormals方法的具体用法?C# UnityEngine.RecalculateNormals怎么用?C# UnityEngine.RecalculateNormals使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类UnityEngine
的用法示例。
在下文中一共展示了UnityEngine.RecalculateNormals方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Bind
/// Collect and bind geometry from stream
public void Bind(UnityEngine.Mesh mesh)
{
var vertices = new List<Vector3>();
var triangles = new List<int>();
var uv = useUV ? new List<Vector2>() : null;
var color = useColor ? new List<Color32>() : null;
var normals = useUV ? new List<Vector3>() : null;
// Collect
foreach (var gp in geometry.Geometry)
{
gp.VertexOffset = vertices.Count;
vertices.AddRange(gp.Vertices);
triangles.AddRange(gp.Triangles);
if (uv != null) { uv.AddRange(gp.UV); }
if (color != null) { color.AddRange(gp.Color); }
if (normals != null) { normals.AddRange(gp.Normals); }
}
// Attach
mesh.Clear();
mesh.vertices = vertices.ToArray();
mesh.triangles = triangles.ToArray();
if (useUV) { mesh.uv = uv.ToArray(); }
if (useColor) { mesh.colors32 = color.ToArray(); }
if (useNormals) { mesh.normals = normals.ToArray(); }
// Bind
if (!useNormals) { mesh.RecalculateNormals(); }
mesh.RecalculateBounds();
mesh.Optimize();
// Summary
vertexGen = vertices.Count;
triangleGen = triangles.Count;
}