假设我想渲染类似丁马多姆帽的东西,一种高度为无穷远的帽子。
对此,一个快速的答案是把帽子的顶部高度足够高,以使皇冠(圆柱)可以裁剪(如y=9999999.)在一半的视野里。我不喜欢这个主意。所以我想出的是在顶点中使用IEEE754无穷大。
(-0.5, INF, -0.5)
(0.5, INF, -0.5)
(0.5, INF, 0.5)
(-0.5, INF, 0.5)(假设皇冠是一个立方体)
问题是,在与变换矩阵相乘后,顶点最终都是(INF, INF, INF),使得它们无法表示。我写这个只是想给你个主意。
有什么技术可以用来实现这一点吗?而不是使用巨大的数字?我想知道他们是如何实现这的。
发布于 2018-09-15 00:11:56
您可以使用raymarcher渲染,并使用距离字段。对于这顶帽子,你可以定义圆柱体的中心和半径,并画出任何在这个圆圈内的行军,不管你在什么“高度”,它都是无限的。您也可以添加一个限制,比如y>0,在帽子上加一个开头。
https://computergraphics.stackexchange.com/questions/8011
复制相似问题