Announcement

Collapse
No announcement yet.

请教大神,怎么实现手机平台上的c++热修复

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    请教大神,怎么实现手机平台上的c++热修复

    我们公司的游戏主要用C++实现的,对于上线的游戏,如果代码有BUG,那就要发新版本才能修复,尤其是IOS平台,怎么样才能让c++像脚本一样可以发补丁修复呢?

    #2
    UE4内部自带的补丁系统只适用重载式更新,比如Windows平台的补丁模式就是更新exe或pak,DLC模式就是增加pak
    IOS自古没有任何引擎支持热脚本,热资产是可以的。(蓝图打包的时候只要不原生化都是资产)
    可以参考Unity的做法(这个做法不是官方的,也是开发者自己弄的一套,注意不是热更新,热更新指的是更新资产)
    等于C++开发内核API接口,然后使用第三方脚本调用,这个脚本可以是lua python js等。
    js脚本解析有微软的ChakraCore还有谷歌的V8 ,难度都超级大
    lua轻便,全是lib方式集成,这个对开发最友好。
    pyhon需要自己配制跨平台库也比较麻烦。

    从系统核心开发人员角度出发lua成本最低。但感觉比不上直接使用蓝图。(IOS包我没打过,不知道是否将蓝图转C++编译了)
    这些解释性脚本都被打成资产形式,是可以随时替换的。(但加密不强也随时被别人修改)

    Comment


      #3
      但如果你的C++开发的游戏没有逻辑成分,都是属于供功能化的核心接口,那就老老实实的完整更新吧。苹果商店不支持某文件更新这种说法.

      Comment


        #4
        我们几乎不用脚本语言开发,逻辑都是c++写的,未来也不会换成脚本语言,难道没有什么技术能够做热更c++到这个事情吗?

        Comment


          #5
          没有
          你用核心地方写逻辑没办法弄,被C++编译过的就是程序本体。windows上就是exe自身。移动平台同理

          Comment

          Working...
          X