记 移植ipad牙位图

本文记录了一次将iPad牙位图程序移植并进行性能优化的过程。通过分析,确定采用图像替换而非图像处理,重构了架构,引入场景和层的概念。在优化阶段,针对CPU占用高的问题,进行了多方面的调整,包括使用线程、缓存GDI+对象、减少无谓的绘图操作等,最终将CPU占用降低到4%左右。文章提供了优化的总结和参考资料。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

10月开始牙位图,一开始是老大给了张图片,说能不能实现,有没有想法,我原本以为是图像处理,给出了可以尝试当时程序中已经存在的一段处理人体图(OXH所写,已离职)的代码处理试试,然后老大让开始做demo,过程如下:
1. 找到程序出处,来自ipad一个牙位图程序,售价299美元,简单了解操作流程。


2. 尝试自己用Tilemap架构 设计了一个牙位图demo,采用CImage+双缓冲,引入了层的概念, 并且采用图片替换的方法,而非图像处理,效果不错,但是局限性在Tilemap地图式架构不够灵活,CImage只能简单图像处理。




2. 由于采用图像替换,需要大量的图片,而部门中没有美工无法提供,所以尝试先从ipa牙位图中提取程序,并且提取出资源图片png(mac编码和windows不同,费了一些时间),提取出1800张图片,变相的发现了其实ipad牙位图也是采用的图像替换的方法。

3. 确定非图像处理,而是采用图像替换,即一种状态一种图像,开始重构牙位图架构(想做成通用),参考了cocos程序的架构(2D引擎),引入了场景的概念,并且使用GDI+替换CImage,使图像处理更加灵活(埋下祸根,后文再表),写了3个基础框架类Scene->Layer->canvas。

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值