文章分类 -  AS3学习系列

上一页 1 2 3 4 5 6 7 8 ··· 16 下一页
摘要:1.关于MovieClip和Sprite的鼠标事件,当不需要鼠标事件的时候将mouseEnabled和mouseChildren设为false. 不断的检测鼠标交互事件会消耗CPU,尤其是大量交互对象重叠的情况。2.对于执行时间太长的非动画内容,优先选择计时器,而不是 Event.ENTER_FRAME 事件。3.在 enterFrame 事件或 Timer 处理函数中,尽量减少对可导致重绘屏幕的显示对象外观的更改。4.尽量减少补间动画,以节省更多的CPU处理。把MC给stop5.场景里放入好多的子可视对象时,鼠标的滑动会导致cpu的狂飙;原因主要在于fp内部在不停的遍历可视对象.你可能会用过 阅读全文
posted @ 2011-09-15 16:04 rob_2010 阅读(353) 评论(0) 推荐(0) 编辑
摘要:mc.scaleX*=-1;或者mc.rotationY=-180;这两种方法都行,但有些细微的差别。如果MC里面是张位图,在SWF里面右键菜单里面点放大,会发现用scaleX水平翻转和没有翻转的MC放大之后,位图会有马赛克现象,很正常,但用rotationY水平翻转的MC放大后,位图竟然没有出现明显的马赛克现象,点了几次放大之后,才看得出来一点马赛克现象。如果MC里面是一些矢量的比较精细的图形,比如矢量的人物图形。用rotationY水平翻转之后,会发现在SWF里面看上去会有些模糊,而用scaleX水平翻转的就没有这种现象,一切正常。 阅读全文
posted @ 2011-09-13 17:53 rob_2010 阅读(536) 评论(0) 推荐(0) 编辑
摘要:在讲如何在flex当中导入swc之前,先讲讲什么swc吧。swc是flashIDE当中导出库的一种文件格式,其构成为swf+xml。假如,你不太熟悉怎么制作flash的话,那么你可以先去熟悉一下flashIDE制作swf的资料。而,我现在只说说如何成功在flash当中导出swc。 在flash当中如果要导出swc之前,需要给你flash库当中的元件制作一个导出链接。方法是,选中你要导出的元件,右键,选择属性。然后勾选,为ActionScript导出和在第1帧中导出选项。类名为flex中要生成的类名,推荐默认为元件的名称,注意大写第一个字母。 制作好导出链接之后,接下来的就是如何来导出swc文件 阅读全文
posted @ 2011-09-08 15:45 rob_2010 阅读(928) 评论(0) 推荐(0) 编辑
摘要:很多java开发者用惯了eclipse的代码提示功能,都会提示flash builder的代码提示功能太弱好在flash builder功能得到了部分提升,但是代码提示功能需要手工开启,默认是不开启的开启方式如下图再加上sourcemate3 for flash builder4.5 您定会如虎添翼,我个人别的功能尚为用到,只是用到自动生成方法的功能觉得挺赞的sourcemate安装方式也很简单,打开FlashBuilder,选择Install a new software,然后输入插件的地址:http://updates.elementriver.com/sourcemate/v3安装后,修 阅读全文
posted @ 2011-09-08 14:53 rob_2010 阅读(327) 评论(0) 推荐(0) 编辑
摘要:Adobe官方并没有"泛型数组"的叫法,这是我自己对Vector的叫法(有点标题党),不过Vector在使用上确实跟c#中的泛型数组有些相似之处。我们知道:ActionScript3.0中的Array数组可以存放多种类型,甚至在同一个Array数组中,可以同时存入String,Object,Number...,但其实我们在实际开发中,通常一个数组中所保存的元素类型都是一致的,为了改进这种情况下的效率,AS3.0新增了一个Vector类。它强制要求数组中的每个元素都必须是同样的类型,从而省去了“装箱”、“拆箱”之类的操作,提高了性能。下面这一段测试代码演示了Vector与Ar 阅读全文
posted @ 2011-09-01 17:47 rob_2010 阅读(375) 评论(0) 推荐(0) 编辑
摘要:一个array(数组)就像是把一套变量组织在一起的容器。单个数组可以含有许多不同的值。你可以储存和取得数组中的单个值(也就是数组elements(元素))。你也可以通过直接操作数组变量来成组地使用其值。最常见的是有序数组。你可以凭某个索引号从中获取值。Action Script3包括了用于索引数组的两个类。Array 类:一个可以包含各种值类型的索引数组,其包容度甚至可以允许你在同一个数组里混合各种值类型。Vector类:也是索引数组。其元素必须都为同一个类的实例。Vector类适用于 Flash Player 10和之后的版本。如果你需要存储一系列具有相同数据类型的值,与Array类相比,V 阅读全文
posted @ 2011-09-01 17:45 rob_2010 阅读(408) 评论(0) 推荐(0) 编辑
摘要:package{import flash.display.Sprite;public class demo1 extends Sprite{/**Array索引数组array*/private var array:Array;/**Vector 索引数组array2*/private var array2:Vector.<int>;/**Vector 索引数组array3*/private var array3:Vector.<int>;/**Vector 索引数组array4*/private var array4:Vector.<int>;/**Vect 阅读全文
posted @ 2011-09-01 17:39 rob_2010 阅读(288) 评论(0) 推荐(0) 编辑
摘要:Math.round()方法:Math.round()可以四舍五入对数字取整12trace(Math.round(39.88)); //输出40trace(Math.round(58.33)); //输出58Math.floor()方法:Math.floor()可以向下取整12trace(Math.floor(39.88)); //输出39trace(Math.floor(58.33)); //输出58Math.ceil()方法:Math.ceil()可以向上取整12trace(Math.ceil(39.88)); //输出40trace(Math.ceil(58.33)); //输出59to 阅读全文
posted @ 2011-08-20 17:55 rob_2010 阅读(645) 评论(0) 推荐(0) 编辑
摘要:就不传附件了 免得消耗童鞋们的银子 直接上代码了~(代码没啥技术含量 就不加注释了)/*声音管理*@by 古卧猫王 2011.2.18*/package{ import flash.events.Event; import flash.events.EventDispatcher; import flash.media.Sound; import flash.media.SoundChannel; import flash.media.SoundMixer; import flash.media.SoundTransform; import flash.net.URLLoader; impor 阅读全文
posted @ 2011-08-14 17:33 rob_2010 阅读(318) 评论(0) 推荐(0) 编辑
摘要:基础三角函数的计算:角的正弦值 = 对边 / 斜边角的余弦值 = 邻边 / 斜边角的正切值 = 对边 / 邻边弧度转换为角度以及角度转换为弧度:弧度 = 角度 * Math.PI / 180角度 = 弧度 * 180 / Math.PI向鼠标(或者任何一个点)旋转:// 用要旋转到的 x, y 坐标替换 mouseX, mouseYdx = mouseX - sprite.x;dy = mouseY - sprite.y;sprite.rotation = Math.atan2(dy, dx) * 180 / Math.PI;创建波形:// 将 x, y 或其它属性赋值给 Sprite 影片或 阅读全文
posted @ 2011-08-11 13:21 rob_2010 阅读(226) 评论(0) 推荐(0) 编辑
摘要:8款bitmap操作类Bitmap在我们的开发中使用率很高,这意味着掌握它很重要.实际上,有很多现成的类可以帮助我们更简单的操作Bitmap对象。接下来我们收集了8个关于Bitmap的类供大家参考,希望大家会喜欢。AS3 Scale9 Bitmap一个创建9宫的类。AS3 bitmap mosaic class很有趣的类,将图片进行马赛克处理Active Window Blur这个有点像flex中Alert后模糊的背景。Animated Bitmap Class这是一个动画播放类CollisionDetection Class这是一个用来检测碰撞的类DistortImage Class用来进行 阅读全文
posted @ 2011-08-06 17:38 rob_2010 阅读(202) 评论(0) 推荐(0) 编辑
摘要:基本三角函数的计算:角的正弦值 = 对边 / 斜边角的余弦值 = 邻边 / 斜边角的正切值 = 对边 / 邻边 角度制与弧度制的相互转换:弧度 = 角度 * Math.PI / 180角度 = 弧度 * 180 / Math.PI计算两点间距离:dx = x2 – x1;dy = y2 – y1;dist = Math.sqrt(dx*dx + dy*dy);缓动公式:sprite.x += (targetX - sprite.x) * easing;//easing为缓动系数变量sprite.y += (targetY - sprite.y) * easing;弹性公式:vx += (tar 阅读全文
posted @ 2011-07-26 20:28 rob_2010 阅读(1173) 评论(0) 推荐(1) 编辑
摘要:import flash.display.Stage;import flash.display.StageAlign;import flash.display.StageScaleMode;import flash.events.Event;stage.align = StageAlign.TOP_LEFT;stage.scaleMode = StageScaleMode.NO_SCALE;stage.frameRate = 24;stage.addEventListener(Event.RESIZE,resize_handler);function resize_handler(e:Even 阅读全文
posted @ 2011-07-20 15:04 rob_2010 阅读(296) 评论(0) 推荐(0) 编辑
摘要:在团队协作的大型项目中框架的使用尤为重要。作为项目开发中非常重要的辅助工具,她不仅可以分工、合作和统一代码风格,也可以大幅提高程序员的专业素质和团队精神。 我用过几种框架,推荐一下: 1. PureMVC,顾名思义,纯mvc。在多种语言(java, actionscript3, python, js…)中都有她的身影。她以Mediater(中介)作为View和Model的桥梁,承担着大部分业务逻辑的处理,记住,无处不Mediater,这是PureMVC的显著特点。 2. Robotlegs,机器人腿,非常灵便。puremvc加上依赖注入,你可以完全使用,也可以部分使用。上半年天地会的一次聚会中 阅读全文
posted @ 2011-07-20 10:39 rob_2010 阅读(264) 评论(0) 推荐(0) 编辑
摘要:基础三角函数的计算:角的正弦值 = 对边 / 斜边角的余弦值 = 邻边 / 斜边角的正切值 = 对边 / 邻边弧度转换为角度以及角度转换为弧度:弧度 = 角度 * Math.PI / 180角度 = 弧度 * 180 / Math.PI向鼠标(或者任何一个点)旋转:// 用要旋转到的 x, y 坐标替换 mouseX, mouseYdx = mouseX - sprite.x;dy = mouseY - sprite.y;sprite.rotation = Math.atan2(dy, dx) * 180 / Math.PI;创建波形:// 将 x, y 或其它属性赋值给 Sprite 影片或 阅读全文
posted @ 2011-07-19 20:00 rob_2010 阅读(193) 评论(0) 推荐(0) 编辑
摘要:var external_txt:TextField = new TextField();//创建显示文本的文本框var externalReq:URLRequest = new URLRequest("external.txt");var externalLoad:URLLoader = new URLLoader();externalLoad.load(externalReq);externalLoad.addEventListener(Event.COMPLETE, textReady);up_btn.addEventListener(MouseEvent.CLICK 阅读全文
posted @ 2011-07-16 14:17 rob_2010 阅读(589) 评论(0) 推荐(0) 编辑
摘要:var testArr:Array = new Array();for(var i:Number = 0; i < 1000000; i++){testArr.push(i);}以前的 for 和 for … in 以及新的 for each … in 循环:1//for 260毫秒2var len:Number = testArr.length;3for(var j:Number = 0; j < len; j++)4{5testArr[j]++;6}1//for ... in 8000毫秒2for(var k:String in testArr)3{4testArr[k]++; 阅读全文
posted @ 2011-07-05 11:44 rob_2010 阅读(235) 评论(0) 推荐(0) 编辑
摘要:游戏中定时器的设计0. 前言在游戏开发中计时器/定时器是必须的,而且会在多处用到,如吃药补血每秒回10点且持续1分钟、玩家从一点到达另一点的过程需要多少时间。下面是定时器在七雄争霸中的几个应用场景,直接上图:场景1:建筑升级时间场景2:建筑升级时间场景3:科技研究时间类似的场景还有很多,就不一一列举了。但有一点可以肯定的就是,不可能每个地方都去new一个定时器各自管理,这样会消耗大量CPU和内存,从而导致游戏不流畅,画面卡卡的。所有一般游戏中都只维护一个全局的定时器,这也是本文的主要内容——ActionScript3页游开发中如何设计全局的定时器。1. 定时器的几种设计下面介绍如何设计游戏中全 阅读全文
posted @ 2011-07-04 14:34 rob_2010 阅读(265) 评论(0) 推荐(0) 编辑
摘要:抽奖转盘0. 前言每逢过年过节各大游戏都会搞些小活动来刺激、吸引、黏住玩家,比如转盘抽奖活动,有的公司年底也喜欢搞抽奖活动。本文介绍如何设计一个flash转盘抽奖程序。先上效果,看如下Flash抽奖转盘:注:转盘看上去比较丑,使出了吃奶劲才弄出这效果,毕竟不是专业美工人员,大家凑合着看。觉得还行鼓鼓掌,按按推荐;觉得不行,也不要拍砖,无视就行了☺。预备知识:事件机制(可以参考走在网页游戏开发的路上(五))、flash动画原理(可以参考走在网页游戏开发的路上(六))、AS3文档类等。1. 抽奖流程其实我们的Flash只是一个显示作用,要转到哪个位置(中哪个奖品)是后台来完成的。而且每个奖品的概率 阅读全文
posted @ 2011-07-04 14:31 rob_2010 阅读(1019) 评论(0) 推荐(0) 编辑
摘要:Flash动画原理——动画是将静止的画面变为动态的艺术.实现由静止到动态,主要是靠人眼的视觉残留效应.利用人的这种视觉生理特性可制作出具有高度想象力和表现力的动画影片.0. 前言像所有的动画显示一样,Flash的动画原理也是通过不断的刷新屏幕,利用每次屏幕上显示对象位置的不同、大小色彩的变化等产生动画效果。动画编程的关键是一定要有变化,而且该变化需要在一定时间内来完成(以达到欺骗人眼,使分解的画面连续起来,达到运动的效果)。Flash中使用帧频来控制每秒钟刷新屏幕的次数,通过使用的帧频的范围在12~60帧每秒,推荐使用的是24帧每秒这样的一个速度。ActionScript 3.0的动画编程也是 阅读全文
posted @ 2011-07-03 17:41 rob_2010 阅读(233) 评论(0) 推荐(0) 编辑

上一页 1 2 3 4 5 6 7 8 ··· 16 下一页