Posts Tagged ‘Flash’

某项目

// 十月 25th, 2009 // No Comments » // 技术相关

1234

Flash联机版斗地主

// 六月 16th, 2008 // 1 Comment » // 技术相关

e69caae591bde5908d

最近金融危机很强大,以至于已经影响到了身边的人,看到9c、小鱼、HBrO都已经更新了博客,于是我也来写几句。

最近做了一个Flash联机版的斗地主游戏,具体算法大致与其它网站的一样,只是规则稍做了一些改动,座次不是用户选择,而是随机安排的,主要是为了防止部分玩家为舞弊。游戏采用Flash AS+FMS编写,由于本人还属于入门级,因此对于我来说,这也是一个机会。

互联网行业是一个烧钱的行业,Flash RIA还停留在寻找盈利模式的阶段,而这次金融海啸,给了投资者相当大的压力,于是,裁员开始了。我和我身边的很多人,亲友、同学、朋友都感受到了他的无比强大。

不知道你是否感受到了呢?

Flash图片处理之Filter

// 五月 14th, 2007 // No Comments » // 技术相关

  最近无聊,突然想做Flash图片处理小东东供自己使用,但在下对这方面是一窃不通,怎么办呢?还好,AS提供了非常强大的功能。

  首先想到的便是Flash的帮助文档,ColorMatrixFilter类,它属于filters。据文档的诉,要用到矩阵,怕怕,心里顿了凉了许多。因为我最怕的就是什么数学函数,矩阵积分之类的东东,对于连勾股定理是什么东东的玩意儿都已经忘切九宵云外的我,无疑是重大的打击。不过,不能低头,还得往下看。嘿嘿,我心里想着,我把所有的说明文档看完(包括AS2、AS3),并精通之,我就能不是菜鸟啦。不是菜鸟就是高手?。_^*^_

  我现在有点怀疑Flash的说明文档是女孩子写的,因为每一点写的非常的精细,更有几分甜甜的女人味。

  Go on……还好,文档提供了一个公式。

redResult = a[0] * R + a[1] * G + a[2] * B + a[3] * Alpha + a[4]
greenResult = a[5] * R + a[6] * G + a[7] * B + a[8] * Alpha + a[9]
blueResult = a[10] * R + a[11] * G + a[12] * B + a[13] * Alpha + a[14]
alphaResult = a[15] * R + a[16] * G + a[17] * B + a[18] * Alpha + a[19]

  滤镜将每个像素分为红(R)、绿(G)、蓝(B)、透明度(Alpha)等四个成分。可惜此滤镜仅用于2880以内的像素处理(Flash可供载入的图片宽度也只有2880px)。

  如仅表示Alpha,则可用下列矩阵表示(Alpha代表0到1的值)

1 0 0 0 0
0 1 0 0 0
0 0 1 0 0
0 0 0 Alpha 0

  但文档后面除了用一个根据鼠标移动来改变颜色的实例来运用上面的公式,似乎再没有了。而复杂的处理功能,它们RGBA的数据值,则无从得知,郁闷中。看来只能求助于Google和baidu了。还好,早有高人给了开源的东东,让我兴奋不已,哇,开源就是好。。又让我可以省了很多不必要的麻烦,不会为了矩阵而神精错乱。

  下面给出几组常见的矩阵

黑白

0.3086, 0.6094, 0.0820, 0, 0
0.3086, 0.6094, 0.0820, 0, 0
0.3086, 0.6094, 0.0820, 0, 0
0 , 0 , 0 , 1, 0

对比度(N取值为0到10)
N,0,0,0,128*(1-N)
0,N,0,0,128*(1-N)
0,0,N,0,128*(1-N)
0,0,0,1,0

亮度(N取值为-255到255) 注:一般取值为-100到100(这里是PS中的取值宽度)
1,0,0,0,N
0,1,0,0,N
0,0,1,0,N
0,0,0,1,0

颜色反相
-1, 0, 0, 0, 255
0 , -1, 0, 0, 255
0 , 0, -1, 0, 255
0 , 0, 0, 1, 0

阈值(N取值为-255到255)
0.3086*256,0.6094*256,0.0820*256,0,-256*N
0.3086*256,0.6094*256,0.0820*256,0,-256*N
0.3086*256,0.6094*256,0.0820*256,0,-256*N
0, 0, 0, 1, 0

色彩饱和度(N取值为0到255) 注:一般取值为0到100(这里是PS中的取值宽度)
0.3086*(1-N)+ N, 0.6094*(1-N) , 0.0820*(1-N) , 0, 0
0.3086*(1-N) , 0.6094*(1-N) + N, 0.0820*(1-N) , 0, 0
0.3086*(1-N) , 0.6094*(1-N) , 0.0820*(1-N) + N, 0, 0
0 , 0 , 0 , 1, 0

设置颜色通道(RGB均为0-2,A为0-1)

R,0,0,0,0
0,G,0,0,0
0,0,B,0,0
0,0,0,A,0

  还有更多在等待发现, 用上它再加上Flash本身的滤镜类,还真可以做一个简单的图片工具了。