About

<#TEMPLATE_INCLUDE_NINEPAGE_ABOUTME#>
  • Aug

    14

    启动 “Notepad++”,点击菜单“搜索”→查找→文件查找,在查找目标中输入需要搜索的文本,并选定一个目录,就可以批量查找与搜索了(可以带上搜索子目录选项)。用 Notepad++ 批量搜索的优势是除了普通匹配模式搜索之外,还能支持转义搜索与正则表达式模式搜索,并且可以直接双击搜索结果,会自动打开并跳转到搜索结果高亮显示;它同时支持批量替换文本(批量替换需谨慎,因为这是不可逆的操作)。

    Aug

    9

    Egret Engine(白鹭引擎)是一款使用 TypeScript 语言构建的开源免费的移动游戏引擎。白鹭引擎的核心定位是开放,高效,优雅。通过它,你可以快速地创建 HTML5 类型的移动游戏,也可以将游戏项目编译输出成为目标移动平台的原生游戏应用。

    开源免费

    Egret 引擎是一个基于 BSD 开源协议许可的永久免费的项目!你可以在项目中随意使用且修改它,并且拥有 100% 的控制权。你可以从 Egret 的 Github 网站获取它的源代码,从而了解和学习它的核心细节。Egret 具有完善的文档,并且易于上手学习,使用它可以让你更容易专注于游戏本身的开发。

    性能卓越

    Egret 将为你的游戏提供卓越的游戏渲染性能支撑,相对于其他移动游戏引擎,Egret 深度优化了显示对象列表处理机制和脏矩形算法,提供了强大的位图 CacheBuffer 处理功能。在未来的正式版本中,Egret还将加入所有的渲染内容均可调用基于 WebGL 的硬件加速和无缝的软件回退功能。

    简洁,优雅,跨平台

    Egret 引擎核心使用Typescript(JavaScript超集)编写,透过它,你可以很容易的在 iOS 和安卓平台的各种浏览器中轻松的运行你的 HTML5 游戏,并在不同平台浏览器里提供近乎一致的用户体验。同时, Egret 提供高效的 JS-C Binding 编译机制,满足你将游戏编译为原生格式的需求。

    灵感激发于Adobe Flash

    Adobe Flash 拥有完整的Web游戏工作流程,具有深度的开发者社区,一个出色的 ActionScript 语言和大量卓越的第三方游戏框架。这些都给与 Egret 引擎在开发中很多灵感。Egret 借鉴了很多来自ActionScript 的优点,站在巨人的肩膀上,踏上移动互联网的技术浪潮,为移动游戏领域贡献一份技术力量!

    Aug

    9

    SVN 状态图标消失的解决方法

    • 0 Comments
    • Miscellaneous

    1、进入任意一个文件夹,鼠标右键,依次进入TortoiseSVN——设置。

    2、在打开的设置窗口内找到“图标覆盖”——“状态缓存——选择“Windows 外壳”(语言包的汉化问题,其实是指 Shell)。

    3、点击确定、并重启电脑,搞定。

    Aug

    2

    先说明:In-House 方式不仅适用于企业开发者证书在线发布 ipa 文件 ,同样也适用于个人开发者证书生成的 ipa 文件。但一般只用于企业开发者证书开发的 APP,因为企业开发者证书是不限机器数量的,在无需越狱的状态下可以任意安装的;而个人开发者证书虽然也能使用 inHouse 方式在线发布,但必须绑定安装设备的 UDID,并且最多设备数量为100台。因为一般应用或游戏开发完成后是直接发布到外网的,所以这种使用的方式人就比较少。

    以下以企业开发者证书与普通服务器网站为例:

    第一步:确定 *.ipa 存放的位置,可以通过 http 或 https 协议访问到(比如:http://xxxxxx/AppDesign/App.ipa)。

    注:如果用的是免费空间或虚拟主机,不能下载 *.ipa 文件,可以直接将 ipa 后缀名改为其它 IIS 安全可以访问的后缀名,比如 htm、rar 等也没有关系;同样第二步中的 plist 文件后缀名对应也要是修改后的后缀名。

    第二步:生成 *.plist 文件,存放于 https 协议可以访问到的地址( iOS 7 以上的版本必须要求 https,所以最好以最新版本的 iOS 系统为标准)。

    注:如果自己的服务器不支持 https 协议可以使用开源中国,放在国外的 github 也可以,但随时有可能像 DropBox 那样会被封,用户就会访问不到 plist 文件。

    一个简单的 plist 文件如下所示(如果企业版证书用了通配符 * 号可以任意填写 APP ID,那么 plist 文件中 bundle-identifier 的值也可以直接写通配符) :

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
        <dict>
            <key>items</key>
            <array>
                <dict>
                    <key>assets</key>
                    <array>
                        <dict>
                            <key>kind</key>
                            <string>software-package</string>
                            <key>url</key>
                            <string>http://xxxxxx/AppDesign/App.ipa</string>
                        </dict>
                    </array>
                    <key>metadata</key>
                    <dict>
                        <key>bundle-identifier</key>
                        <string>*</string>
                        <key>bundle-version</key>
                        <string>1.0.0</string>
                        <key>kind</key>
                        <string>software</string>
                        <key>title</key>
                        <string>某个APP的名称用于在线安装时弹出对话框显示</string>
                    </dict>
                </dict>
            </array>
        </dict>
    </plist>

    第三步:如果需要二维码扫苗后在线安装,将包含 JS 解析终端用户设备的跳转代码 html 上传到网络(比如 JumpJS.html),然后将此文件的地址通过在线生成二维应用生成二维码图片上传至网络;如果不需要二维码扫苗安装可以跳过这一步。一个简单的 JS 跳转页面如下所示:

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">  
    <html>  
        <head>
        <meta charset="UTF-8">
        <title>手机APP下载页面:根据终端辨别下载地址</title>

            <script type="text/javascript">
                var theUrl = "itms-services://?action=download-manifest&url=";
                // 获取终端的相关信息
                var u = navigator.userAgent
                var app = navigator.appVersion;
                if(u.indexOf('Android') > -1){
                    //这里是安卓
                }
                if(u.indexOf('Linux') > -1){
                    //这里是Linux
                }
                if(u.indexOf('iPhone') > -1){
                    theUrl += 'https://xxxxxxx/ipa_install_online/App.plist';
                }
                if(u.indexOf('iPad') > -1){
                    theUrl += 'https://xxxxxxx/ipa_install_online/App.plist';
                }
                /*
                // 辨别移动终端的语言:zh-cn、en-us、ko-kr、ja-jp...
                var language = (navigator.browserLanguage || navigator.language).toLowerCase();

                switch(language){
                    case 'en-us':
                        theUrl = '你的iPad APP(英文版)对应下载地址:APP Store地址';
                        break;
                    case 'ko-kr':
                        theUrl = '你的iPad APP(韩语版)对应下载地址:APP Store地址';
                        break;
                    case 'ja-jp':
                        theUrl = '你的iPad APP(日文版)对应下载地址:APP Store地址';
                        break;
                    case 'zh-cn':
                        theUrl = '你的iPad APP(中文版)对应下载地址:APP Store地址';
                        break;
                    default:
                        theUrl = '你的iPad APP(默认)对应下载地址:APP Store地址';
               }
               */


                location.href = theUrl;
            </script>
        </head>
        <body>
            <!-- 无网页内容-->
        </body>
    </html>  

    第四步:制作和上传索引网页文件(比如 index.html,包含在线安装的按扭,以及第 3 步中生成的二维码图片之类的)。一个最简单的索引文件可能就如下所示:

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">  
    <html>  
        <head>  
          <meta http-equiv="Content-Type" content="text/html; charset=utf-8">  
          <meta http-equiv="Content-Style-Type" content="text/css">  
          <title>在线安装</title>  
        </head>  
        <body>  
            <a href="itms-services://?action=download-manifest&url=https://xxxx/ipa_install_online/App.plist"><font size="20">在线安装</font></a>
            </br>
            <img src="2wei.png"/>
        </body>
    </html>  

    Jul

    16

    在 openssl 文件夹中搜索 openssl.cnf 文件,如果未搜到就搜索 openssl.cfg 文件,找到之后就将路径加入到环境变量中,如下样例代码:

    set OPENSSL_CONF=D:\OpenSSL-Win32\bin\openssl.cfg

    More...

    Jul

    8

    Jun

    23

    Adobe 公司最新推出的 ATF 工具引入的一个全新的图像文件格式:ATF(Adobe Texture Format)。深入地了解一下看看它到底产生什么样的图像可以便好的使用它。 

    ATF 实际上集合了三种其它的贴图格式:用于 Windows,Mac OS X 以及某些安卓设备上的  DXT1 格式;用于其它安卓设备上的 ETC1 格式;还有用于 iOS 上的 PVRTC 格式。因此一个 ATF 格式文件可以在任何能够运行 Flash Player 或 AIR 的地方工作。另外,第四种图片格式也会被使用:JPEG-XR。这个与LZMA 压缩算法相结合来降低文件的大小。将三种图片打包成一个往往文件的尺寸会增大。每种子文件格式图像质量都会稍有不同(具体细节不同之处可以查看原文:http://jacksondunstan.com/articles/2013,含示例图以及图片具体大小数据的对比),在大多数 3D 场景中质量的降低是可以接受的。

    简单来说, 一个好处是可以做到不使用 mip-maps(例如:为已知显示距离或者 2D 的图片进行压缩),那么你可以节省约 25% 的文件尺寸。如果恰巧知道应用程序将要运行的目标设备,可以节省掉更多。例如,只是将应用程序部署到 iOS 上,那可以只压缩为 PVRTC 格式。这通常会将文件的大小削减到三分之一,因为其它子格式被去掉了。如果能够舍弃 mip-maps 并且只使用一种子格式,那就更好了。

    PNG2ATF 工具使用方法:

    # All sub-formats. All mip-map levels.
    png2atf --i image.png -o image_all.atf

    # All sub-formats. No mip-map levels.
    png2atf --0,0 -i image.png -o image_all_nomip.atf

    # Only DXT. All mip-map levels.
    png2atf -c d -i image.png -o image_dxt.atf

    # Only DXT. No mip-map levels.
    png2atf -c d -0,0 -i image.png -o image_dxt_nomip.atf

    # Only ETC. All mip-map levels.
    png2atf -c e -i image.png -o image_etc.atf

    # Only ETC. No mip-map levels.
    png2atf -c e -0,0 -i image.png -o image_etc_nomip.atf

    # Only PVRTC. All mip-map levels.
    png2atf -c p -i image.png -o image_pvrtc.atf

    # Only PVRTC. No mip-map levels.
    png2atf -c p -0,0 -i image.png -o image_pvrtc_nomip.atf

    原文链接:http://jacksondunstan.com/articles/2013

    译文链接:http://bbs.9ria.com/thread-159763-1-1.html

    Adobe 官方 ATF SDK 压缩纹理简介:http://www.adobe.com/cn/devnet/flashruntimes/articles/introducing-compressed-textures.html

    Jun

    22

    Adobe Texture Format(简称 ATF)是 Flash 运行时 Stage3D API 固定纹理资源使用的推荐文件类型(也是现在其它一些 3D 类纹理资源的推荐文件类型)。

    Adobe Texture Format (ATF)工具用户指南:http://www.adobe.com/cn/devnet/flashruntimes/articles/atf-users-guide.html

    May

    23

    个人房屋租赁合同范本下载

    • 0 Comments
    • Miscellaneous

    范本下载:租房合同.rar        样本预览:租房合同.pdf

    May

    22

    包含主要内容:关于 FXG 介绍、使用 FXG 的最佳实践、以 FXG 格式存储 Illustrator 文件、Illustrator 和 Flash Catalyst 工作流程、Illustrator 对象和属性的 FXG 映射。

    链接地址:http://help.adobe.com/zh_CN/illustrator/cs/using/WS3f28b00cc50711d9814a4f8133b3babd90-8000.html