11RIA 闪客社区 - 最赞 Animate Flash 论坛

搜索
查看: 2677|回复: 2
上一主题 下一主题

[特效 & 粒子 & 滤镜] 【9RIA—伱永远不可以】—【s7教你做特效】5. 位图爆破—没你想的那么难

[复制链接] TA的其它主题
发表于 2018-2-8 14:44:56 | 显示全部楼层 |阅读模式

【游客模式】——注册会员,加入11RIA 闪客社区吧!一起见证Flash的再次辉煌……

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
转载:9RIA游戏开发者社区(天地会)
作者:伱永远不可以(原天地会大神)


大概是要发个专题吧....把自己学到的总结下,顺便能给不懂的同学们提供思路!
【s7教你做特效】系列教程(总目录)


在论坛上大家应该看见过不少 位图爆破的效果吧...//下面的效果 。。。鼠标点击爆破,,按任意键复原  ---有裂痕是因为图片长宽和分段数没有刚好整除


来说说原理:
1.把位图切割为N个小块,分别放在Bitmap里面...

1.jpg
切割位图 其实就是用到了 bitmapData.copyPixels()这个API...具体请了解官方文档,或者百度!

2.就是爆破问题了...
2.jpg
这么一看,好像爆炸图片没什么困难的.....
-----如果要复原爆炸前的图片咋办呢???
给图片加一个 x0,y0属性,就是初始坐标呀,想恢复,直接回到初始坐标!

----原理非常简单...但是为了方便,还是给封装了下!...简化了步骤...

--封装后的使用方法--源码,源文件在后面[可以选择爆炸是否旋转,复原的缓动参数,爆炸形状什么的,最新的源文件 请看最后面的链接里面的最新]

[Actionscript3] 纯文本查看 复制代码
import s7.tools.ImageTools;
import s7.effect.ImageBoom;
import flash.geom.Point;
import s7.tools.Tools;
import flash.display.Bitmap;
import s7.obj.S7Bitmap;


var ib:ImageBoom =new ImageBoom ()
//初始化参数:g 重力 ,nx 横向分段 ny 纵向分段 pic 爆破的图片 还有许多参数见源码--其实这里不有参数也行
ib.init ({g:new Point (0,1),nx:12,ny:15,pic:new Pic()})
ib.show (this,false)


this.addEventListener ( Event .ENTER_FRAME ,update)
//更新
function update(e:Event ):void 

{
        ib.update ()
}

this.addEventListener ("click" ,c)
//点击鼠标 爆炸
function c(e:Event ):void 

{
        //爆炸图片--参数1 :爆炸中心,2:爆炸半径,3:爆炸威力
        ib.boom (new Point (mouseX,mouseY),140,160)
        //ib.boom (new Point (mouseX,mouseY),140,160,new Point(4,1))//椭圆形的爆炸
        ib.start ()//开始更新

}
//按下任意键复原图片
stage.addEventListener ("keyDown",kd)
function kd(e)
{
        ib.resetTween ()
        
}



下载:
图片爆破.zip (1.24 MB, 下载次数: 13)
发表于 2020-5-8 11:16:04 | 显示全部楼层
感谢大佬分享
回复

使用道具 举报

发表于 2020-10-12 10:26:17 | 显示全部楼层
感谢分享!!!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

感谢所有支持论坛的朋友:下面展示最新的5位赞助和充值的朋友……更多赞助和充值朋友的信息,请查看:永远的感谢名单

SGlW(66139)、 anghuo(841)、 whdsyes(255)、 longxia(60904)、 囫囵吞澡(58054)

下面展示总排行榜的前3名(T1-T3)和今年排行榜的前3名的朋友(C1-C3)……更多信息,请查看:总排行榜今年排行榜

T1. fhqu1462(969)、 T2. lwlpluto(14232)、 T3. 1367926921(962)  |  C1. anghuo(147)、 C2. fdisker(27945)、 C3. 囫囵吞澡(58054)



快速回复 返回顶部 返回列表