Z-fighting(也写作 z-fighting)指在 3D 图形渲染中,两个或多个表面在深度(Z 值)上非常接近或几乎重合时,深度缓冲(z-buffer)无法稳定判断哪一个在前面,从而导致画面出现闪烁、条纹、抖动、互相“抢显示权”的现象。常见于地面贴面与地面几何体重叠、共面多边形、远距离细薄表面等场景。
/ˈziː ˌfaɪtɪŋ/
The wall texture started flickering because of z-fighting.
墙面贴图开始闪烁,是因为发生了 z-fighting。
To avoid z-fighting in the distance, the developer adjusted the camera’s near and far clipping planes and added a small depth offset.
为避免远处出现 z-fighting,开发者调整了相机近远裁剪面,并加入了轻微的深度偏移。
Z 来自三维坐标轴中的 Z 轴(通常表示深度方向);fighting 表示“争夺、打架”。合起来形象地描述了:在深度测试中,两个表面因为深度值太接近而“互相争抢”谁该被显示在前面。这一说法在实时渲染与游戏开发语境中广泛使用。