Houdini基础2
HOUDINI VEX基础
Vex的编写
学习方式 1.houdini自带帮助文档
2.书籍:HOUDINI 12标准教程
3.bilibili 视频:https://www.bilibili.com/video/BV12W411x7df?p=4
https://github.com/jtomori/vex_tutorial
http://www.tokeru.com/cgwiki/?title=HoudiniVex
bilibili视频:CG猎人
爱给网:houdini视频
知乎:https://www.zhihu.com/column/goprocedural
www.vfxforce.cn 视频与教程
Entagma - 免费Houdini教程 bilibili
youtube
houdini 对每个点采取并行计算方式,所以定义的全局变量只会被以初值复制到各个点,无法实现相加;若要实现相加,在外层定义,后添加solver,后在solver内实现相加
- obj模块下添加geo模块 (obj层 物体层,可以对物体进行移动,缩放,旋转,但不能编辑物体的点线面,编辑点线面需进入sop层(surface operate) 如添加geo节点
- 进入geo模块,添加attribute wrangle模块
- 在attribute wrangle的属性code Vexpression中输入代码
Run over属性
决定代码的运行次数detail 只运行一次,point按输入模型上的点的数量运行,primitives按面的数量运行,vertices按顶点的数量运行(顶点数大于点数)
变量
变量的定义;类型 @ 变量名 ;(@属性:可在外部引用,在外部引用时需在@前加上类型,不加@为局部变量,只在当前运行中使用)
f@v1 = 1; (类型简写,f :float ,i:int,ve;v:vector…..)
float @v1 = 1;
float v2 = 1; //不包@为局部变量,只能在本次运行中使用,不能输出
全局变量
@P 点的属性 @P.x 点的x值,@P.y @P.z
@N 法线
@Cd 颜色
@ptnum 顶序号
@numpt 模型上点的数量
@Frame 帧
($F,$T 可用,其它并不一定可用 $F用 @Frame 代替, $T用 @Time代替)
Attribute Wrangle 输入端口
第一个商品编号为0 ,从左到右依次为0,1,2,3
获取对应端口的内容
bilibili Houdini VEX中文百科 https://www.bilibili.com/video/BV12W411x7df?p=4
1.
@opinput端口号_变量名.属性
列:
获取第一个端口对象的点的x值
@opinput0_P.x
获取第3个端口的自定义变量v3属性 (v3需在对应的物体上声明 若上一个为attributewrangle则 用f@v3;定义,其它可用attribute create 添加属性
@opinput2_v3
2.使用point ,prim ,vertex,detail属性获取端口输入
Point(端口号,属性,点序号)
Vector clr = point(1,’P’,0);
Clr = prim(1,’Cd’,0);
Clr = vertex(1,’Cd’,0);
Clr = detail(1,’Cd’,0);
vex 参数图形化
ch chi chf chramp
1 obj下创建geo,进入geo
2 创建attribute wrangle
输入
并点 create spare …..按键 ,下方将建立max min两个滑块,可通过滑块作为输入值在vex调用
chramp(变量名,自变量) 自变量将映射至没块框中
chramp(‘ramp’,@p.x)
空格+G最大化显示物体
空格+B四视图显示
Obj模块为下方各节点物体的位置,缩放,旋转的操作
SOP为建模模块 调整物体的点线面,中心点
添加点线面
1addpoint 添加点(vex方式)
2添加点 node方式
添加add节点
i
列:绘制三角函数曲线
添加geo模块,进入geo
添加line模块 修改方向direction x轴为1,length长度10 points点数200
添加attribute wrange 模块
在vexpression中输入
@P.y = sin(@P.x);
傅里叶变换
在obj层下,添加geo模块,进入geo
添加line,attribwrangle 并连接如下
修改Line参数
在attribwrangle1添加代码
@P.y = sin(@P.x + @Frame*0.1);
在attribwrangle2添加代码
@P.y = sin(@P.x*2 + @Frame*0.1);
在attribwrangl3添加代码
@P.y = @opinput0_P.y + @opinput1_P.y;
或可以下列方式
Subnet 将多个节点打包,便于管理
VOP节点,将vex的实现节点化
节点 属性外移
以noise为列
节点中键点击-》promote Parameter 将属性显示在外层属性中 (右键属性 点击delete 删除外移,或是双击)
在上一层属性中将显示外移属性
查看函数值
point与 vertex 区别 ;
点与顶点区别(CG猎人,bilibili):面的构成,需要顶点存在,点可以单独存在,顶点不可以
函数
ch,chf,chi chramp
属性
读取属性
修改属性
houdini 组
int npt npointsgroup(0,'up'); //返回该组中有多少点
// nprimitivesgroup() 返回组中primitive的数量
//nverticesgroup()返回组中顶点的数量
@group_up = 1; //如果无组,创建组up,并将当前@ptnum进组
@group_up = 0; //当前点出组
if(@group_up ==1) //判断点是否在组内,1在组内,0,不在
setpointgroup(0,'up',@ptnum,1); //把点添加到组中,0移除点
setpointgroup(0,'up',@ptnum,1,'toggle'); //切换点的状态,原在组出组,原不在组进组
//setprimgroup() setvertexgroup()
inpointgroup(0,'up',@ptnum)) ;//判断点是否在组内,1在,0不在
int list[] = expandpointgroup(0,'up'); //返回组内所有点的序号
int list1[] = expandpointgroup(0,'0-5');
int list2[] = expandpointgroup(0,'');//空组返回所有的点序号
Houdini基础2相关推荐
- Houdini技术体系 基础管线(三) :UE4以选择区域的方式对地形做生成和更新 上篇...
背景 前一节里,解决了Houdini地形无缝导入到UE4的流程问题.但这种方法也有它的局限性,在实际游戏项目里,LA和LD还是偏向在游戏引擎编辑器里工作,他们的一些设计也会影响到地形的信息,那么就需要 ...
- Houdini Terrian UE4 (〇)Terrian基础
导言 这篇文章基本是翻译了官网文档,勿喷~侵删~ 胡地泥的地形工具主要使用了叫做height field的2D volume,其中每个voxel包含了当前grid的高度信息.一个geometry ne ...
- python houdini_python for houdini——python在houdini中的基础应用01
学了一个星期的python,终于可以在houdini中实操了,但是还是有点懵,对于python的语法还不大熟悉,所以还是得多练多做笔记,看了网上几位大佬的博客,个人觉得入门学习还是挺不错的python ...
- 在houdini里,怎么手动设置输出物体的红绿蓝通道,便于nuke调节使用(基础篇)
首先陈述下 我现在是学习houdini的初段,前后一年主要涉及灯光环节,一直以来一直忙着工作,也没真正好好研究过houdini,后面我会用更多时间研究学习,涨知识了就会不定期的写一写这种基本的制作方法 ...
- houdini 函数基础
measure 可以测量梯度: (视口中显示梯度:选择measure节点,在视口中按enter键 显示 ,esc键退出) vay 投影 add 添加点,或连点成线 resample 将线重新采样加点 ...
- Unreal Engine+Houdini创造程序性游戏场景视频教程
Unreal Engine+Houdini创造程序性游戏场景视频教程 大小解压后:27.4G 持续时间14小时30分 包括项目文件 1920X1080 高清视频 程序游戏环境--虚幻引擎和Houdin ...
- ue4移动到一定距离_UE4与Houdini锁链与绳子生成器
本文为教程记录笔记,分为两部分,均非常简单.(对原著进行了一定的修改): 第一部分主要介绍锁链的生成: 第二部分主要介绍绳子的生成: 本人Houdini萌新,如有书写和理解错误还请大佬扶正: 第一部分 ...
- lol模型导入ue4_Houdini amp; UE4 程序化建模——石头(一)基础工作流
导言 最近程序化建模的风气在国内兴起,建立好程序化建模流程,通过调参就可以生成丰富的美术资源.可以程序化建模的内容有很多,国外的程序化曼哈顿.林中小屋等都是很好的例子,所有带有规律的模型都可以程序化来 ...
- houdini帮助文档_edge wrangle在houdini的vex优化与应用
开源于: 五行精灵:开源1000+HDA:FeELib for Houdini使用指北zhuanlan.zhihu.com 首先是原理 案例在后面 众所周知houdini的polygon内有三个ca ...
最新文章
- Atitit.js跨域解决方案attilax大总结 后台java php c#.net的CORS支持
- 为什么充电电流变化有点大
- Vue源码解析之AST语法树(三)
- 企业微信小程序_小程序开发工具及真机调试_host配置及代理
- 女神说不能每张照片P的一样,所以朋友圈开三天可见,用Python一步解决
- Javascript原型理解图
- matlab的simin用法,在Maltlab 的simulink中怎么输入讯号
- Unity3D基础27:C#随机函数与物体销毁
- c语言正方体的表面积和体积公式,长方体的表面积(正方体体积的计算公式)
- 1.0 如何使用cubemx并且移植RTX操作系统?(方法二)
- vue.prevent .stop .passive
- 红米笔记本linux系统版本,小米笔记本安装Win10+Ubuntu16.04 LTS 双系统
- 管理学-“三个和尚”
- 计算机英语 自我介绍,计算机专业学生面试英语自我介绍
- 如何删除Win10“此电脑”中多出的“CD驱动器”盘符
- 计算机关闭自带杀毒,关闭联想自带杀毒软件的步骤
- 计算机专业英语选择题,计算机专业英语单选题
- 解决lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 网络连接不通
- FCPX插件 66种手绘漫画MG动画元素包 Comic Pop 破解版
- Python程序设计基础第二版董付国版课后习题答案