大家好!我是Jerry,今天我也打算开始写博客,记录一下我的unity游戏开发笔记,这个DevLog能不能坚持写下来 还真的不得而知,我只能尽所能把开发过程中遇到的问题 思路 解决方案 进度更新做一些整理并且记录下来供参考。首先来一张目前的开发截图。
之前的半个月里可谓是煎熬啊,对于优化整个框架花了不少精力,首先是渲染的优化,如果有官方源码的朋友可能会感觉,官方的渲染方式可谓是古董中的古董。它的原理是将图形的点阵颜色写入文件压缩编码。然后在Runtime的阶段 用CPU计算颜色 使用Dx进行FastBlit的 我后来尝试过SDL的blit,开源给广大爱好者:石器时代SDL手机端源码,感觉还是有优化的空间,就把图像信息改成了png,然后利用shader进行GPU绘图了。这个动作,可谓是废了九牛二虎之力啊,硬盘嘎吱嘎吱的响,要知道2.5精灵王的传说这个版本 图档解压就有好几个G大。 24万张图片。。。
图档优化完毕!就开始对内存和CPU进行优化,之前设计了一个类SaCoords 里面有大量的字符串拼接作为Key来索引。每个拼接0.03ms 量大了开销就很大了 ,后来还是改成了多层字典嵌套索引,虽然我还是不太喜欢这种方式,但目前还没有更好的方法。
另外,内存的占用还有优化的空间, adrn和spradrn的载入占用将近70M的内存 需要优化 优化成按需加载 不需要缓存,不过目前这个优先级不高。
毕竟是托管的代码,为了减少运行时的计算量,我把很多固定不变的计算挪到了开发阶段。比方说建筑的相对层级遮挡关系 我挪到了map文件里记录了下来。这样地图里的建筑物在运行时就不需要计算遮挡层级啦!
这两天刚刚从别人那里弄到UI没有美工的程序员真悲催,先凑合着用吧,UI我打算用lua写了,之后会有很多底层到lua的接口要封装,也希望能整理一套通用的lua方案吧,第一集就写这么多,后面的内容敬请期待!QQ:908411390