python -m pip install pyfqmr
示例工作流
示例1
通过Hy3D Fast Simplify Mesh节点将faces降低到10000,明显3D图像粗糙了
参数测试
target_count测试
降低target_count值到1000,3D模型已经几乎到不可用的状态
lossless测试
开启后面数不会降低至指定的数量,肉眼几乎看不出和原图的差距
aggressiveness,max_iterations
aggressiveness
控制简化过程中阈值的增长率
较高的值会导致更激进的简化,可能会更快地达到目标三角形数量,但可能会牺牲更多的模型细节
较低的值会使简化过程更保守,保留更多的原始模型细节,但可能需要更多迭代才能达到目标
max_iterations
设置简化算法的最大迭代次数
防止算法在难以达到目标三角形数量时无限循环
如果在达到最大迭代次数前已经达到目标三角形数量,算法会提前停止
aggressiveness给到1,max_iterations1000次迭代,无发降低到预期faces
aggressiveness给到1,max_iterations100次迭代,faces保留的更多
aggressiveness给到5和100都能降到5000 FACES但是明显aggressiveness 5的细节更好
update_rate
控制每次更新之间的迭代次数
较低的值会导致更频繁的更新,可能会使简化过程更精确但更慢
较高的值会减少更新频率,加快处理速度但可能降低精度
相对aggressiveness的影响没有那么大
threshold_lossless
这个参数只在lossless=True时生效,用于控制无损简化模式下的误差阈值
它定义了在无损简化过程中可接受的最大几何误差
较小的阈值会导致更保守的简化,保留更多的原始模型细节
较大的阈值允许更激进的简化,但可能会引入更多的几何变形
preserve_border
控制是否保留网格的开放边界上的顶点
当设置为True时,算法会尽量避免折叠位于网格边界的边缘
这有助于保持模型边界的形状和完整性
实际测试下来看不出大差别