About

<#TEMPLATE_INCLUDE_NINEPAGE_ABOUTME#>
  • Dec

    18

    starling 库 Sprite3D 翻转动画

    • 0 Comments
    • Flash Platform

    用starling做 3D 翻转/旋转效果就是这么简单:

    //样例主代码,以Y轴旋转为例(其它代码都省了)
    var sprite3d: Sprite3D = new Sprite3D();
    sprite3d.addChild(frontImage)//frontImage是一个starling Image对象
    sprite3d.addChild(backImage)//backImage是一个starling Image对象

    sprite3d.x = 300;
    sprite3d.y = 300;
    sprite3d.pivotY = sprite3d.height / 2//让它沿着容器的中间旋转
    sprite3d.pivotX = sprite3d.width / 2;

    addChild(sprite3d);

    //为了偷懒直接用了TweenLite类,否则要添加侦听器,再加Juggler神马神马的很烦人
    TweenLite.to(sprite3d, 2
    {
        rotationY: Math.PI,
        onUpdate: onUpdateHandler,
        onUpdateParams: [sprite3d]
    });

    var vector3D: Vector3D = new Vector3D();

    function onUpdateHandler(_sprite3d: Sprite3D): void 
    {
        vector3D = stage.getCameraPosition(_sprite3d);
        //设置平面图片在旋转时的可见性
        frontImage.visible = vector3D.z > 0;
        backImage.visible = !frontImage.visible;
    }

    Dec

    11

    Flex 组件:ArdisiaLabs

    • 0 Comments
    • Flash Platform

    QQ 群里偶然看到的一个 Flex 组件 ArdisiaLabs。DEMO 地址:http://www.ardisialabs.com/demo/

    点了 DEMO 看了一下,组件类型挺丰富的,对官方原先的组件功能也有对应的功能上的扩展,而且提供了扁平化的设计风格。感觉上性能比 Flex 版本的 IBM ILOG Elixir Enterprise 组件要好一点,但缺少重量级的组件。

    Dec

    8

    如果已经弹出过 WIN10 升级提示(如果没有弹出过提示,就跳过这一段),先进入“控制面版—默认程序—程序和功能—查看已安装的更新”,找到 “KB3035583” 更新补丁将它删除。

    1、进入“控制面版—管理工具—服务“,找到“Windows Update”,将定改为禁用。

    2、在开始菜单的运行栏里输入“gpedit.msc”,启动本地组策略编辑器,“计算机配置—管理模版—Windows 组件— Windows Update—配置自动更新”,将它改为禁用。

    从此以后世界彻底的清静了。

    特别注意:按以上步骤设备后,不要再使用任何第三方的程序去更新系统补丁,比如 360,腾讯管家之类的,否则系统在下一次重启时将会卡在配置 Windows 失败的界面,无法进入系统(包括安全模式!!!)。

    Nov

    17

    很多链接已经打不开了,很多资料正在流失,仅为了收藏一下。
     

    More...

    Nov

    17

    Adobe 官方 Game SDK 的 API 手册链接:http://www.adobe.com/devnet-docs/gamingsdk/anedocs/

    Nov

    16

    我挺讨厌 Creative Cloud 这个东西的,每次下载和安装非常的慢,而且不能备份安装程序本身,每次重装系统后又得重新下载和安装,而且是完全捆绑式的安装非常令人反感。偶然看到这个页面《Creative Cloud 2015 Downloads: Adobe CC 2015 Direct Links / Trials》,我收藏一下先。

    必须使用迅雷下载

    原文链接http://prodesigntools.com/adobe-cc-2015-direct-download-links.html

    More...

    Nov

    10

    自定义函数的参数是array、point等类型时不能指定默认值。比如:

    var a: Array = [123];
    function test(b: Array = [120])
    {
     trace('b:' + b);
    }
    test(a);
    trace("Rarray:" + a);

    上面这个代码编译时就会报错:参数初始值设定项未知或不是编译时常数。改成下面这样子就可以了:

    var a: Array = [123];
    function test(b: Array = null) {
     if (== null) b = [120];
     trace('b:' + b);
    }
    test(a);
    trace("Rarray:" + a);

    Nov

    8

    1、按下 Ctrl + ` 组合键,输入以下代码,并回车:

    import urllib2,os,hashlib; h = '2915d1851351e5ee549c20394736b442' + '8bc59f460fa1548d1514676163dafc88'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); os.makedirs( ipp ) if not os.path.exists(ipp)else None; urllib2.install_opener( urllib2.build_opener( urllib2.ProxyHandler()) ); by = urllib2.urlopen( 'http://packagecontrol.io/' + pf.replace(' ''%20')).read(); dh = hashlib.sha256(by).hexdigest(); open( os.path.join( ipp, pf)'wb' ).write(by) if dh == h else None; print('Error validating download (got %s instead of %s), please try manual install' % (dh, h) if dh != h else 'Please restart Sublime Text to finish installation')

    2、重启 Sublime Text。

    3、使用 Ctrl + Shift + P 打开命令行模式,在里面输入“Install Package” 即可搜索需要的 Package。

    4、输入选择 ConvertToUTF8 后,再次重启 Sublime Text,就可以解决中文乱码的问题。

    Nov

    3

    API 手册中写的是:

    注意:当在 Mac® OS X 上选择并打开多个文件时,AIR 将调度单个 invoke 事件,该事件在 arguments 数组中包含所有所选文件的名称。但是,在 Windows ® 和 Linux 中,AIR 将为 arguments 数组中只包含该文件名的每个所选文件调度一个单独的 invoke 事件。

    这句话前半句对 MAC 写的很清晰,但后半句对 Windows ® 和 Linux 写的很含糊。

    举个例子:AIR 程序先关联某个后缀名,然后同时选中两个文件后,右键菜单中选择“打开”。当应用程序启动后就会发生 invoke 事件,但 MAC 和 WIN 上各有区别。

    虽然选中了两个文件,但在 MAC 上只会调用一次 invoke 事件,在 arguments 数组参数中包含两个元素,分别是对应的两个文件名(请注意是文件名类型是 String,不是文件 File 类型)。而在 WIN 系统里,两个文件在同一个应用里会产生两次 invoke 事件,并且 arguments 数组长度为 1,也就是数组元素永远只包含 1 个元素

    Nov

    1

    Flex MXML 花括号绑定语法在编写程序时非常方便,可以省去大量的编码工作,让编译器自动完成。在使用列表类组件时,有时会遇到这样的提示:数据绑定将无法检测对“length”的指定。虽然它不会影响最终结果,但在调试和发布时都会遇到警告。

    比如,有一个按钮只想在列表类组件选中一行时启用,在未选中或多选几行时禁用,虽然可以这么写:

    //它会产生一个警告:数据绑定将无法检测对“length”的指定
    enabled="{Boolean(dg.selectedItems.length == 1)}"

    从 API 手册中可以查到 selectedItems 可以用于绑定操作,但它是一个 Array 对象,而 Array 的 length 属性并不可以用于绑定操作。需要作一些修改: 

    //这样世界就安静了
    enabled="{Boolean(new ArrayList(dg.selectedItems).length == 1)}"

    因为 API 手册中写了 ArrayList 的 length 属性可以用于绑定操作。