我正在使用libIGL生成tet-mesh,并希望用颜色可视化这个网格。每个顶点具有不同的值(使用图拉普拉斯算子最小化二次能量的结果),并且这些值已使用igl::jet
转换为颜色。我想在不同的z值下“切片”我的tet-mesh,然后按Example 605进行操作。
当这是可视化时,颜色是正确的,但阴影是完全错误的(如下图所示)。是否有(简单)方法来修复阴影?我尝试过使用bfs_orient和embree::reorient_faces_raycast都无济于事。
为了重现该问题,仅将示例605的第52-54行作为:
Eigen::VectorXd C = V_temp.col(2);
Eigen::MatrixXd Col;
igl::jet(C, true, Col);
viewer.data.clear();
viewer.data.set_mesh(V_temp,F_temp);
viewer.data.set_colors(Col);
viewer.data.set_face_based(false);
编辑:我可以通过添加
来关闭照明 viewer.core.lighting_factor = 0;
生成的图像是: 然而,这没有任何照明,我不禁觉得有一种更好的方法可以保护照明。也许暴露OpenGL_Shader的东西?