最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Styled SDF for Bezier curve 1

2022-04-12 15:51 作者:DeadCyber  | 我要投稿


Final result
The quadratic Bezier spline

Origin:

In SDF?render scene, I want to render a Bezier curve, but what i found from?shadertoy, is just a simple Bezier segement SDF:


PS:??By segement I mean it?only got 3 points, not the entire multi-points?smooth bezier spline?.

Which means doesn't support the entire spline, and it's not 3D, what's more its caps and body are?rounded shaped,different from what I need ---?box shaped lines:

So I need to find a way to render Bezier curve SDF in box style.

Continue:

For the body SDF

? From the shadertoy code, we can get the 2D distance to the body. It's done by calculating?our point P's project point T on the Bezier segment, using the relationship that:

dot(TP%2CT')%3D0

which means TP is the normal direction of T in the segment.

Combine the height difference,we can get the diffenrence float2 TP in the normal plane.

Since we want a box style, the SDF shall be calculated as a rectangle SDF:


????We loop the same logic over all segements of the spline,and find the min as SDF for the body.Note for a valid body SDF of a segement ,?T must in the segement(as 0<t<1).

For the cap SDF

? ? Body SDF doesn't apply for the 2 end caps.Once we find T of P not [0,1] for all segements, we shound calculate P's SDF for cap. When we find out whether it's start? or end pnt of the spline that's near P,we call that cap point as T too.

? ? For the exact result,one should calculate P's SDF to the one face quad of T. The quad's normal direction U is (p0-p1) or (p[n]-p[n-1]).


????


????However, for convenience, I use a thin box instead.The box {u,v,w} direction is {U,(0,1,0),cross(u,v)}

Combine

????Here's a box style spline only has two segements.The code is very raw, lack of abstraction.


????We can see from above process, that our approach is not only restricted to box style or quadratic Bezier Spline.The similar method can be used for arbitrary style and spline type.I will try tidy it up for next article.





Styled SDF for Bezier curve 1的評論 (共 條)

分享到微博請遵守國家法律
驻马店市| 湘西| 墨竹工卡县| 宿州市| 久治县| 榆社县| 乡城县| 宜宾市| 炎陵县| 常州市| 青铜峡市| 清丰县| 磴口县| 车险| 中山市| 阿鲁科尔沁旗| 宁德市| 达孜县| 巩义市| 北京市| 大石桥市| 岑巩县| 额济纳旗| 平武县| 稷山县| 永顺县| 丰原市| 周宁县| 阿坝县| 峨山| 芦溪县| 穆棱市| 济源市| 乌拉特中旗| 孟津县| 玉溪市| 涿鹿县| 珲春市| 北票市| 墨江| 米易县|