圣诞树制作子图工具包

该工具包内包含三个子图,分别可以控制主树干的生成与形态,次枝干分支的生成与控制,叶子的制作。
点击下载:
zenoTree1.0.zsg (199.9 KB)

安装方法:在zeno场景中点击右上角菜单:文件-导入 。选择下载好的zsg文件导入即可。

生成枝干1.0

【输入口】

  • 点数量:控制生成枝干的横向细分。点的数量越多枝干的横向细分也就越多,并且形态扰乱的细节也就越多。下图点数量分别是10和50,可以看到横向细分有明显的区别。

  • 形态扰乱强度: 控制树干的形状扰乱强度,(需要先给“”形态扰乱频率“”输入一个值才会有效果),下图在相同扰乱频率下给了不同的扰乱强度值。

  • 形态扰乱频率: 控制树干扰乱的频率,数值越大扰乱的细节就越多,需要配合点数量参数,当形态转折越多的时候,点数量越多过渡就越圆滑。

  • 锁定点数:控制哪些点不参与扰乱,从底部开始算,如果输入10则代表从底部的点开始到第十个点不参与扰乱。数值越大,不参与扰乱的区域越多。数值比例和点数量参数有关。

  • 根部点数:当输出为枝干时,控制枝干由粗变细的位置。默认为0则表示树干从底部到顶部会有一个半径值乘1到0的变化。假如有10个点,如果该数值输入为5时则代表0-5号点不会有粗细渐变。

  • 表面半径:控制生成枝干的粗细

  • 半径叠加:在原有半径的数值上增加一个数值,可以去除顶部的尖锐。

  • 表面扰乱强度:控制生成枝干的表面扰乱,增加树皮的表面细节

  • 表面扰乱频率:控制生成枝干的表面扰乱的频率

  • 扰乱种子1:控制形态扰乱效果的随机种子,不同值得到不同的效果。

  • 扰乱种子2:控制表面扰乱效果的随机种子,不同值得到不同的效果。

  • 高度:控制生成枝干的高度

【输出口】

  • 枝干:带有厚度的polygon模型
  • 顶点:最上面的一个点。通常用来复制树木顶部装饰
  • 线条:树木线条,带有一些分支需要的属性,用于将数据给到其他子图

【输出属性】

  • pos:每个点的位置

  • bitang:与线条方向互相垂直的切线属性

  • dir:线条方向属性

  • index:每个点的点序号

  • noise:每个点位置扰乱之后的属性

  • sca:每个点的半径属性

  • tang:与线条方向互相垂直的副切线属性

树干分支1.0

【子图作用】

对于生成枝干1.0子图产生的线条制作分支,只能对一条线进行分支设置。

【输入端口】

  • 树干: 输入生成枝干1.0产生的主枝干线条。
  • 树枝:输入生枝干1.0制作的另一个线条。

  • 生成数量:控制分支的数量。

  • 生成种子:控制产生分支的位置种子,不同的种子得到不同的位置。

  • 底部位置:控制底部从什么地方开始产生分支,默认为0则是最低端。
  • 顶部位置:控制分支基于主枝干的最高位置,默认为1则是最顶端。

  • 底部方向偏移:控制底部分支的朝向,数值为0则指向枝干的方向,数值为1时则指向与树干垂直方向。如果数值与顶部方向不一致朝向则产生渐变。
  • 顶部方向偏移:制顶部分支的朝向,数值为0则指向枝干的方向,数值为1时则指向与树干垂直方向。如果数值与底部方向不一致朝向则产生渐变。

  • 旋转方向随机 控制分支以树干为轴的选择方向随机。

  • 大型扰乱强度:设置分支的扰乱强度,需要同时设置扰乱频率。
  • 大型扰乱频率:设置分支扰乱的频率,需要同时设置扰乱强度。

  • 缩放强度:控制分支的长度大小,根据主枝干的index值得到一个0-1的强度缩放长度渐变。

  • 缩放偏移:在原有的缩放长度上添加一个数值,控制所有线条的同时缩放。

  • 偏移扰乱强度:在原有的分支朝向上加一个扰乱值,得到一些不规律朝向的枝条。

树干分支2.0

【子图作用】

该子图可以对树干分支参数的枝条批量生成二级分支,也可以生成分支上的叶子。

【接入端口】

  • 线条列表 需要接入树干分支1.0的线条端口

  • 树枝 需要接入生成树干1.0的线条端口,注意长度不要超过一级分支。如果是接入实体模型,需要给模型一个默认的index属性。

  • 数量倍增 控制产生的枝条的数量倍增,默认1为初始数量。数量的产生逻辑可以关注后续的该子图制作的教程。

  • 生成种子 控制产生的枝条的位置随机种子,不同的种子值将会产生不同的位置。

  • 底部位置 控制枝条产生在母枝干的起点位置。区间为0-1.

  • 顶部位置 控制枝条产生在母枝干的终点位置。区间为0-1.

  • 根部方向 控制根部线条的指向,0则代表指向母枝干方向,1则代表指向与母枝干垂直方向。

  • 顶部方向 控制顶部线条的指向,0则代表指向母枝干方向,1则代表指向与母枝干垂直方向。

  • 随机指向 控制线条的旋转方向,建议该值输入大于1。

  • 方向扰乱 在原有方向上添加一个扰乱。

  • 外形扰乱强度 控制线条的扰乱强度。
  • 外形扰乱频率 控制线条的扰乱频率。
  • 缩放强度 控制线条的长度。
  • 缩放偏移 在原有长度的基础上添加一个数值。

很好的讲解,感谢老师

这个版本直接可以运行了
download/daily-build/zeno-2023-0207-103350.zip