归档 2020年4月

最后更新于 .

前天,版号的代办公司在群里毫无征兆的发了这么一条消息。

那一瞬间,我其实有点懵,似乎还没有意识到这对我意味着什么,对《矩阵危机》意味着这什么。
旁边的同事还在有节奏的敲打着键盘,间歇的几句讨论,一切看起来都还在正常的运作。
我该怎么回应,怎么面对,我不知道。
我只能凭借本能,友好的感谢了为我们代办的公司,并期望下一次合作。

直到过了两天,我才终于能正常的思考这件事情。

是我的错。

事情的起因,是因为总局的审核人员发现了我们游戏在线上运营。

我说一下我们的实际情况吧

  1. IOS

    • 上线:上线AppStore
    • 支付:开通
    • 广告:开通
  2. Android

    • 上线:仅在TapTap和阿里积木计划开放测试
    • 支付:关闭
    • 广告:开通

而因为版号等待期间,我们基本没做任何推广,所以所有收入加起来不足500元。

所以整个事件的过程就是:

  1. 总局发现我们有上线运营,责令修改。
  2. 我们写收入证明,保证书,下架所有平台。
  3. 总局审核不通过,驳回版号申请。

我为什么说是我的错?
因为错在对规则不熟悉。
但凡我对这个行业再熟悉那么一点点,就不会犯下这个错误。

那版号打回对游戏的影响是什么呢?

  1. 游戏无法上线国内所有平台
  2. 国内无法签发行团队 ...

最后更新于 .

本来下午一直在纠结用什么设计关卡地图的事,中间还考虑过使用excel,但是发现很难用。后来美术随口说了一句,用瓦片地图怎样?我说那个只能固定格子来排列吧,他说可以不用的。我这才去试了一下,果然可以。

Tiled 有如下几个很方便的功能,跟大家分享一下。

  1. 对象层创建的对象,位置是可以不严格按照格子来定位的。

    这里有几种选择:

    1. 将地图的属性中的格子大小调小。比如我们认为1米对应100像素,那么一个1.8米的人就是180像素高。

      如果我们认为对齐的精度只要到10像素即可,那么就可以将格子大小调整为10x10。

      之后选择 视图 -> 捕获 -> 对齐网格,或者移动对象的时候按住ctrl,就可以实现对象位置自动对齐网格了。

    2. 就是希望自由定义位置,那就什么也不用改。

  2. 对象支持类型以及属性

    这样对编程就非常方便了,代码可以通过对象不同的type来区分大类,之后再以对象name来区分小类,然后再通过属性获取具体的数据。

    对地图编辑也非常友好,因为不同的类型可以设置不同的颜色,这样编辑的时候就非常清晰了。

    值得一提的是,对象类型是不绑定在单个地图上的,所以如果需要创建多个地图的话,是可以公用对象类型的。

  3. 对象支持模板

    这个也是对于编辑多张地图非常重要的事,非常幸运的事,tiled支持了它。

    1. 首先要在 视图->视图和工具栏->模板 这里打开模板。
    2. 之后随便创建一个对象,比如一个hero。再其上点击鼠标右键,选择保存为模板hero.tx ...

最后更新于 .

一. 简述

我们用最精简的模型来描述一下帧同步。

客户端检测服务器的逻辑帧 -> 拿到逻辑帧 -> 进行处理 -> 处理出结果 -> 完成本次逻辑帧处理 -> 表现层将处理结果渲染到屏幕上 -> 结束

客户端检测用户操作 -> 打包成action -> 上报到服务器 -> 结束

在此基础上,客户端可以通过缓存帧,平滑帧,预测,插值,等方案优化表现层的效果及手感,但是底层模型是一样的。

比如缓存帧就是客户端检测到新的逻辑帧之后不立即处理,而是先缓存到一个队列中,等到满足一定数量之后,才对队列popFrame进行处理。

而平滑帧,则是在缓存帧的基础上,将popFrame的操作做成定时操作,从而抵抗网络波动导致逻辑帧到达的时间间隔不一致问题。

帧同步游戏一定要分为逻辑层和表现层。

表现层怎么折腾都可以,但是逻辑层必须保证确定性。

那么哪一部分属于逻辑层呢?

拿到逻辑帧 -> 进行处理 -> 处理出结果 -> 完成本次逻辑帧处理

打包成action -> 上报到服务器

所以,平缓帧的实现方案中,才能用普通的 ...

最后更新于 .

是的,现在是凌晨2点,而我还在写这篇博客。

因为从4月份开始,苹果的这封邮件里面的错误就必须得处理了。

Dear Developer,

We identified one or more issues with a recent delivery for your app, "PandaDemo" 0.1 (232343). Your delivery was successful, but you may wish to correct the following issues in your next delivery:

ITMS-90809: Deprecated API Usage - Apple will stop accepting submissions of new apps that use ...

最后更新于 .

最近把unity升级到了2019.3.4f1。
至于为什么要升级,em。。。好吧,我承认我是馋她身子(笑)。
毕竟我两年前第一次接触unity的时候就觉得UI丑了,而这次终于新版本换了扁平化的UI,深得我意,没道理不升级啊。

但是没想到,这就是恶梦的开始。。

其实半年前我们原来的客户端研发还在的时候,就尝试升级过unity,但是后来回退了,而现在,我切实知道什么原因了。

这里主要是通过几个案例,来分享一下定位bug的分析过程,以及我这几年总结的一个定位bug的杀手锏。

一. Android平台Spine动画失效,游戏内全是白块

如图:

这个问题是当时回滚版本的主要原因。

因为自己对unity不是很熟,对客户端代码也是刚接过来,所以这个问题查起来也是一头雾水。 由于没有办法通过看代码来定位问题(看不懂),所以我们只能用别的方法了。

先把能解决的解决一下:

  1. 升级spine的运行库版本。
  2. 升级spine编辑的版本,重新导出动画。

但是很遗憾并没有解决。。
不过这里说个题外话,这里的升级还是很有用的,官方确实了改进了unity2019.3的兼容性,从而很方便的解决了局内物品白块和局外某个英雄动画无法播放的问题。

OK,先来看几个现象:

  1. 虽然都是使用了spine动画,但是局外动画没问题,只有局内动画有问题。
  2. 局内动画使用像素风格,并且支持皮肤换装;局外动画为正常风格,不支持皮肤换装。

从上面的现象可以思考几个问题的可能性:

  1. 像素图片的Filter Mode ...

每日归档

上个月

2020年3月

下个月

2020年5月

归档