2013年12月10日
摘要: 由于之前项目中某些密集运算优化的需要,涉及到ARMASM相关的内容, 所以有幸可以在此分享一下自己的经验。先铺垫一些知识:1. ARM处理器有两种指令ARM、THUMB, 在WP8下默认是THUMB。2. 就我所知,ARM汇编常见有两种语法GCC语法和ARM官方语法, ARMASM.exe(WP8 SDK提供)遵循ARM官方语法标准。3. WP8设备使用ARM架构,芯片为高通S4或更高, 所以WP8的所有设备都有NEON协处理器(类似x86的MMX), 这对多媒体应用等运算密集的性能提升有很大帮助。一般用法:1. 编写armasm的汇编程序, 导出相关函数, 使用armasm编译出obj后使用 阅读全文
posted @ 2013-12-10 23:47 zcmmwbd 阅读(1518) 评论(6) 推荐(1) 编辑
  2012年9月25日
摘要: 刚写完一段代码,由于将很运行在移动设备上, 我决定先测试一下内存的使用量, 结果发现了很严重的内存泄漏, 在前前后后翻看了new 和delete并确认没有漏写的情况下, 泄露依然存在!调试后最终确认了问题是因为union的不当使用造成的, 下面开始还原现场: 1 typedef struct DATA_ 2 { 3 DATA_(int size = 10) 4 { 5 pVoid = new char[nSize]; 6 this->size = size; 7 } 8 virtual ~DATA_() 9 {10 ... 阅读全文
posted @ 2012-09-25 02:25 zcmmwbd 阅读(717) 评论(0) 推荐(0) 编辑
  2012年8月30日
摘要: cocos2d-x是一个开源且跨平台的2D(游戏)引擎,运用甚广……今天心血来潮打算学一下cocos2d-x,期间遇到了点小问题,于是乎把配置流程写出来让后来者可以有个参考。这里假设你已安装WIN8和VS2012(非express版本)1.下载cocos2d-1.0.1-x-0.12.0并解压(其他版本应该也差不多)这就没啥好说的了,搜索引擎一搜一把。解压到某个目录,这里用%COCOSROOT%来代替。2.安装模板安装前,需要先修改一下,使支持vs2012你需要做的:修改 %COCOSROOT%\install-templates-msvc.batecho./*echo.* Install C 阅读全文
posted @ 2012-08-30 17:34 zcmmwbd 阅读(3472) 评论(1) 推荐(1) 编辑
  2012年8月17日
摘要: 今天一朋友问我怎么实现PS中对指定区域进行填充的效果(这家伙在用C#做一个需要众多图形处理的项目)据我所知,Graphics有个属性Clip:获取或设置 Region,该对象限定此 Graphics 的绘图区域。好吧,这里我们不用这个方式,而是用另外一个位图(mask)来做有效区域标记。这种做法在很多图形库中都是存在的(比如openCV)。效果纹理贴图 和 mask: 效果图:左图是纹理贴图,右图是纯填充。实现首先需要准备一个mask究竟mask是个什么东西呢?这里的mask 是一个深度为8的位图且只有两个颜色索引的(0x00 , 0xff)黑白图像,用黑色表示非作用域。这里我用PS随便画了一 阅读全文
posted @ 2012-08-17 18:43 zcmmwbd 阅读(1834) 评论(0) 推荐(1) 编辑