         self.vertex = stageIn.vertex.vertex
         self.triangle = stageIn.triangle
         self.barycentric = stageIn.barycentric
-        self.position = stageIn.position
+        self.projection = stageIn.projection
         self.facing = stageIn.facing
         self.depth = stageIn.depth
     }

    }
    
    @inlinable
    func render(position: (_Vertex.Position) -> Point, _ body: (_Vertex, _Vertex, _Vertex) -> Void) {
        base.render(position: position) { body(_Vertex(vertex: $0), _Vertex(vertex: $1), _Vertex(vertex: $2)) }
    }
}


        }
        
        @inline(__always)
        func _render(rasterizer: ImageContextRenderBuffer<Pixel>, projection: (G.Vertex.Position) -> Point, depthFun: ((G.Vertex.Position) -> Double)?, shader: (ImageContextRenderStageIn<G.Vertex>) -> P?) {
            
            triangles.render(projection: projection) { v0, v1, v2 in
                
                let _v0 = v0.position
                let _v1 = v1.position
