normals computation actually based on mesh