随笔分类 -  12.Flex/Flash/AS3.0

摘要:Animation in ActionScript3.0 这本书总算快学完了,今天继续:上一回Flash/Flex学习笔记(50):3D线条与填充里,我们知道任何一个3D多面体上的某一个面,都可以分解为多个三角形的组合。比立方体为例,每个面都由二个三角形组成,但在那一篇的示例中明显有一个问题:不管立方体的某一个面是不是应该被人眼看见(比如转到背面的部分,应该是看不见的),这一面都被绘制出来了。在这... 阅读全文
posted @ 2010-06-06 17:06 菩提树下的杨过 阅读(2011) 评论(0) 推荐(1) 编辑
只有注册用户登录后才能阅读该文。
posted @ 2010-06-04 17:11 菩提树下的杨过 阅读(4229) 评论(38) 推荐(28) 编辑
摘要:虽然Flash早就升级为AS3.0,但是FMS的服务端编程依然仅支持AS1.0(2.0),服务端与.net通讯的最简单方式莫过于请求一个RESTful的webService或wcf,通过它们返回的xml来获取数据。输出:你好,请问您有什么问题需要咨询?我去休息了,一会儿见!我要离开一下下,不要走开,马上回来!上面这段代码演示了如何读取xml中的节点文本。更详细的FMS服务端语言参考,请查阅FMS安... 阅读全文
posted @ 2010-06-03 21:11 菩提树下的杨过 阅读(681) 评论(0) 推荐(0) 编辑
摘要:AS3中的序列化功能其实比较弱,Adobe官方的第三方json序列化工具类可以把对象的属性序列化为字符串,并反序列化为对象。但如果对象中定义了自己的function,则这部分序列化时将被忽略。另外在实际开发中,也常会遇到将图片数据序列化与反序列化的场景(比如在二个flash之间转送图片),有二种办法实现:1.利用JPGEncoder或PNGEncoder注意:这种带压缩的方法对图片质量是有影响的,... 阅读全文
posted @ 2010-05-31 21:55 菩提树下的杨过 阅读(4975) 评论(2) 推荐(0) 编辑
摘要:给你一个代码代表"类"完整路径的字符串,比如"flash.text.TextField",你能用AS3.0在舞台上动态创建一个该类的实例么?(用var txt:TextField = new TextField()作弊的不算)ok,这就是AS3.0中的反射,虽然写法与c#中的完全不同,但是概念是相通的,有了这个我们可以把一些需要动态创建实例的信息,放在xml配置文件里,运行时先加载xml配置,然后... 阅读全文
posted @ 2010-05-30 21:15 菩提树下的杨过 阅读(2984) 评论(1) 推荐(0) 编辑
摘要:啥也不说了,看代码,然后测试:按钮(注:指SimpleButton而非组件中的Button)被disable后,依然可以触发Click事件,AS3的发明者为啥要这样设计呢?反正我是没理解,不过既然它已经这样了,就只能顺着它走了。要想按钮事件仅被触发一次,正确的做法只能是removeEventListener后记:事后仔细想了想Adobe为什么要这样设计?我想这或许就是Adobe与Microsoft... 阅读全文
posted @ 2010-05-27 17:18 菩提树下的杨过 阅读(3844) 评论(5) 推荐(0) 编辑
摘要:http://files.cnblogs.com/yjmyzz/AS3API_01.pdf学习ActionScript3.0 不可多得的参考文档另外,今天意外发现原来Yahoo的YUI居然还有一个Flash版本的:http://developer.yahoo.com/flash/astra-flash/yahoo太棒了,可惜市场运作太差 阅读全文
posted @ 2010-05-26 09:49 菩提树下的杨过 阅读(1540) 评论(2) 推荐(0) 编辑
摘要:先看最终效果:整个swf最终不到4k,如果用系统的组件List来做的话,最终尺寸会接近30k ! (当然,核心代码是从网上收集到的:))大致原理:把要显示的对象上面加一层遮罩,然后根据滚动条的位置,上下移动显示对象。源文件:http://cid-2959920b8267aaca.skydrive.live.com/self.aspx/Flash/miniScrollBar.rar 阅读全文
posted @ 2010-05-25 14:53 菩提树下的杨过 阅读(1601) 评论(0) 推荐(0) 编辑
摘要:先来看客户端fla的构成:第一帧:登录界面第一帧的代码:第二帧:聊天的主界面代码:服务端main.asc的处理(注:main.asc保存时,貌似只能选择为utf-8编码,否则运动时客户端一直连接不上)运行中的样子:注:艾睿论坛上曾有一篇教程利用FMS的远程共享对象来创建聊天室,远程对象在编码上也许更简单,不过个人感觉性能不太理想(因为对于共享对象的广播是FMS自动的,完全不受控制,不管客户端想不想... 阅读全文
posted @ 2010-05-24 16:31 菩提树下的杨过 阅读(1752) 评论(2) 推荐(0) 编辑
摘要:TweenLite是第三方出品的专用于各种缓动动画的类库,其性能据说已经超过了Adobe官方的Tween.从网上找到了一篇中文的说明文档:http://files.cnblogs.com/yjmyzz/tweenLite%e4%b8%ad%e6%96%87%e6%89%8b%e5%86%8c%e4%b8%8e%e5%8f%82%e6%95%b0%e8%af%b4%e6%98%8e.pdf这是官方的... 阅读全文
posted @ 2010-05-21 20:58 菩提树下的杨过 阅读(3506) 评论(0) 推荐(0) 编辑
摘要:Flash/Flex学习笔记(49):3D基础里已经介绍了3D透视的基本原理,不过如果每次都要利用象该文中那样写一堆代码,估计很多人不喜欢,事实上AS3的DisplayObject类已经内置了z坐标、rotationX、rotationY、rotationZ属性,再加上PerspectiveProjection类用于处理透视转换,基本上可以满足大多数的3D要求。稍加解释:z坐标:即对象在z轴上的坐... 阅读全文
posted @ 2010-05-20 22:02 菩提树下的杨过 阅读(6476) 评论(2) 推荐(0) 编辑
摘要:3D线条:把上一篇中的3D坐标旋转示例稍做修改,用线把各个小球连接起来即可。如果从性能优化的角度考虑:Ball3D类用在这里比较浪费,Ball3D继承自Sprite,而我们在这里其实仅仅只要一个拥有少数几个属性(比如xpos,ypos,zpos之类)的点而已,对于Sprite默认的其它属性,包括事件支持,都是不需要的。所以...我们又多出了一个新类Point3D利用这个类重写最开头的示例:上面的示... 阅读全文
posted @ 2010-05-14 09:37 菩提树下的杨过 阅读(2568) 评论(0) 推荐(3) 编辑
摘要:之前我们所做的动画都是基于x,y二维坐标轴的,在三维动画中我们还需要增加一个垂直于屏幕“向里”或“向外”的Z轴,那么z轴到底是应该向外,还是向里呢?这个其实无所谓,不过为了统一,习惯上通常把z轴约定为向里,即所谓的“右手坐标系”右手坐标系的得名:伸出右手,让食指、中指、大拇指相互垂直;然后 食指指向x轴正向,中指指向y轴正向,... 阅读全文
posted @ 2010-05-08 21:26 菩提树下的杨过 阅读(4003) 评论(2) 推荐(1) 编辑
摘要:先要复习一下三角函数与余弦定理:对于直角三角形,三边长a,b,c与三个角A,B,C的关系如下:正弦函数:余弦函数:正切函数:反正切函数:(好象现在的教科书里改叫“余切”函数) 或 勾股定律:但对于不是直角的三角形,就必须用余弦定律来处理了:利用余弦定理也可以处理反向运动学中的伸展:上面这个是示意图(花了我近一天时间才弄明白,汗,高中的数学知识全还给老师了)说明:蓝色的se... 阅读全文
posted @ 2010-05-06 13:34 菩提树下的杨过 阅读(1332) 评论(1) 推荐(0) 编辑
摘要:先回顾上篇所说的"正向运动学":以人行走的例子来说,基本上可以理解为大腿驱动小腿,小腿驱动脚,从而引发的一系列姿态调整和运动。再举一个例子,我们用着拿一根软鞭或链条的一端挥舞,被手挥舞的这一端会把"能量"向另一端传递(即固定端驱动紧接的部分,而紧接的部分又驱动下一段紧接的部分),从而使整个系统也随之运动.而"反向运动学"正好相反,举个不恰当的例子,小时候估计很多人玩过“死”... 阅读全文
posted @ 2010-05-05 11:40 菩提树下的杨过 阅读(2173) 评论(2) 推荐(0) 编辑
摘要:所谓"正向运动学"通俗点讲就是把几个连接部件的一端固定起来,另一个端可以自由(向前/向外)运动。比如人的行走,单个下肢可以理解为脚连接小腿,小腿连接大腿,大腿连接腰。行走的过程,相当于二条腿相对固定于腰部,大腿运动驱动小腿,小腿又驱动脚,从而带动整个连接系统的一系列运动。先来一个基本的关节类Segment:(就是一个圆角矩形+二个小圆圈)为了动态控制关节的旋转,再来一个简单的滑块控件类:(下列代码... 阅读全文
posted @ 2010-04-30 15:25 菩提树下的杨过 阅读(2047) 评论(6) 推荐(1) 编辑
摘要:NND,明天就是世博,上海政府都发公文倡议企业五一休息5天,我们公司居然只放3天,真无语,搞得大家今天都没心情工作。下雨天打孩子,闲着也是闲着,把以前看到同事做的一个小Loading模拟了一下:源文件:http://cid-2959920b8267aaca.skydrive.live.com/self.aspx/Flash/LoadingMC.rar 阅读全文
posted @ 2010-04-30 13:13 菩提树下的杨过 阅读(1663) 评论(0) 推荐(0) 编辑
摘要:万有引用公式:其中G为万有引力常数代码虽然很长,但是其中有很多都是上一篇里封装好的方法直接复制过来的,应该不难理解再来模拟一下地球绕着太阳转:代码就是在第一段的基础上修改的,可以看到在"远日点"速度较慢(因为距离越远,万有引力越小,对应的加速度也较小),在"近日点"速度较快(距离越近,万有引力越大,对应的加速度也较大)节点花园NodeGarden:为啥叫这个名字,我也说不上来,反正ActionSc... 阅读全文
posted @ 2010-04-28 15:14 菩提树下的杨过 阅读(2059) 评论(3) 推荐(0) 编辑
摘要:动能公式:动量公式:动量守恒:能量守恒: 根据这些规律可以得到下列方程组:解该方程组,得到下面的公式:把这二个公式相减,可以得到:即:我们也经常利用这个公式简化运算基本的动量守恒演示:先给ball类添加一个质量"属性"一维单轴刚体碰撞测试:二维坐标上的刚体碰撞:先来看这张图,红球a以Va速度运动,蓝球b以Vb速度运动,二球的连线正好与x轴平行(即:水平对心碰撞),碰撞的过程可以理解为二球水平速度分... 阅读全文
posted @ 2010-04-22 11:25 菩提树下的杨过 阅读(6532) 评论(8) 推荐(1) 编辑
摘要:坐标旋转是个啥概念呢?如上图,(蓝色)小球 绕某一中心点旋转a角度后,到达(红色)小球的位置,则红色小球相对中心点的坐标为:x1 = dx * cos(a) - dy * sin(a)y1 =dy * cos(a) + dx * sin(a)这个就是坐标旋转公式,如果要反向旋转,则公式要修正一下,有二种方法:1.将a变成-a,即:x1 = dx * cos(-a) - dy * sin(-a)y1... 阅读全文
posted @ 2010-04-20 20:32 菩提树下的杨过 阅读(6780) 评论(15) 推荐(1) 编辑