public void Render(Device device, Mesh mesh, Matrix transformMatrix) { foreach ( var vertex in mesh.Vertices) { var pointA = device.Project( vertex, transformMatrix); device.DrawPoint(pointA, new Color4(1,0,0,1)); } }
public void Render(Device device, Mesh mesh, Matrix transformMatrix) { m_device = device; Parallel.For(0, mesh.Faces.Length, faceIndex => { var face = mesh.Faces[faceIndex]; var pointA = m_device.Project(mesh.Vertices[face.A], transformMatrix); var pointB = m_device.Project(mesh.Vertices[face.B], transformMatrix); var pointC = m_device.Project(mesh.Vertices[face.C], transformMatrix); var color = 0.25f + (faceIndex % mesh.Faces.Length) * 0.75f / mesh.Faces.Length; DrawTriangle(pointA, pointB, pointC, new Color4(color, color, color, 1)); }); }