【步兵 经验篇】lua2ruby 起因众所周知,当表格元素过多时,用起来会让人脑壳疼,所以有时会在一个单元格内,实现数据结构来减少复杂的,但是,json通常是首选,but json这玩意,书写起来确实不友好,不过如果神得复制粘贴精髓的话,用起来也还可以接受。设想相对json,lua的语法要简单的多(单说数据结构),省略了很多不必要的引号,冒号,偶尔多写过逗号也不会报错,json则严格的多,所以我觉得lua是一个更好的选...
【步兵 经验篇】网络管理的ui回调部分 起因最近做一个好友+邮箱系统的时候,在处理网络回调的时候,大体就是 送一个礼,送完之后禁用一个按钮。可能当时功能比较多,写的比较快,然后就这个给忘记判断ui是否opening了。然后我就构思了一下,如果从根源上避免这个问题,每次回调都要判断和处理界面是否被销毁,非常的麻烦,而且工作量大或者逻辑十分复杂的时候很容易忽略。于是就有了这篇文章。设想总结之所以是设想,就是因为项目有年头了...
【步兵 Lua】用github 淘 table2string function table2string(t, isFormat) local mark = {} local assign = {} local getFS = nil if isFormat then getFS = function(len) local ret = "" while len > 1 d...
【转载】A* 寻路的八个变种 变种 1 - 束搜索(Beam Search)在 A* 算法的住循环中,OPEN 集存储可能需要搜索的节点,用来以查找路径。束搜索是 A* 的变体,它限制了OPEN集的大小。如果集合变得太大,则丢弃给出良好路径的最差机会的节点。束搜索的一个缺点是你必须保持你的设置排序这样做,这限制了你选择的数据结构的种类。变种 2 - 迭代加深(Iterative Deepening)迭代加深...
【转载】性能分析之看专业的,来进步 有些东西可能,我们自己发现不了,但是总会专业的软件帮我们刨析。虽然是他为自己打广告,但无疑也是非常有技术含量的,我们也能从中受益。希望你能从下边两篇文章中你能得到进步或新的目标以下为原文连接: 【钻研篇】 http://blog.csdn.net/uwa4d/article/details/54344165 【巩固篇】 http://blog.csdn.net/uwa4d/article/d
【转载】APP瘦身之webp实践 APP的功能越来越多,APP的体积也随之增长。这会给用户的升级带来困扰,影响用户体验,因此app的瘦身就显得尤其重要了。app瘦身的方法有很多,随便一搜便能找到很多方案,例如开启混淆,开启shrinkResources,去除大型的第三方库等等。都是简单易于操作,并且效果明显的。除此之外,图片资源在apk中也是占据非常大的部分的,目前google官方都推荐的方法是使用webp代替jpg、png等图片,
【步兵 shader】扫光 【步兵 shader】扫光 By EOS.扫光这个需求很常见,一是给界面添加些许生气,二则是让界面上的重点突出出来。 往往 一个静止的界面中 突然有东西动了,就会很容易引起人的注意。实现方式扫光的实现方式有很多中,各有优缺点,可能你觉得shader实现是最高大上的,可能在美术眼里, 这种表现效果却是最low的,所以还是一切以最终要的效果为基准来定制策略。帧动画【spine或其他】 优点:效果
【步兵 经验篇】断点续传 【步兵 经验篇】断点续传 By EOS.虽然 基于cocos写的,但是也可以用于其他地方,核心是curl库,只要引用就可以实现。 既然curl库本身是有断点续传的接口的,不用岂不可惜?用途断点续传其实主要应用于游戏中资源的下载,代码才几K?完全没有必要,而且还降低了其他 问题的可能性,但是资源就不一样了,像现在很多游戏,都为了压缩包体,把各种资源都在, 进入游戏第一次进行下载,又或者后续的资源
【步兵 shader】封装篇 【步兵 shader】封装篇 By EOS.上篇介绍了基础,这篇先介绍下ShaderTools的封装,为以后打好基础。 注:这篇文章是基于cocos2dx的 文中有不懂的地方可去回顾上篇:《【步兵 shader】基础篇》几个相关的类首先介绍几个类GLProgram //shaderProgramGLProgramCache//可以存放已经链接过的shaderProgram
【步兵 shader】基础篇 【步兵 shader】基础篇 By EOS.上周学习了一下opengl的基础教程,跟做了几节,发现这些基本只是可以支撑写一些简单的shader了。 网站在这里 https://learnopengl-cn.github.io/,很不错的一个系列教程有喜欢的可以亲试一下。 我跟到了这节,发现我基本可以理解shader了,所以拿出来个大家分享一下。渲染基本流程
【日常吐槽 · 第八期】adb偶遇fooView 【日常吐槽 · 第八期】adb偶遇fooView By EOS.很酷的一个软件周五发现了一个叫fooView的软件,感觉很是新奇,鼓捣了一下,感觉还不错, 因为我的手机是带底部虚拟导航栏的,所以感觉有这个东西,能让屏幕开阔很多, 我用了一天感觉也没有什么不适应,所以我就来安利了 =。= 效果图大概就是这样。很多遍历的设置可以自行设置。 没有了底下纯黑的大黑底,舒服多了,不过因为我的手机
【步兵 lua】可配置化状态机,死磕行为树 【步兵 lua】可配置化状态机,死磕行为树 By EOS.前段事件阿法狗这么火,于是忍不住想搞一搞ai,然后很自然的就研究到了行为树。 不过一看感觉行为属很是别扭,不符合我的思维模式,看了下行为树的优缺点, 评估了下状态机的复用性和可配化处理实现,觉得没有问题,于是有了此片文章。执行效果废话不多少,先看看最终实现的效果图,只用了log简单的输出了一下=、=。
【步兵 经验篇】游戏常用的三个处理 横屏旋转我做过的手游游戏基本都是横屏模式,方法很简单很简单。在 AndroidManifest.xml 中android:screenOrientation="userLandscape"沉浸导航栏谷歌在安卓4.4之后提出了一个Immersive Full-Screen Mode的概念(官方介绍链接)精简出来的代码需要修改的地方如下
【步兵 cocos2dx】错误捕获和崩溃拦截 【步兵 cocos2dx】错误捕获和崩溃拦截 By EOS.周六又是一个加班日,周日一天感觉洗洗衣服、做做饭、打扫下卫生。。就过去了, 明天又要上班了,疲惫状态完全没有恢复过来,反而感觉更累了= =、,心好塞。 当然博客还要坚持写,拖延症是个这个坏毛病,不能惯着他~错误拦截(异常捕获)“异常捕获”基本上每一本语言入门的教科书中都会讲,为什么?因为很重要。
【步兵 cocos2dx】自动化测试 【步兵 cocos2dx】自动化测试 By EOS.之前在【步兵 经验篇】新手引导 一文中 也提到过通过不同的按钮事件来执行自动化的可能。 但是要求较高,需要再底层做好支持,才能实现可配置化的自动测试。 自古懒人出妙招,于是我又想到了一个新策略,来模拟点击事件,再通过录制和执行, 来完成自动化测试,好在实现模拟点击并不难,接下来进入主题吧。
【日常吐槽 · 第七期】进击的博客 我本来以为《进击的巨人》是个少年复仇的热血漫画,没想到到后边变成了揭露政治阴谋的漫画, 画风突变,这种反差令我的印象变得格外的深,再加上这种题材的漫画并不多见,所以我打算写 一篇博客来记录一下。(ps:我只看刺激肾上腺的热血漫,=、= 形象值+10)我在这里只记录主线剧情,战斗篇幅直接略过。从几个角色的发展路线分别来描述下:
【步兵 cocos2dx】热更新(下) 【步兵 cocos2dx】热更新(下) By EOS.上一篇把基本的理论都讲了一遍,接下来讲一下代码部分。 (ps:上下两篇讲完刚好,如果再来个上中下。。。岂不成三集篇了 =、=?)热更否我这边启动文件是用的Launcher.lua,里边做了一些简单的判断,和平台信息的初始化, 如果是不是真机的话,我们可以跳过热更新或者设置跳过解密处理,这样能提高调试的速度。
【步兵 cocos2dx】热更新(上) 【步兵 cocos2dx】lua的热更新 By EOS.之前写好的热更,基本可以在项目中使用,接下来拿出来跟大家分享一下。 话不多说,直接进入正题。。。总感觉两行长度差太多不舒服,现在好了。lua的热更新因为lua脚本的独立性和模块管理的灵活性,所以我们可以在程序不重新启动的情况下, 来卸载和重新加载lua脚本,但是因为独立,所以可以在任何结点进行重新加载, 但由于全局表本身和资源可能引发各
【步兵 cocos2dx】lua绑定 【步兵 cocos2dx】lua绑定 By EOS.最近想搞一搞自动化测试,涉及到luabinding,简单的写一篇教程。 不过并不打算写很仔细,因为这种东西网上太多一搜一大片。刚刚实现了模拟点击,绑定到lua上了,再读取个文件模拟各种点击行为, 配合脚本每个配置文件重启运行、遍历log文件,发现error就把log文件cp过来,统计报错。 感觉大有搞头,想想都美滋滋,趁着心情好写一篇刚刚
【步兵 cocos2dx】加密和混淆 正值端午佳节,大家都吃粽子了么=、= 开始秀公司福利了么? 秀吧,反正我是 我只服公务员和老师,为什么? 分楼啊QAQ 这事一个悲伤的话题。代码加密主要以lua代码为例,js还没怎么用过,并不熟悉。 lua的代码,有两种状态:明文的lua文件和二进制的luac文件。 luac文件即用luajit编译后的文件,不但起到了加密的作用而且还有性能上的大福提升。