SDF(Signed Distance Field)在3d和2d中都有对应的应用。在3d中光线追踪对于性能的消耗过大,所以sdf常常被用来作为物体的隐式表达,配合ray tracing达到接近光线追踪的效果.
<aside> 💡
SDF本质就是存储每个点到图形的最近距离,SDF就是将隐式表达转化为显式表达的工具。
</aside>
给定一个三维物体(如球体、立方体),SDF 能够告诉你 **空间中任意一点到该物体表面的最短距离,**并且通过符号区分内外:


举个例子,对于一个立方体,他的SDF函数表达式为:

符号距离函数可视化:

圆心$p_0$坐标为(0,0),圆的半径为1,那么p0点的SD函数值为-1,通过映射为RGB转换为青蓝色,
圆边缘处$p_1$点的SD函数值为0,转为RGB=0,就是黑色
外面的点$p_n$,越原理圆心,值越大,RGB越接近黄色。