Houdini_Copy(拷贝节点)【第十课】
Game艺视界原创文章原创 39291 0
实名

通过了实名认证的内容创造者

发布于 2023-7-29 00:27:17

您需要 登录 才可以下载或查看,没有账号?注册

x

当我们需要复制大量相同物体,我们就需要使用copy节点,将一个模型拷贝到大量的点上这时候就需要;拷贝后模型大小与形状都是可以调整的
缺点:拷贝数量大运算会慢些
  • copy节点左侧输入节点为要复制的模型及模型变换的节点,如大小变换、颜色变换等节点;右侧为要复制到的模版,例如按Grid上的点进行复制
  • copy节点的stamp参数面板中配置相关变量,例如大小变换scale,颜色变换等。配置好后,要将stamp inputs打开,传递参数使用
  • 在模型变换的节点中引入copy节点的stamp

1a9e0d3225b4d9cc18596184bee22ae3.png


Copy我们物体;注意调整间距(左边输入模型)


ec4c414809d09e6473b8a8fdf1693e02.png


注意:这里面的缩放(有叠加继承关系)


如果想以自身缩放我们可以这样,先关闭变换

然后我们手动设置距离

这样我们就可以正常缩放了


将模型拷贝到点


拷贝节点stamp函数使用

首先开启Stamp

然后添加函数变量-->设置名称

引用即可

stamp("../copy1/",scale,1)    ,其中copy1指的上述的copy节点,scale是上述变量#Copy/02

我们还可以将模型拷贝到地形上撒的点


#使用多个源网格复制到点

我们有三个网格体想要同时复制到点上,现在只是单个静态物体复制

并且我们需要实现随机复制所有类型网格体

01-首先我们创建一个Switch开关
02-添加属性,随机化节点;参数命名为index索引,以便在网格中随机选择最大值设置为2


接下来为每个点添加一个循环

使用houdini中复制点节点,将网格作为源

#Copy/03
使用多个源网格体,使用复制到点选择
01-首先我们将网格体合并成,然后连接到拷贝节点
02-添加connectivity(连接几何节点),该属性的默认名称是class;每个基元或点都被分配一个从 0 到连接集数减 1 的数字。共享相同编号的两个基元或点将被连接
03-attribfrompieces
将属性指定给点,指定应将一组模型中的哪一个随机或基于各种规则复制/实例化到该点

这次拷贝线上模型一样

  • 注意属性首字母大小写问题,P, N, Cd和Alpha首字母需要大写,其他属性名字必须小写,否则无法识别。shop_materialpath有下划线链接
  • 类似的属性之间的关系,有的是叠加(P+trans),有的是相城法(pscale*scale);优先级覆盖(orient>N>v)

#copy to point如何拷贝不同物体
foreach循环体
point()函数运用
point(“节点路径”,点序号,“点属性名字”,属性元素)

#copystamp的局部变量
局部变量介绍:与全局变量相对,Hscript语法特点$+大写字母
1_$CY对应拷贝物体的序号,从0开始
2_$NCY总拷贝数量
3_$PT右边拷贝点的序号,如果使用了模板组,那么只是组里面的点序号重新排列
4_$TPT如果不考虑拷贝组,这个变量存储的就是原来点序号。
5_$NPT模板物体的所有点

#对于粒子
$AGE:粒子的年龄
$LIFE:寿命比例0-1的范围
$ID

#同心圆的方法:
copy stamp:直接$CY+1控制缩放比例;
copy to point:右键生成点,然后设置点的pscale为ptnum+1
copy to point 实现stamp的方法:
  • 使用houdini内置的可识别的变量
  • 使用point()来读取创建的数据

本期笔记分享就到这里,我们下期见!

#更多详细文章分类
https://docs.qq.com/sheet/DYkdBWklaZVRZYUta
坚持与您分享最有价值“干货”内容,本期分享就到这里,我们下期见!

评分

参与人数 3元素币 +10 活跃度 +14 展开 理由
li22peng + 5 + 5 太赞了!
bass01 + 2 + 5 【点赞】这很有大网气质!
闭户先生... + 3 + 4 先收藏再说

查看全部评分

微信公众号:Game艺视界
使用道具 <
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表