zeno用户手册
如何安装ZENO
Windows安装ZENO
界面操作
界面布局
面板操作
视图操作
节点面板
时间轴
设置根路径盘符变量
设置数据缓存路径
常用快捷键
视图交互
模型操作
创建基础模型
读取模型
FBX
OBJ
ABC
变换模型
为模型位置K帧
添加颜色
模型转换
模型合并与分离
模型切割
复制模型
将模型体素化
属性操作
属性基本概念
创建属性的方法
属性数据类型
属性过滤
查看属性
创建随机属性
制作动画噪波
映射属性范围
循环操作
理解ZENO中的循环
循环判断
循环累加
打断循环
程序化变形动画
程序旋转楼梯制作
程序化多米诺生成
Instance
Instance基本流程
控制动画时间偏移
Instance制作草地
材质渲染
基本渲染流程
材质贴图赋予
摄像机
默认摄像机
导入maya摄像机
在view视角创建摄像机
摄像机动画
灯光
面光源
材质参数参考
封装SUBNET
基本封装流程
封装旋转楼梯
流体解算
流体基本解算流程
2.0制作水拍柠檬效果
流体持续发射
设置流体解算区域
动态碰撞体
刚体解算
布料解算
有限元布料解算
有限元布料基本解算流程
跳舞的女孩
MPM布料解算
MPM布料基本解算流程
固定部分布料,自定义布料受力
模拟泥土,金属以及沙子
为布料设置动态碰撞体
zplay渲染出图
-
+
首页
程序旋转楼梯制作
 **工程下载**:[【附件】spiralstair1.zip](/media/attachment/2022/05/spiralstair1.zip) ## 台阶生成 1.创建==CreateCube==节点得到一个基础的盒子,并且通过==PrimitiveToSDF==转换成SDF模型。再通过==SDFToPrimitive==转换成多边形,可以得到一个倒角的效果。  2.创建一个==TransFormPrimitive==将模型放在网格上,并且通过==CachedOnce==让它只计算一次。  3.我们创建一个循环系统,首先创建一个==NumericFloat==控制循环的数量,(代表楼梯的生成数量),同时使用==Blackboard==标注。  4.创建一个==TransformPrimitive==,translation值上连接一个==PackNumericVec==节点。该节点的y值我们连给==BeginFor==的index变量,把最终的==TransformPrimitive==结果连给==EndForEach==object端口。打开软件左上方的Display菜单选择Wireframe线框显示,我们可以看到位置有重叠。  5.我们再创建三个数值,分别命名为楼梯高度、楼梯宽度、和楼梯数量。  6.再创建一个==PackNumericVec==节点,用于控制==TransformPrimitive==上的scale缩放,将长度值分别连给第一个==PackNumericVec==的z值和第二个==PackNumericVec==的z值。将楼梯宽度连给第二个==PackNumericVec==的x值。将楼梯高度连给第二个==PackNumericVec==的y值。但是当我们把高度值设置到0.85的时候,我们依然看到模型之间有穿插。  7.继续创建一个==PackNumericVec==节点,`tranlastion`连接控制支架移动的数值,`eulerXYZ`连接控制支架旋转的数值,最终输入给`MakeList`的`obj2`上。我们就可以在每个支架上面都可以得到一个白色的小球。 7.将第一个==PackNumericVec==节点y值连接断开,创建一个==NumericOperator==设置楼梯高度值和2相乘,把结果通过另一个==NumericOperator==和循环的index相乘。最终的结果输出给第一个==PackNumericVec==节点y值,此时我们无论将楼梯高度值设置多少都没有穿插。  8.创建两个数值,分别用于控制旋转的弧度和整体的缩放。  9.继续创建一个==TransformPrimitive==,eulerXYZ端口连给==PackNumericVec==,其y值连接旋转弧度和循环index相乘的值。另外,也可以将整体缩放连给该==TransformPrimitive==的scaling,台阶生成就完成了,我们可以自由的控制台阶的各个状态。  ## 支架生成 1.通过==CreateCylineder==生成一个圆柱。并且通过个==TransformPrimitive==和==PackNumericVec==控制它的初始高度,y值输入1。  2.创建一个控制支架边缘距离的数值,和控制楼梯长度的数值相乘,结果给到控制圆柱移动的==PackNumericVec==节点的z值。  3.创建一个控制控制支架粗细的数值,分别连给一个新的==PackNumericVec==的x值和z值(y值手动输入1),结果给到==TransformPrimitive==的`scaling`上。  4.再次创建==PackNumericVec==,其`translation`移动的y值连给控制台阶移动的最终数据,其`eulerXYZ`连给控制台阶旋转的`eulerXYZ`值。创建一个控制支架高度的数据,连给控制`scaling`的y值端口。  5.创建一个新的==TransformPrimitive==,将`Scaling`值连给控制整体缩放数据,创建一个==MakeList==节点,将台阶和支架的最终输出`Outprim`分别连给`obj0`和`obj1`。将最终输出的`list`连给==EndForEach==的`object`端口。至此,支架的自动生成也完成了。  ## 扶手生成 1.创建==MakePrimtive==,`size`输入1,得到一个prim数据。并且通过==TransformPrimtive==节点间将`translation`连给第一个控制支架的==TransformPrimitive==的`translation`值。  2.继续创建==TransformPrimitive==节点,通过==PackNumericVec==的y值来控制这个prim在支架的上方。需要先让支架的高度乘以2,再减去1,把数值给到这个y值。  3.再创建一个==TransformPrimitive==节点,`translation`连接给控制支架移动的值,`eulerXYZ`连给控制支架旋转的值,结果输入给==MakeList==节点的`obj2`端口。现在我们就可以看到每个支架上方都有一个白色的小球了。  4.现在,我们将原来的==MakeList==节点替换为==MakeDict==,将台阶、支架、扶手分别输入命名为box、cylinder和sphere。  5.在==EndForEach==之后我们创建一个新的==BeginForEach==和==EndForEach==,该循环可以对第一次循环生成的List进行循环,里面加入==DictGetltem==节点。`Key`输入box就可以把制作的所有台阶提取出来,最后加一个==PrimMerge==节点,合并一起。重复两次此类操作。就可以把支架和扶手的支点提取出来。  6.在提取完楼梯扶手之后添加一个==PrimitiveLineSolidify==节点,该节点可以根据多个点生成管状物体。`count`值输入20,控制圆度细分。创建一个控制扶手粗细的数值,连给radius。我们的楼梯扶手就生成了。  7.将楼梯的数量调整到50,在生成的扶手后面创建一个==TransformPrimitive==节点,将整体缩放的数值连接给`scaling`。  ## 创建中心圆柱 1.通过==CreateCylinder==和==TransformPrimitive==节点节点得到一个在网格上面的基本圆柱体。  2.继续创建==TransformPrimitive==控制圆柱的高度和粗细,`Scaling`连给一个==packNumericVec==,X值和Y值给到一个自定义为‘中间圆柱粗细的’的数值。y值为楼梯高度和楼梯数量相乘后的结果。  3.再次创建==TransformPrimitive==,`scaling`连接给整体缩放数值。这样,中间圆柱就生成了。  ## 材质灯光 1.提取完楼梯台阶后我们添加一个==setMaterial==节点和==shasderFinalize==节点,==shasderFinalize==的`mtl`输出连给==setMaterial==的`mtl`输入。创建一个==NumericVec3==节点输入`0.6,0.25,0.15`作为颜色值连给==shasderFinalize==的`basecolor`端口。  2.同样,我们给支架也创建相同的材质连接,颜色值输入`0.75,0.75,0.2`,并且把,==shasderFinalize==的`metallic`值输入1.0,`roughness`值输入0.2,这样,支架就有了金属的质感。  3.继续为扶手和中间圆柱添加金属材质,并且通过==createPlane==创建一个地面并赋予材质。在软件左上方`Display`菜单把`show Grid`取消显示。  4.在软件上方的`EnvTex`菜单里可以选择不同的环境贴图为场景设置环境光照。  5.在`Display`菜单里点击`Set Light`可以设置灯光的方向、强度、颜色、阴影等灯光效果。  6.如果您想设置楼梯数量随着时间帧增加,可以直接把控制楼梯数量的数值更改为==GetFrameNum==节点。 
caofei
2022年5月31日 22:19
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
关于 MrDoc
文档MrDoc
是
州的先生
开发并开源的在线文档系统,其适合作为个人和小型团队的云笔记、文档和知识库管理工具。
如果文档给你或你的团队带来了帮助,欢迎对作者进行一些打赏捐助,这将有力支持作者持续投入精力更新和维护文档,感谢你的捐助!
>>>捐助鸣谢列表
微信
支付宝
QQ
PayPal
None
None
None
None
None
Markdown文件
分享
链接
类型
密码
更新密码