原理:
创建一个截取当前场景的截图
然后对截图进行bitmap处理
加上tween。
优点:无需任何图片,特效!适用于任何场景!

//1.卷帘特效
//2.左右切换移动
//3.直接翻
//4.旋转掉落
//5.随机一种
 
调用:ScreenMovies.MovieStart(5);

class ScreenMovies {
//当前舞台
static MovieStart(_txnums):void {
//创建一个截图Bitmap
let taget = MtwGame.Instance.stage;
let w = MtwGame.Instance.stage.stageWidth;
let h = MtwGame.Instance.stage.stageHeight;

//新建一个group
let loadTxGrp = new eui.Group();
loadTxGrp.width = w;
loadTxGrp.height = h;
taget.addChild(loadTxGrp)

//循环创建多个截图bitmap 这里num自由设置
let tx1Number = 40;

//每个横着的数量
let Xnumber = 5;

//高数量自动计算
let Ynumber = tx1Number / Xnumber;

if (_txnums == 5) {
_txnums = Math.ceil(Math.random() * 4);
}
for (let i = 0; i < tx1Number; i++) {
//计算每个的XY及宽高
let _mcW = w / Xnumber;
let _mcH = h / Ynumber;
let _mcX = i % Xnumber * _mcW;
let _mcY = Math.floor(i / Xnumber) * _mcH;

let renderTexture: egret.RenderTexture = new egret.RenderTexture();
renderTexture.drawToTexture(taget, new egret.Rectangle(_mcX, _mcY, _mcW, _mcH));
let bmp = new egret.Bitmap;
bmp.texture = renderTexture;
bmp.anchorOffsetX = _mcW / 2
bmp.anchorOffsetY = _mcH / 2
bmp.x = _mcX + _mcW / 2;
bmp.y = _mcY + _mcH / 2;

loadTxGrp.addChild(bmp);

let tw = egret.Tween.get(bmp);
//开始特效
switch (_txnums) {
case 1:
tw.to({ scaleX: 0, scaleY: 0, alpha: 0, rotation: 359 }, 800, egret.Ease.circIn).call(onComplete, this);
break;
case 2:
let my_x = -w
if (!(i % 2)) {
my_x = w * 2
}
tw.to({ x: my_x, alpha: 0 }, 800, egret.Ease.circIn).call(onComplete, this);
break;
case 3:
tw.to({ scaleX: 0.2, scaleY: 1, alpha: 0, blurFliter: 0 }, 800, egret.Ease.backInOut).call(onComplete, this);
break;
case 4:
tw.to({ alpha: 0}, 900, egret.Ease.circIn).call(onComplete, this)
break;
default:
tw.to({ scaleX: 1, scaleY: 0, alpha: 0 }, 800, egret.Ease.circIn).call(onComplete, this);
}
}
let upNumber = 0;
function onComplete(evt: Comment) {
upNumber++
if (upNumber == tx1Number) {
taget.removeChild(loadTxGrp)
}
}
}
}

---------原文用的是AS3,我改成了TS,来自egret社区的sjavene

egret中场景跳转的动画的更多相关文章

  1. DragonBones龙骨发布后在Egret中的位置

    DragonBones发布后的动画,加载到Egret中场景中,原点的位置在哪呢? DragonBones中的图片位置 导出 加载到Egret中.可见DragonBones中的图片位置原点左下方(0,0 ...

  2. Qt Creator中的3D绘图及动画教程(参照NeHe)

    Qt Creator中的3D绘图及动画教程(参照NeHe) http://blog.csdn.net/cly116/article/details/47184729 刚刚学习了Qt Creator,发 ...

  3. Unity 中场景切换

    Unity游戏开发中,单个Scene解决所有问题似乎不可能,那么多个Scene之间的切换是必然存在.如果仅仅是切换,似乎什么都好说,但是在场景比较大的时候不想让玩家等待加载或者说场景与场景之间想通过一 ...

  4. 在egret中使用protobuf

    原文章删除,重新使用MarkDown排版 在H5游戏领域,对于服务端与客户端的通信协议有一个选择,那就是使用protobuf.js.对于那些直接使用JavaScript开发的引擎而言,protobuf ...

  5. [UWP小白日记-9]页面跳转过度动画(二)

    又打算动手写了 [UWP小白日记-6]页面跳转过度动画 上次写的,这次随着学习的进度使用新的玩法. 最近在搞GIT的学习,结果把好好的项目玩坏,都不知道当时是怎么想的拿在写的APP来玩GIT,害我重写 ...

  6. ionic页面间跳转的动画实现

    1. 在<ion-view>标签中加入: nav-direction="back"或nav-direction="forward" 2.用$stat ...

  7. 教你实现类似于格瓦拉启动页中的放大转场动画(OC&Swift)

    教你实现类似于格瓦拉启动页中的放大转场动画(OC&Swift) 一.前言 用过格瓦拉电影,或者其他app可能都知道,一种点击按钮用放大效果实现转场的动画现在很流行,效果大致如下 在iOS中,在 ...

  8. C# MVC 用户登录状态判断 【C#】list 去重(转载) js 日期格式转换(转载) C#日期转换(转载) Nullable<System.DateTime>日期格式转换 (转载) Asp.Net MVC中Action跳转(转载)

    C# MVC 用户登录状态判断   来源:https://www.cnblogs.com/cherryzhou/p/4978342.html 在Filters文件夹下添加一个类Authenticati ...

  9. Android中四种补间动画的使用示例(附代码下载)

    场景 Android中四种补间动画. 透明度渐变动画 旋转动画 缩放动画 平移动画 注: 博客: https://blog.csdn.net/badao_liumang_qizhi关注公众号 霸道的程 ...

随机推荐

  1. 王之泰201771010131《面向对象程序设计(java)》第十五周学习总结

    第一部分:理论知识学习部分 第13 章 部署应用程序 1.jar文件 a) java 程序的打包:编译完成后,员 将.class 文件压缩打包为 .jar 文件后, GUI 界面 程序就可以直接双击图 ...

  2. MySQL explain执行计划优化

    https://www.linuxidc.com/Linux/2016-04/129965.htm

  3. Django使用redis实现缓存

    实现缓存的方式,有多种:本地内存缓存,数据库缓存,文件系统缓存.这里介绍使用Redis数据库进行缓存. 配置 CACHES = { "default": { "BACKE ...

  4. mybatis原理分析学习记录,mybatis动态sql学习记录

    以下个人学习笔记,仅供参考,欢迎指正. MyBatis 是支持定制化 SQL.存储过程以及高级映射的持久层框架,其主要就完成2件事情: 封装JDBC操作 利用反射打通Java类与SQL语句之间的相互转 ...

  5. Java语言之循环基础;各个语句的区别

    FOR: WHILE DO WHILE break 与 continue的区别 break直接中断语句跳出循环,continue跳出当前循环,后面会继续执行

  6. Complex类的设计与改进

    Complex类 源码 #include <cmath> #include <iomanip> #include <iostream> #include <s ...

  7. 承接微信小程序外包 H5外包就找北京动点软件开发团队

    承接小程序外包 微信小程序外包 H5外包 就找北京动点软件 长年承接微信小程序.微信公众号开发 全职的H5开发团队,开发过几十款微信小程序公众号案例 欢迎来电咨询,索取案例! QQ:372900288 ...

  8. vue实现实时监听文本框内容的变化(最后一种为原生js)

    一.用watch方法监听这个变量. <!DOCTYPE html> <html> <head> <meta charset="utf-8" ...

  9. python小技巧---打印出不同颜色的输出

    在调试代码时打印常常一种颜色,找个东西真的是很难,在一次听金角大王的视频中听到了个方法,也是喀什使用了,本来不打算做记录了,可是稍微有几天不用,还得翻之前的代码,找着也是听麻烦的,现在在这里做个记录 ...

  10. Unity --- 设置选择的图片的格式

    static void Setting(string assetPath, int maxSize, TextureImporterFormat androidFormat, TextureImpor ...