检测/处理金属顶点转换矩阵计算是否溢出?

时间:2018-07-16 19:08:56

标签: precision metal vertex-shader coordinate-transformation

在我的Metal应用程序中,当物体变得非常大或移离屏幕很远时,我会出现故障。我认为这是由于计算顶点转换时的溢出。例如,我将有一个顶点X位置翻转,从非常大的正数到非常大的负数。这会导致一个三角形,其中一个顶点位于右侧,而另一个顶点位于左侧,因此当渲染错误的极宽三角形时会出现毛刺。

对于大多数对象,我只能检测它们何时移出屏幕而不绘制。但是,如果某个对象跨过屏幕-假设您位于巨大的水平环中间-那么我必须绘制该对象,因为它的一部分出现在屏幕上。

金属仅具有浮点精度,而不是双精度。那么,有什么方法可以检测转换计算何时溢出?您如何处理这种情况?

0 个答案:

没有答案