smoothstep
2015-09-15 18:19
232 查看
将返回一个 0 到 1 的值,该值表示参数在最小值和最大值之间的成比例距离。smoothstep 函数将用于在一段时间范围内逐渐但非线性地增加属性,例如,“不透明度”(Opacity)从 0 增加到 1。
smoothstep 函数与 linstep 函数的工作方式类似,不过其将在最小值和最大值之间的中间值附近更快地增加值。该函数使用最小值和最大值之间的 hermite 插值。
float smoothstep(float start, float end, float parameter)
起点和终点将指定最小值和最大值。
参数为要用于生成 smoothstep 数的值。
如果参数小于起点,linstep 将返回 0。
如果参数大于终点,linstep 将返回 1。
下图将根据时间顺序比较 smoothstep 和 linstep 返回的值:
示例
假设已使用“粒子工具”(Particle Tool)来创建名为“云”(Cloud)的粒子的集合:
假设也已逐对象为“云”(Cloud)添加动态“不透明度”(Opacity)属性(请参见使用粒子属性)。然后,可以为云的粒子形状节点写入该运行时表达式:
对于对象年龄的前 5 秒,这将在 0 到 1 的步骤中增加“CloudShape”的“不透明度”(Opacity)属性。这将使对象从透明淡入到不透明。在
2.5(0 与 5 的中点)附近,不透明度的淡入和淡出发生得更快。
有关类似示例的详细信息,请参见 linstep 函数。
http://download.autodesk.com/global/docs/maya2013/zh_cn/index.html?url=files/Useful_functions_smoothstep.htm,topicNumber=d30e718640
smoothstep 函数与 linstep 函数的工作方式类似,不过其将在最小值和最大值之间的中间值附近更快地增加值。该函数使用最小值和最大值之间的 hermite 插值。
float smoothstep(float start, float end, float parameter)
起点和终点将指定最小值和最大值。
参数为要用于生成 smoothstep 数的值。
如果参数小于起点,linstep 将返回 0。
如果参数大于终点,linstep 将返回 1。
下图将根据时间顺序比较 smoothstep 和 linstep 返回的值:
示例
假设已使用“粒子工具”(Particle Tool)来创建名为“云”(Cloud)的粒子的集合:
假设也已逐对象为“云”(Cloud)添加动态“不透明度”(Opacity)属性(请参见使用粒子属性)。然后,可以为云的粒子形状节点写入该运行时表达式:
CloudShape.opacity = smoothstep(0,5,age);
对于对象年龄的前 5 秒,这将在 0 到 1 的步骤中增加“CloudShape”的“不透明度”(Opacity)属性。这将使对象从透明淡入到不透明。在
2.5(0 与 5 的中点)附近,不透明度的淡入和淡出发生得更快。
有关类似示例的详细信息,请参见 linstep 函数。
http://download.autodesk.com/global/docs/maya2013/zh_cn/index.html?url=files/Useful_functions_smoothstep.htm,topicNumber=d30e718640
相关文章推荐
- jquery+ajax+php简单示例
- CentOs6系统安装mailx发邮件
- 简单发送邮件工具类
- 如何实现Linux多台服务器间的文件双向同步(一)
- 使用Nginx的proxy_cache缓存功能取代Squid[原创]
- 如何加快Android Studio 编译app 的速度
- 解决:有时listview设置为wrap内容时,listview高度只显示一条item的高度
- c++ 服务端
- 二叉树三种遍历的递归和迭代解法
- java获取项目路径,url路径
- mapreduce源码结构以及主要过程源码
- Ubuntu下源码安装nginx
- WinExec ShellExecute 以及CreateProcess
- Document distance note
- 查找AndroidStudio对应Eclipse的快捷键
- 后台json字符串存到request传到前台转化为js对象多种方法实例
- Yii上传文件(头像)的一个例子(后端处理)
- 使用SAX方式解析XML文件
- JS身份证验证
- ASA防火墙静态PAT端口范围测试