前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Shader初学笔记:一种三维等值线的算法

Shader初学笔记:一种三维等值线的算法

原创
作者头像
clawclaw
发布2018-03-30 08:19:57
1.1K8
发布2018-03-30 08:19:57
举报
文章被收录于专栏:Unity Shader

把反距离加权算法转换到三维空间,是不是很方便的算出三维空间下的等值线了呢,再结合Shatter Toolkit插件进行剖切,修改修改代码。应该可以解决地层模型任意剖切后,切面的等值线渲染问题了。先写个思路,代码有空再补上。(发现发表文章还不能少于140字!先写个三维的反距离加权算法。)

float IDW3(float3 uv) //uv变为三维向量

{

float m = 0;

float n = 0;

for (int i = 0 ; i < _len ; i++)

{

//传入的pts变为(x,y,z,w)四维向量数组。

float dp = sqrt((uv.x-_pts[i].x)*(uv.x-_pts[i].x)+(uv.y-_pts[i].y)*(uv.y-_pts[i].y)+(uv.z-_pts[i].z)*(uv.z-_pts[i].z));

m = m + 1/dp;

n = n + 1/dp*_pts[i].w;

}

return n/m;

}

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档