【案例二】Houdini消散文字制作

一、Overview

    文字通过时间轴中frame变化而碎裂从两边开始向着中间消散并向镜头移动。

效果

二、Sop(Surface OPerators or geometry nodes)

sops

2.1 divide

  • 通过细分平滑.
  • 整理多边形,三角面或四方面

该案例中通过Bricker Polygons将文字font的mesh拆解为四方形。

sops

2.2 facet

  • 控制表面的平滑度
  • 统一点或法线

该案例中使用Unique Points选项来打散原本转换为四方形面的mesh,让每个小块成为独立的单元。

sops

2.3 measure

  • 可以计算多边形的周长,面积,曲率,体积。

该案例中通过获取它的Area属性来作为碎片随机移动的一个依据。同过 $AREA可获得它计算的面积。

2.4 attribcreate

  • 创建属性,可以复写一个节点的默认属性。

该案例中使用该节点重新定义了AREA节点的值,使它处在一个我们期望的范围内。

sops

2.5 primitive

  • 编辑原始属性、原始属性和配置曲线。

该节点可操作几何图元的基础属性,如:旋转,移动,缩放,颜色等。该案例中primitive2用来改变其颜色属性,并在primitive1中作为移动表达式的一部分。primitive1中使用其DoTransformation选项,通过自定义表达式来控制被打散图元的移动。

primitive2

primitive2

三 Function&Parameter

3.1 Fuc

  • fit:相当于shader中remap或clamp,将一个范围映射到了一个范围。相关还有fit01,fit11,fit0。
  • abs:绝对值

3.2 Para

  • $AREA:获得measure中的面积属性
  • $CR:红色通道
  • $F:帧数
  • $TX:X轴方向距离原点的值

这里推荐一款可视化shader编程工具,对美术同学非常友好,就像建模工具中的材质编辑器一样

Houdini学习笔记——【案例二】消散文字制作的更多相关文章

  1. deepin linux 学习笔记(二)——文本编辑器

    目录 deepin linux 学习笔记(二)--文本编辑器 前言 nano 小巧的命令行编辑器 通用 编辑 定位 排版 配置 vim 思路独特的超级编辑器 命令模式 插入模式 底线模式(末行模式) ...

  2. Django学习笔记(二):使用Template让HTML、CSS参与网页建立

    Django学习笔记(二):使用Template让HTML.CSS参与网页建立 通过本文章实现: 了解Django中Template的使用 让HTML.CSS等参与网页建立 利用静态文件应用网页样式 ...

  3. 《Java编程思想》学习笔记(二)——类加载及执行顺序

    <Java编程思想>学习笔记(二)--类加载及执行顺序 (这是很久之前写的,保存在印象笔记上,今天写在博客上.) 今天看Java编程思想,看到这样一道代码 //: OrderOfIniti ...

  4. Hibernate学习笔记(二)

    2016/4/22 23:19:44 Hibernate学习笔记(二) 1.1 Hibernate的持久化类状态 1.1.1 Hibernate的持久化类状态 持久化:就是一个实体类与数据库表建立了映 ...

  5. X-Cart 学习笔记(二)X-Cart框架1

    目录 X-Cart 学习笔记(一)了解和安装X-Cart X-Cart 学习笔记(二)X-Cart框架1 X-Cart 学习笔记(三)X-Cart框架2 X-Cart 学习笔记(四)常见操作 四.X- ...

  6. C#可扩展编程之MEF学习笔记(二):MEF的导出(Export)和导入(Import)

    上一篇学习完了MEF的基础知识,编写了一个简单的DEMO,接下来接着上篇的内容继续学习,如果没有看过上一篇的内容, 请阅读:http://www.cnblogs.com/yunfeifei/p/392 ...

  7. DuiLib学习笔记(二) 扩展CScrollbar属性

    DuiLib学习笔记(二) 扩展CScrollbar属性 Duilib的滚动条滑块默认最小值为滚动条的高度(HScrollbar)或者宽度(VScrollbar).并且这个值默认为16.当采用系统样式 ...

  8. guava 学习笔记(二) 瓜娃(guava)的API快速熟悉使用

    guava 学习笔记(二) 瓜娃(guava)的API快速熟悉使用 1,大纲 让我们来熟悉瓜娃,并体验下它的一些API,分成如下几个部分: Introduction Guava Collection ...

  9. Dynamic CRM 2013学习笔记(二十八)用JS动态设置字段的change事件、必填、禁用以及可见

    我们知道通过界面设置字段的change事件,是否是必填,是否可见非常容易.但有时我们需要动态地根据某些条件来设置,这时有需要通过js来动态地控制了. 下面分别介绍如何用js来动态设置.   一.动态设 ...

随机推荐

  1. oracle两表中的两列进行模糊匹配的方法

    SELECT T2.列名,T1.列名  FROM 主表 T1, 匹配表 T2    WHERE  T1.匹配列  LIKE CONCAT('%',concat(T2.匹配列,'%')); 注意:  a ...

  2. 队列问题非STL解决方案

    队列问题非STL解决方案 常年使用STL解决队列问题,以至于严重生疏队列的根本原理... 直到今日 被老师被迫 使用算法原理解决问题,方才意识到我对队列一窍不通... ...直到 经过一系列的坑蒙拐骗 ...

  3. PHP_CodeIgniter Github实现个人空间

    github支持github Pages 可以实现自己的个人空间 XXX.github.io/project 1 注册自己的github账户 2 需要设置自己的user_name, user_name ...

  4. 《剑指offer》面试题3 二维数组中的查找 Java版

    (二维数组,每行递增,每列递增.输入二维数组和一个整数,判断数组中是否含有此数.) 我的方法:拿到题目,根据题目条件我提取出这样一个特性:一个数的右边和下面的数都比它大.于是就可以写出一种递归的方法: ...

  5. CodeChef A String Game(SG)

    A String Game   Problem code: ASTRGAME   Submit All Submissions   All submissions for this problem a ...

  6. 攻防世界--maze

    测试文件下载:https://adworld.xctf.org.cn/media/task/attachments/fa4c78d25eea4081864918803996e615 1.准备 获得信息 ...

  7. ES6——变量

    ES6变量: 1.var 可以重复声明: 无法限制修改: 没有块级作用域:(如,{...},if(){..} ...) 2.let 不可以重复声明,变量—可以重复修改,有块级作用域: let a = ...

  8. 数组降维-JavaScript中apply方法妙用

    海纳百川,有容乃大 1.普通循环转换方式 将多维数组(尤其是二维数组)转化为一维数组是业务开发中的常用逻辑,除了使用朴素的循环转换以外,我们还可以利用Javascript的语言特性实现更为简洁优雅的转 ...

  9. Redis线上环境做Keys匹配操作!你可以离职了!

    转自:https://blog.csdn.net/bntx2jsqfehy7/article/details/84207884一.一个新闻 新闻内容如下:php工程师执行redis keys * 导致 ...

  10. 用vbs脚本简易实现 番茄工作法

    番茄工作法: 专注于某一段时间,减少打断,提高时间的感知和掌控. 25min工作+5min休息 周期:4x(25+5)+20 VBS代码实现如下: Dim fso,f,count,time,shell ...