作者cjcat2266 (CJ Cat)
看板Flash
标题[心得] 水波/震波特效 (DisplacementMapFilter应用)
时间Sat May 26 19:04:41 2007
好啦~水波/震波特效研究完成罗!!
详细DisplacementMapFilter的constructor参数意义
请参照我之前写的有关DisplacementMapFilter的文章
那就废话不多说罗
成果在这里
http://0rz.tw/4c2DP
原始档下载
http://0rz.tw/c02Hz
简单的原理讲解如下:
之前提到DisplacementMapFilter的参考用BitmapData
可以选择参照RGB channels其中的任何一个(或多个)
中间值是128,比128大或小决定位移的量值
256代表位移scaleX/scale的100%,0带表 -100%
所以在参考用BitmapData的设计上就需要利用以上原理
绘制参考用BitmapData的参考mc就是library里面的displacer
里面用两个圆形shape带有线性渐层(R & G from 0~256)用add blender叠加
外面再用圆形渐层从 (R, G, B, A) = (128, 128, 128, 0) 到 (128, 128, 128, 100)
这样就可以让参考BitmapData的外为不要有明显的截痕
(因为0x808080的RGB值都是128,代表DisplacementMapFilter无法作用)
其他displacer的位置变换、大小修改实际情形请参照原始档
简单讲一下我用的"震波渐弱"技巧
其实也是把之前物理课学到的"阻尼震荡(damped oscillation)"...拿来现学现卖而已XD
我的震荡是用最大震荡值乘上Math.cos()函数已达到简协效果(应该很明显...)
然後在乘上Math.pow(Math.E, damping)的阻尼常数
damping会随着时间越来越小(从0开始变成负的)
就会有阻尼震荡的效果啦~
P.S.上课数学&物理专心听,还是会受用的~XDD
--
CJ Cat = Croa'J Cat = Cockroach Cat = 西街凯特 = 蜚蠊猫 = 蟑螂猫
Gallery
http://cjcat2266.deviantart.com
MSN
[email protected]
Yahoo
[email protected]
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.228.83.136
1F:推 aquarianboy:推分享 :) 05/26 19:50
2F:推 MrMarcus:有下有推 05/26 21:11
3F:推 etrexetrex:推水波 05/26 23:21
4F:→ icedesign:有下有推!! 05/26 23:32
5F:推 VV11:推物理课专心听XD 05/28 05:14
6F:推 eje:酷!! 05/28 21:04
7F:推 zswolf:原始档打不开>"< 06/14 10:45
8F:推 Cypresslin:推一个! 02/14 18:02