第088封“情书”:万宗归一Procedural Subdivision Lines - Creating Control Curves<Entagma>Houdini 20

这篇博客介绍了如何在Houdini 20中使用Procedural SubdivisionLines技术来创建控制曲线,从而实现细腻的几何细节。通过这个教程,读者将学习到一种统一的方法,有望推动计算机图形学的进步。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

▉ 以现在的计算机网络发展速度,人类也许大概可能会很快就会进入一个大一统的新纪元,最后天下大同,人类不分种族和肤色,这一天也许并不遥远了。 — 每天翻译一篇教程,这就是我写给houdini的情书。【首发于同名公众号:“致houdini的情书”】 

█ 条条大道通罗马,最终都是殊途同归!

前言不搭后语

天下大同:

     在这个凭实力说话的世界,小到个人,大到国家。这还是一个弱肉强食的世界,什么千年古国,弱小没有实力,就要被霸凌,只有一个强大的统一的中国才有资格跟别人讲自由平等。

     合久必分,分久必合,而我们已被分隔太久。是时候统一了。

     统一是必然的,崛起也是必然的,谁都无法阻挡,即使山体滑坡都无法阻挡时间的巨轮,何况是几块历史的绊脚石。当然阻挡是它们的自定义属性,被碾压则是它宿命的返回值,而我们的使命是要跟随时间巨轮滚滚向前。

本节内容
创建程序化细分线


本节要实现效果
.....






20190420 Procedural Subdivision Lines - Creating Control Curves.png20190420 Procedural Subdivision Lines - Creating Control Curves2.png

今天是42岁
061周二

88
这是写给Houdini的第088封“情书”


我是geo流程图

image.png

我是vex代码

❖ 创建控制线 ❖

//-- 6a 创建变量

float o = chf("Offset");

//-- 6c 随机值范围驱动偏移值

float rando = fit01(rand(@ptnum + chi("Seed")),-o,o)*chf("Random_Offset_Amp");

o += rando;


//-- 7a 创建一个x轴偏移变量

float s = chf("Curve_Softness");


//-- 1 引入end与start点的位置

vector npos = point(1,"P",@ptnum);

vector pos = v@P;


//-- 2 end到start矢量

vector d = npos-pos;


//-- 3 求中间点三个//-- 6b 替换偏移变量 //-- 7 应用x偏移//-- 8 x轴限制0~1范围

vector p2 = pos + set(clamp((o-s*o),0,1)*d.x,0,0);

vector p3 = pos + set(o*d.x,0,d.z*(1.0-s));

vector p4 = pos + set(clamp((o+s*o),0,1)*d.x,d.y,d.z);


//-- 4 增加点

int npt2 = addpoint(0,p2);

int npt3 = addpoint(0,p3);

int npt4 = addpoint(0,p4);

int npt0 = addpoint(0,npos);  //end点


//-- 5 创建连线

int newprim = addprim(0,"polyline",@ptnum,npt2,npt3,npt4);

addvertex(0,new

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值