环绕曲线周围的螺旋状粒子
来源:互联网 发布:mg动画教程 知乎 编辑:程序博客网 时间:2024/04/30 11:19
float $scaleOffset = 0.2 ;
float $pos[] = `pointOnCurve - pr(particleShape1.age) - p curve1`;
float $tan[] = `pointOnCurve - pr(particleShape1.age) - nt curve1`;
float $norm[] = `pointOnCurve - pr(particleShape1.age) - nn curve1`;
vector $posvec = <<$pos[0],$pos[1],$pos[2]>>;
vector $tanvec = <<$tan[0],$tan[1],$tan[2]>>;
vector $normvec = <<$norm[0],$norm[1],$norm[2]>>;
vector $norm2vec = cross($tanvec,$normvec);
particleShape1.position = $posvec + ($scaleOffset * $normvec *cos(particleShape1.age*20))+($scaleOffset*$norm2vec*sin(particleShape1.age*20));
缺点,速度慢。下面对表达式做一处更改,使它运行的更多快。
-ch on(代表“Construction history on(创建历史信息选项开)“)是pointOnCurve命令的选项之一。这个选项创建一个具有输入属性和输出属性的pointOnCurveInfo类型节点。通过为每条曲线创建一个这样的节点,并使用setAttr来设置参数,使用getAttr来获得参数值,该表达式将运行得更快。因为pointOnCurve 每一次运行时都要创建并销毁这样的一个节点,而这个操作对每一帧中的每一个粒子都要执行一次。通过消除这些节点的创建和销毁操作,该表达式将执行的更快。
pointOnCurve -ch on -pr 0 curve1;
pointOnCurve -ch on -pr 0 curve1guide;
float $scaleOffset = 0.2 ;
setAttr pointOnCurveInfo1.parameter(particleShape1.age);
setAttr pointOnCurveInfo2.parameter(particleShape1.age);
float $pos[] = `getAttr pointOnCurveInfo1.position`;
float $tan[] = `getAttr pointOnCurveInfo1.normalizedTangent`;
float $normEnd[] =`getAttr pointOnCurveInfo2.position`;
float $norm[];
$norm[0] = $normEnd[0]-$pos[0];
$norm[1] = $normEnd[1]-$pos[1];
$norm[2] = $normEnd[2]-$pos[2];
vector $posvec = <<$pos[0],$pos[1],$pos[2]>>;
vector $tanvec = <<$tan[0],$tan[1],$tan[2]>>;
vector $normvec = unit(<<$norm[0],$norm[1],$norm[2]>>);
vector $norm2vec = cross($tanvec,$normvec);
particleShape1.position = $posvec + ($scaleOffset * $normvec *cos(particleShape1.age*20))+($scaleOffset*$norm2vec*sin(particleShape1.age*20));
- 环绕曲线周围的螺旋状粒子
- CSSDIV:让文本字符环绕在你的图片周围
- 朦朦胧胧的耍酷薄雾如同轻纱一般环绕在我们周围
- 探讨CSS中元素浮动后,文字环绕于浮动元素周围,没有与浮动元素重合的问题
- 在文字周围环绕一层阴影效果[android:shadow] 使用
- 螺旋状输出
- 我周围的雷人雷语
- 我周围的生活
- struts2的环绕通知
- 环绕的字WrapText
- spring 的环绕通知
- 使用Spring注解方试实现AOP2--环绕通知(周围通知)
- img标签周围的空白
- android 与周围 的距离
- 得周围不少人的
- 显示周围的蓝牙设备
- SpringAOP环绕通知的使用
- textview 手动的设置周围的照片
- 内部テーブルに数値項目の集計について
- 英文的Smart Card 开发环境大全(设备齐全啊)
- 实战分区表:SQL Server 2k5&2k8系列(三)
- MTD和MDd导致的问题
- Shell Programming
- 环绕曲线周围的螺旋状粒子
- 单步 区别
- ATPCS概述
- amazon interview
- 2010/6/30 アプリケーション「じゃんけん」
- 学习Oracle架构应当掌握哪些知识
- 使用WinDbg调试程序
- 字符,字节和编码
- FLASH与ASP通信原理入门级教程(一) LV类基础讲解