摘要:
是的,没错,就是用vs2010来开发flex/flash !有图有真相:1、在vs2010中创建as3/air/flex项目2、ide环境中的as代码自动提示对于不想安装flash cs/flash builder/flash developer,又想体验一下actionscript编程的.net程序员来说,这无疑是一个好消息!言归正传:1、先到http://opensource.adobe.co... 阅读全文
摘要:
puremvc是一个可应用于多种语言、多种平台的mvc框架。根据官网上的描述,现在已经支持下列语言:官方也推出了最佳实践的中文文档,当然,园子里也有兄弟说它烂的 :)跟asp.net mvc框架有所不同,在asp.net mvc中,一个http请求过来,controller会自动去取得数据,最终转化为model,然后选取一个view进行呈现,同时把model传到view中,一切还算比较简单。然而p... 阅读全文
摘要:
单件(singleton)模式在c#中是最容易实现的模式,其主要用意就在于限制使用者用new来创建多个实例。但在as3中,构造函数必须是public的(语法本身要求的),而且也不能在构造函数中抛出异常(编译可通过,但是逻辑行不通),因为这样相当于把创建实例的路子完全切断了,一个实例也得不到!错误代码:怎样即能创建实例,又阻止使用者调用构造函数呢?这里要用到as3的一个特性:默认情况下,一个as文件... 阅读全文
摘要:
Bēniaǒk兄弟的Flex与.NET互操作(六):Flex和.NET协同开发利器FluorineFx是基于vs2008 + flex builder3的,不知道什么原因,我在vs2010 + flash builder4 上试了几次,总是不成功(也许晚上应该自我检讨下人品鸟),于是有了这一篇东东,算是对 vs2010/flash builder4环境下的一个补充吧.net的服务端依照参照silv... 阅读全文
摘要:
前几天写过一篇"flash开发中如何实现界面代码分离",评论中小-G同学给出了更好的建议:swc ,今天试用了一下,果然比较embed swf来得更爽!同时对小-G同学表示感谢!就拿视频播放器的控制来说吧:通常我们会把一些常规的控制按钮,利用Flash CS的IDE界面做好,放到库中如果按embed swf的方法,需要手动用代码创建每种按钮的实例,然后一个个去控制位置,然后addChild;其实考... 阅读全文
摘要:
Silverlight从其它系统获取外部数据的常规途径无非下面2种:1、直接远程加载文本或xml文件 (直接请求ashx/aspx,然后在ashx/aspx上输出信息也可以归入这一类)2、通过wcf/webService取得数据(当然,sl跟本机的sl之间也能交换数据,但这个用处有限,此外通过socket也能拿到数据,但是socket要玩好并不容易,难度系数有点高,本文不做讨论)而返回的数据格式,... 阅读全文
摘要:
在前一部分的最后,我们给出了一个寻路的示例,在大多数情况下,运行还算良好,但是有一个小问题,如下图:很明显,障碍物已经把路堵死了,但是小球仍然穿过对角线跑了出来!问题在哪里:我们先回顾一下AStar.as中用于判断的if语句在这个判断中,并没有规定说不允许走对象线。来看看如何修正:在以node为中心考查四周节点时,如果遇到水平和垂直方向都是障碍物时,既使对角节点是可穿越的普通节点,也不能通过。所以... 阅读全文
摘要:
上一部分提到了节点(Node),代价(Cost),估价公式等基本概念,有了这些知识铺垫 就可以正式开启寻路之旅了!如上图,这是一个5行8列的网格,黄色节点为起点,红色节点为终点,黑色节点为障碍物(节点)。寻路过程可以这样考虑:1、先以起点为中心,向周边扩张一圈,同时计算出周边节点(最多有8个)的单步代价g(即从中心点移动到相邻格子的代价:水平或垂直为1,对角为1.4);然后再计算周边每个节点到终点的估算代价h(利用上一部分最后讲到的估算公式),从而得出周围每个节点的总代价 f = g+h2、同时准备二个数组,一个称为开放列表(open),一个称为封闭列表(closed),把周边节点放入open 阅读全文
摘要:
一提到“A*算法”,可能很多人都有"如雷贯耳"的感觉。用最白话的语言来讲:把游戏中的某个角色放在一个网格环境中,并给定一个目标点和一些障碍物,如何让角色快速“绕过障碍物”找出通往目标点的路径。(如下图)在寻路过程中,角色总是不停从一个格子移动到另一个相邻的格子,如果单纯从距离上讲,移动到与自身斜对角的格子走的距离要长一些,而移动到与自身水平或垂直方面平行的格子,则要近一些。为了描述这种区别,先引入二个概念:节点(Node):每个格子都可以称为节点。代价(Cost):描述角色移动到某个节点时所走的距离(或难易程度)。如上图,如果每水平或垂直方向移动相邻一个节点所花的代价记为1 阅读全文
摘要:
Function类在as3中是直接从Object继承下来的,通常开发者定义的每一个function,均可以认为是Function类的一个实例。如果硬要跟c#做比较,Function类跟Delegate(委托)有几分相似,均可以达到通过该类型的实例来调用不同方法的目的。这段c#代码中,委托_delegateType的实例d,最终调用了具有同样方法签名的方法helloWorld.来看下as3是怎么做的... 阅读全文
摘要:
因工作需要,又做了一个播放器(走了一段弯路:刚开始在flash里做,后来不知道怎么搞的,flash cs5突然代码提示功能没了,后换成Flash Builder把主要代码复制进来重新来过,加上视频文件转换为flv,前后用了近两天时间,汗)依然是基于xml数据源,动画的移动处理主要依赖于TweenLite,没有使用系统的组件,开发环境win7 + flash builder,最终大小29k,另外也发... 阅读全文
摘要:
比系统自带的组件体积要小很多,而且支持进度条显示(在做播放器时,显示缓冲进度很有用哦),另外也支持三角形的音量调整显示使用示例:SimpleSlider.as 阅读全文
摘要:
官方解释:除 TextField 和 Video 对象以外,没有内容的显示对象(如一个空的 Sprite)的高度为 0,即使您尝试将 height 设置为其它值,也是这样。如果您设置了 height 属性,则 scaleY 属性会相应调整(width类推)也就是说,一个空的sprite,既使您设置了width,height也是没用的(而且人为设置了反而会有负作用,见下面的代码)注意:这里人为指定了... 阅读全文
摘要:
“flash开发”发展到今天,大体上已经细分为二个分支:Flash 设计师 和 Flash程序员,然而设计师不懂代码,程序员不懂设计,如何把这二种角色有机结合起来,实现代码、界面分离?可能下面的办法对你有用:actionscript3允许把外部swf直接用Embed标记嵌入到主类中(当然用UrlLoader动态加载也行),这意味着设计师们可以把一些常用的与代码无关的素材(比... 阅读全文
摘要:
在上一篇的最后,我们成功的用“等角投影”模拟出了立体空间的盒子模型,但是很快你就会发现这个示例的bugbug1:在已经有box的地方,再点击,将会重复创建box新实例。bug2:后面添加的box,会挡住前面添加的box。bug3:在边缘部分,如果用鼠标小心的点击,可以创建出很多超出world范围之外的盒子(即:看起来好象挂出去了)我们按轻重缓急来处理吧:bug2最严重,它直... 阅读全文
摘要:
as3.0中的事件冒泡机制有时候会很烦人,比如一个Sprite(方便下文描述就命名为Container吧)把另一外Sprite(称为Child吧)做为子元素套进来以后,如果两个Sprite都注册了Mouse_Down事件,要想在Child上点击鼠标时系统只响应Child的Mouse_Down事件,默认是不行的,因为事件冒泡会让Container也响应Mouse_Down事件,示例代码:鼠标点击最小... 阅读全文
摘要:
什么是等角投影(isometric)?刚接触这个概念时,我也很茫然,百度+google了N天后,找到了一些文章:[转载]等角(斜45度)游戏与数学[转载]使用illustrator和正交投影原理以及基本三视图制图以及这篇ppt:http://files.cnblogs.com/yjmyzz/Isometric.rar建议先耐心看完这三篇文章,再往下看:在之前学习的3D基础、3D线条与填充、背面剔除... 阅读全文
摘要:
今天开始,决定用flash builder淘汰flash cs 4/5了,刚换过来感觉有些不适应,百度+查看帮助,找了几个有用的快捷键:1.代码格式化:选中要格式化的代码段,然后 CTRL + I (注:这是flash builder自带的,不过功能很弱,只能对Tab缩进进行自动格式化,要想有更强的代码格式化,可到百度上搜索一个格式化插件,解压到plugin目录即可)2.代码注释/反注释:选中要注... 阅读全文
摘要:
这应该是IE的bug,解决办法:前二行的目的是让IE环境中触发RESIZE事件,然后在resizeHandler函数中就能正确得到stage.stageWidth与stage.stageHeight了注:如果在firefox或chrome浏览器下,默认页面一打开时,如果用户没有做任何最大化或最小化之类改变浏览器大小的操作,RESIZE事件是不被触发的,而IE中始终会触发. 阅读全文
摘要:
原文出处:http://www.vanqy.cn/index.php/2009/03/working-with-orthographic-projections-and-basic-isometrics/正交投影图(Orthographics)正交投影图的工作原理是通过几个不同的视图来描述一个物体看起来是什么样子的。正交视图一般又称为工程制图或者俯视图。借住一组正交视图和Illustrator可以... 阅读全文
摘要:
原文链接:http://www.javaeye.com/articles/12251984年欧洲的玩家被一款当时发布的游 Knight Lore 震惊了。这款2d游戏居然相当真实的模拟了3d环境,而当时游戏的发布平台是 ZX Spectrum, 48K的内存。这个技术就是isometric perspective(等角投影) 。后来大菠萝、最终幻想等游戏均采用了这种投影技术。等角投影是指在一定范围... 阅读全文
摘要:
sliverlight中一个用户自定义控件(比如MyControl.xaml)如果注册了CompositionTarget.Rendering事件(相当于Flash中的Enter_Frame,在进入每帧时触发),然后在MainPage.cs用代码动态添加时,有二个细节要注意:1、MyControl实例在new出来以后,如果还未添加到MainPage.xaml中的根容器中,其对应的Compositi... 阅读全文
摘要:
在不使用文档类(document class)的情况下,直接在时间轴上写以下代码:输出:this->[object MainTimeline] ,root->[object MainTimeline] ,stage->[object Stage]this==root? --> truethis.stage==stage? --> true0同样的代码,如果放在有文档类... 阅读全文
摘要:
在上一篇里,我们学习了“自主角色”的一些基本行为:寻找(seek)、避开(flee)、到达(arrive)、追捕(pursue)、躲避(evade)、漫游(wander)。这一篇将继续学习其它更复杂,更高级的行为。一、对象回避(object avoidance)对象回避的正式解释为:角色预测出对象的行动路径,然后避开他们。也可以通俗的描述为:假如有一个"灰太狼抓喜羊羊"的游... 阅读全文
摘要:
因为这一章的内容基本上都是涉及向量的,先来一个2D向量类:Vector2D.as (再次强烈建议不熟悉向量运算的童鞋,先回去恶补一下高等数学-07章空间解释几何与向量代数.pdf)有几个地方稍加解释: 1、向量夹角的计算 上图为向量的夹角公式,再来对照一下代码部分: 首先对向量v1,v2做了单位化处理,使其变成(模为1的)单位向量,这样夹角公式中的|a|×|b|(即分母)自然也就是1... 阅读全文
摘要:
1.Sprite/MovieClip的Enter_Frame事件,不受addChild/removeChild影响简单点讲:Sprite或MovieClip对象一旦为其添加了Enter_Frame事件监听,对应的Enter_Frame处理函数将会马上被调用,并一直执行下去(不管你是否将其addChild到显示列表,或者将其从显示列表removeChild),直到该对象removeEventList... 阅读全文
摘要:
Adobe官方并没有"泛型数组"的叫法,这是我自己对Vector的叫法(有点标题党),不过Vector在使用上确实跟c#中的泛型数组有些相似之处。我们知道:ActionScript3.0中的Array数组可以存放多种类型,甚至在同一个Array数组中,可以同时存入String,Object,Number...,但其实我们在实际开发中,通常一个数组中所保存的元素类型都是一致的,为了改进这种情况下的效... 阅读全文
摘要:
AdvancED ActionScript 3.0 Animation 是Keith Peters大师继"Make Things Move"之后的又一力作,网上已经有中文翻译版本了,打算下一阶段开始啃这本书。今天开始学习高级碰撞检测,所用到的预备知识:1、BitmapData的透明与不透明区别位图数据(BitmapData)有二种模式,一种支持透明(即每个像素的值采用AARRGGBB这种32位颜色... 阅读全文
摘要:
早上在网上闲逛,发现了下面这张图,觉得很好,转帖于此,同时向原作者的辛苦整理表示感谢.原图太大,发不上来,打个包下载吧: http://files.cnblogs.com/yjmyzz/flash%e5%bc%80%e5%8f%91%e6%8a%80%e8%83%bd%e6%a0%91.rar 阅读全文
摘要:
来源:http://www.infoq.com/cn/news/2010/02/Flash-ten-things此前,我们发布的新闻谈到了每个Flex开发者需要知道的10件事,本文将继续这个主题,谈谈每个Flash开发者需要知道的10件事。近日John Lindquist谈到了在为Roundarch公司招聘Flash/Flex开发人员时的一些感受。他认为最难的地方在于问什么问题才能最好地了解到应聘... 阅读全文
摘要:
原文:http://blog.flexdevelopers.com/2010/04/10-things-good-flex-developer-should.html翻译:http://bbs.9ria.com/viewthread.php?tid=54144&from=recommend_f要想成为一名优秀的Flex编程人员,单单知道怎么样去使用Flex内建的容器和组件是不够的,而且是远... 阅读全文
摘要:
以前为了赶项目遇到这种需求时,也没过多考虑性能因素,随便写了一个(现在看起来很原始的)方法来实现:但是大家都知道,异常捕获是要有性能损耗的。今天想了想:其实还有其它方法,也许会更好此外,根据Guid的格式规则:总长数36位,由4个'-'分隔,每一段都是由数字+英文字母组合而成。也可以自己写一个算法:另:经猎风同学提醒,应该还要考虑到正则表达式不编译的情况,所以再加上这一段此外:尘尘同学在回复中提醒... 阅读全文
摘要:
如标题,已经知道的同学们就不用往下看了,以免浪费时间,本文内容是为博客园新手准备的。众所周知,博客园发布博文时提供了二种html编辑器:CuteEditor 和 TinyMCE。(其实还有一种纯文本方式,不过很少有用人它,本文就不讨论它了)TinyMCE相对在代码着色方面更出色,排版出来的文章也更好看,所以博客园推荐大家使用它,但是这东西有一个致命的缺点:如果用它直接插入Sliverlight(X... 阅读全文
摘要:
昨晚在一国外博客上(从域名后缀pl上猜想应该是波兰)看到这种效果(Mouse Avoid 躲避鼠标),是基于Flash/AS3开发的,这个示例把弹性运动,摩擦力,均加速运动等多种物理学原理综合运用在一起,产生了不错的交互效果。在线演示as3.0代码如下:测试代码:看完AS3的代码后,我就在想如何移植到Silverlight上来,下午抽空研究了一下,基本上用Silverlight还原出来了,但由于S... 阅读全文
摘要:
几年前就在网上曾看见过这种效果,但一直不知道叫什么名字前一阵无意在9ria(天地会)论坛上看到了一篇专门讲这个的文章:AS3 元球(Metaball),不过有点遗憾的是那篇文章上的代码直接复制下来都不能调试,花了点时间整理了一下,终于调试通过了,贴在这里分享一下:Metaball的公式:其中,x、y是舞台上的任意一个点,x0、y0是metaball的位置,R为半径。从公式上看,可以理解为万有引力的... 阅读全文
摘要:
只要是玩过photoshop的人,一定会对ps中的各式各样、功能强大的滤镜(filter)留下深刻的印象。 Adobe是靠图形处理软件起家的,这方面一直是它的强项。这一技术经过不断发展,最终形成了今天的Pixel Bender(官方翻译为"着色器"),它在Adobe CS系列的主要产品中都被良好支持(包括Flash),而且据官方的介绍pixel bender支持GPU,多线程.下面是几个在Flas... 阅读全文
摘要:
声明:之所以定位在"中小型"商城系统,而非“大型”(指淘宝、拍拍这类巨无霸),理由很简单----我一直都呆在(创业型的)小公司,没见过这些大家伙是怎么设计的:)正文:之前发表过一篇"商城系统中【商品扩展属性】的表单生成及客户端验证",部分童鞋对于后台数据库的设计比较感兴趣,于是今天把这部分也补上。一、产品分类设计越来越多的商城系统都热衷于选择“无限级分类&rdq... 阅读全文
摘要:
今天做项目时遇到一个小需求:要将字符串中的回车符号替换成其它符号(比如"<br/>")。 考虑到不同的情况下,有些系统中是用\r\n作回车符,有些仅用\n就代表回车符了。以前都是用String类的Replace方法连接替换多次来处理的,今天突然想改为正则表达式一次性搞定,但又怕性能上消耗太大,于是写了下面的测试代码:输出结果:11111 * 22222 * 33333 * 44444 ... 阅读全文
摘要:
As3.0中的位图(Bitmap/BitmapData)编程功能十分丰富,下面这些是官方文档上的基本示例:1.位图使用(模糊)滤镜2.像素拷贝及赋值3.颜色变换4.比较位图差异5.拷贝颜色通道6.截取位图的某一部分(像素)7.将文本转换为位图8.仿PS中的颜色填充工具9.颜色融合10.噪点图11.另一种噪点图(有点类似卫星云图)12.像素融解13.查找满足条件的颜色并替换14.综合应用1:模仿Me... 阅读全文
摘要:
前几天在园子里看到有人用Silverlight做了一个"贪吃蛇",一时兴起也想用AS3.0做一个,虽然这个游戏已经被很多开发者做烂了,但是作为AS的初学者,重新做一遍也当是一种学习.技术"难"点分析:1.蛇身的构成可以用数组来存储一堆小球,将它们排列成连续的直线即可2.蛇身的移动蛇头移动后,紧跟蛇头后的小球移动到蛇头原来的位置,然后...类推,后面的小球依次移动到前一个球的位置3.碰撞检测蛇头移动... 阅读全文