摘要:metadata就是元数据反应一个类本质的属性可以通过describeType(obj)来得到反应该对象的xml要自定义元数据,如[MyMatedata()]package { public class MyClass extends Object { [MyMatedata(name="ha",name2="haha2")] public var a:String; public function MyClass() { super(); } public function getA():void{ trace("dd"); } }
阅读全文
随笔分类 - Flash/Flex/Air
摘要:近期在面试时候遇到这么一道题目:比较两个存在大量元素的数组,抽离出他们的相同项。当时我脑中想到的办法是把一个数组中的元素逐个地去另一个数组中查找,但是此办法效率不高,下面给出测试代码,arry1和arry2各有一万个元素:private function loopCompare():void{ var startTime:int = getTimer(); var commonValue:Array = []; var currentValue:int; var index:int; for(var i:int=0; i<elementCount; i++) { currentValue
阅读全文
摘要:ATF(Adobe Texture Format)是一种能提供最佳压缩效果的文件格式。ATF 文件主要是一个存储有损纹理数据(lossy texture data)的文件容器。它主要使用了两种类似技术:JPEG-XR1 压缩技术和基于块的压缩技术(简称块压缩技术),来实现它的有损压缩。ATF 为 GPU 优化贴图,支持压缩贴图格式ATF,减少在使用中显存的总量。这点对于移动设备特别重要。ATF 格式全称 Adobe Texture Format,说白了,就是奥多比专用贴图格式。这里大家注意到没有?Texture 这个词是在 GPU 加速的字典里才出现的。普通的图只能叫BitmapData 而到
阅读全文
摘要:Flex 开发工作中, 组件的开发是比不可少的环节, 在你的自定义组件中合理地应用元标签可以使组件更容易, 更方便, 更友好地被引入到应用中.你可以为MXML和ActionScript文件插入元标签,以便为Flex编译器提供信息。可执行代码中的元标签不会被编译,但会为控制如何编译元标签所标识的代码提供信息。下表列出了 Flex 中可以应用于 ActionScript 类的元标签.标签描述[ArrayElementType]在数组中定义所有允许的数据类型。[Bindable]声明一个属性可以在代码中使用数据绑定表达式。[DefaultProperty]定义组件在MXML中使用时的默认属性的名称。
阅读全文
摘要:实现flash+php图片上传,两者各有分工:flash负责打开browser,浏览我的电脑;这里我们需要的flash方法有:1.FileReference或者FileReferenceList类,负责浏览我的电脑,两者区别是,前者每次可以选择一个文件,而后者可以每次选择多个文件;包 flash.net类 public class FileReference继承 FileReference -> EventDispatcher -> Object语言版本 :ActionScript 3.0Player 版本 :Flash Player 9FileReference 类提供了在用户计
阅读全文
摘要:首先感谢activetuts的帮助。对于一个完整的游戏来说,loading是比不可少的,如果游戏要加载10秒中,我相信没有人愿意在这10秒钟都看着空白的舞台。但是我在单独的SWF文件中添加loading总是会遇到一些莫名其妙的问题,它总是到加载了80%之后才开始动。试过了各种办法都是失败,如果你也和我有相同的困扰,那就来分享我的经验吧。你可能会说了,我可以用一个体积小的SWF去加载另外一个体积庞大swf啊,是的,没错,不过有时候,我们的游戏别无选择的只能做出一个swf文件,比如老板苦逼时,比如上传到一些flash游戏网站时等等。注意:本教程适用于Flash CS4以上版本。加载的内容谈到加载了
阅读全文
摘要:AS3代码效率优化中以帧频为重要部分。帧速的调节是很灵活的。帧速较高意味着每秒钟执行的循环、代码操作会比较多,帧速低则是减小每秒钟相应的循环、代码的执行次数。有时候,降低帧速有助于提高回放视频的流畅度。就算并没有很多的代码,帧速的高低依然会直接影响到CPU使用率,这在Mac上尤其明显。帧速可以动态设置,如下:stage.frameRate = 20;优化你的优化行为。优化通常都需要时间,并且大多会牺牲代码的清晰度。请将注意力集中在loops、enterFrames和timers当中去。局部优化相对于整体优化,需要更少的优化计划,并且难度较低。一个优化例子是Adobe kuler。原始版本执行代
阅读全文
摘要:由于篇幅过长,请允许我偷个懒吧^_^ 弄了pdf 相对好一些pdf下载最近在看GC(垃圾收集器)相关的东西,发现了几篇好文,虽然比较老了(06年的),但是很值得看;翻译了一下,这里的GC(垃圾收集器)主要是说flash player9的。偶英文比较糟糕,有非常少量的语句没有翻译,因为偶看不懂囧大家多担待,欢迎拍板砖^_^本文大部分是来自:http://www.gskinner.com/blog/archives/2006/06/as3_resource_ma.html;其中part1的译文来自:http://bbs.airia.cn/ActionScript/thread-3656-1-1.a
阅读全文
摘要:作为一个游戏开发者,我想大家或多或少的都从一些老鸟那里听到过,不能用系统自带的Timer的说法。不论是Windows编程中的SetTimer,还是AS3中的Timer,都不适合用于游戏编程中,建议少用,或者干脆不用。 纠其原因,最关键的还是因为Timer的不准确性,由于Timer事件优先级的原因,很难保证Timer会准时的干你想干的事情。而游戏里面大部分情况下对时间的准确性是有很大的要求的,有时间需要精确到ms,甚至更低。比如在赛车游戏中,时间就是玩家最关注的点之一,不能有半点马虎。对于玩家来说,时间就是金钱,时间就是生命啊。。。不过幸运的是,我们有 getTimer 这个方法,该方法返回 F
阅读全文
摘要:蛮欣赏Flixel的哲学,学习并做下笔记,目标:基于Flixel组建团队的快速开发游戏框架,达到高复用模块、拥有方便移植的单独的渲染对象、模块独立,方便合并的目的Flixel引擎介绍官网地址:http://flixel.orgFlixel是一个基于MIT开源协议的AS3游戏位图引擎Flixel的设计是主要封装了Flash中和游戏相关的大部分内容,重新提供了一套Flixel接口,方便程序的开发,提高了代码的统一,提高了代码的可读性。此外还提供了动画、运动、2D碰撞、tilemap、场景管理等扩展功能,很适合2D横板类游戏的开发Flixel是非常灵活的,继承关系不复杂,接口清晰简单,它的一个类专注
阅读全文
摘要:Flixel----功能全面的2D点阵游戏开发引擎Flixel Power Tools----Flixel增强工具包FlashPunk----FlashPunk 是一款为开发2D Flash游戏而设计的免费的ActionScript 3库。 它为你提供了一个快速的、简洁的框架,以便你能够在其中制作你的游戏原型并且开发游戏。PushButton----一个结合Box2D物理引擎而且支持多人游戏的2D引擎Platform Starter Kit----Platformer Starter Kit是一款为 PushButton Engine开发的全功能的工具箱,它包括创建你自己的Flash平台游戏所
阅读全文
摘要:一.在创作时更改组件外观Flash CS3组件是基于 placeStateFLA 的用户界面组件,使得用户可以方便的在创作时进行自定义.当一个组件被添加到舞台上时,就可以直接双击组件,进入组件外观的编辑帧,编辑帧中是组件所使用的所有外观的列表,用户可以通过双击直接修改相应外观,也可以进入 库->Component Assets->XXSkins文件夹(XX是组件名),这里就是组件相应部分的外观.内置组件的所有外观都是一个MovieClip类的子类,组件使用新的 new 运算符方法在运行时载入外观,实现外观的更改.所有外观都开启了九切片缩放,使得组件在进行缩放时,外观不会产生变形.当
阅读全文
摘要:学习FlashCS3的内置组件(一) 组件概述Flash CS3的组件,使用的是全新的架构,使得功能上与v2版的组件有一些不同."组件"是带有参数的影片剪辑,在 Flash 中进行创作时或在运行时,可以使用这些参数以及 Actionscrīpt? 方法,属性和事件自定义此组件.设计这些组件的目的是为了让开发人员重复使用和共享代码,以及封装复杂功能,使设计人员无需编写 Actionscrīpt 就能够使用和自定义这些功能.一.Flash CS3组件的优点:1.使用全新的组件架构,使得组件的载入与运行更加迅速,组件的大小也大大减少.2.基于 placeStateFLA 的用户界
阅读全文
摘要:在上一章我们已经预告过本章的内容,有没有?我将在本章为大家带来如何发扬我们民族“勤俭节约”的美德的方法,我称之为“华丽终极超强死亡缓存策略”,小S present,here we go~!缓存应用域 在上一章贫道已经提到过,最好把要用到的素材全部放到一个swf里面去,这样既可以压缩素材容量又可以减免在swf中使用时要加载多个素材,发起多个HTTP连接而增加的等待时间。那么在此章贫道将为列位施主展示一下具体的操作方式,让列位施主“理论联系实际”,做个爱学习的好孩子。 首先自然是打开Flash CS工具,然后把你需要用到的素材扔到库里面去然后设置它们的属性,让它们导出为ActionScript..
阅读全文
摘要:我们在flash加载外部swf,jpg,png,gif时,经常出现安全沙箱错误,通过设置文件所在域的安全策略文件可以解决这个问题。但是有时我们需要加载我们没权限设置安全策略文件的域时,用下面这个方面可以帮你解决:1、首先使用一个loader加载一个外部SWF,监听loader.contentLoaderInfo的Event.COMPLETE事件;2、加载成功后,先暂时不使用这个加载成功的loader,而是另写一个loader2,使用loader2.loadBytes()来加载第一个loader的contentLoaderInfo.bytes,并监听Loader.contentLoaderInf
阅读全文
摘要:本章我军将一起来看几个可能会被忽略的资源压缩问题。压缩XML XML是Flash中经常用到的数据提供源,那么当我们的游戏或者应用越来越大时,XML配置文件也会跟着变大,这将会占用我们很多的加载时间。那么你可能不知道我们可以把XML文件压缩成二进制数据然后保存起来,这样将会为你节省50%(保守估计)以上的空间。 其实早在09年就有人发现了这个秘密并在博客中详细地写了出来,在国内也有人翻译过了:http://bbs.9ria.com/viewthread.php?tid=40877只是那时那没有多少人做大型Flash应用开发,所以没引起多少重视,我们看到上面贴出的那个帖子回帖者寥寥无几。但是这确.
阅读全文
摘要:比起其他语言,Flash ActionScript3的上手过程要简单许多,对于很多人我想大多都是被这一点吸引进了咱们的圈子,很快就能看到很cool的效果,很好玩。不过实现一个效果容易,想对一个不论是简单还是复杂的应用做到运行时一直保持高效率地运转就是一个比较考验Flash开发人员的事情了。 “为什么我的应用越运行越卡?”这个问题有非常多的原因啦,我们一个个来看,对于效率优化也是一个很长的话题,这就是为什么我的标题里要写上一个一,以后想到一点加一点吧,希望对列位爱卿有所帮助,come on,let`s go! Enjoy!●避免创建过多实例 这个问题是很基础的一点,一般新手比较容易犯,有一些..
阅读全文
摘要:Flex 开发工作中, 组件的开发是比不可少的环节, 在你的自定义组件中合理地应用元标签可以使组件更容易, 更方便, 更友好地被引入到应用中.你可以为MXML和ActionScript文件插入元标签,以便为Flex编译器提供信息。可执行代码中的元标签不会被编译,但会为控制如何编译元标签所标识的代码提供信息。下表列出了 Flex 中可以应用于 ActionScript 类的元标签.标签 描述[ArrayElementType] 在数组中定义所有允许的数据类型。[Bindable] 声明一个属性可以在代码中使用数据绑定表达式。[DefaultProperty] 定义...
阅读全文
摘要:项目地址:http://code.google.com/p/ghostcat/SWC下载:http://ghostcat.googlecode.com/s ... at/bin/GhostCat.swc参考:http://ghostcat.googlecode.com/s ... at/asdoc-output.chm天地会wiki的地址:http://wiki.9ria.com/index.php/GhostCat更新四篇教程:GMovieClipBasehttp://code.google.com/p/ghostcat/wiki/GMovieClipBaseTilehttp://code.
阅读全文
摘要:在“用户访问路径图”的项目中,需要从服务器远程加载用户访问的数据生成地图。为了告诉用户当前加载的进度,需要显示进度条。然而实际上进度条无法正常显示,经过检查,发现ProgressEvent.bytesTotal始终为零,搜索了一下,没找到理想答案。最后在开发者群里求得了答案:(原文)正常情况下载时可以获取文件大小,flash也是凭借这个来填充ProgressEvent.bytesTotal属性的。但是在下载php生成的动态内容的时候,生成的内容体积无法明确,所以下载时也就无法获得bytesTotal的大小了。(以上内容属猜测)文中告诉我们,对于PHP程序,可以使用ob_start(); ob_
阅读全文

浙公网安备 33010602011771号