用 Unity 开发 MMO 类似的多人在线游戏使用什么样的网络方案? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Game Engines
Unreal Engine
MyCryENGINE
denghongcai
V2EX    游戏开发

用 Unity 开发 MMO 类似的多人在线游戏使用什么样的网络方案?

  •  
  •   denghongci 2016-02-22 14:42:43 +08:00 12131 次点击
    这是一个创建于 3524 天前的主题,其中的信息可能已经有所发展或是发生改变。

    目前用的 Unity 5 ,内置的有 UNET ,看起来挺美好,对象状态的同步之类的都帮你做了

    但是怎么看怎么像只适合局域网联机的游戏用,官方提供的 Internet Service 又让人觉得很虚,总不能把基础都交给别人吧

    我现在的想法是按照 Unity 的 API ,以尽量兼容的方式写一个自己的框架出来,也得解决状态同步之类的事情,但是 UNET 封装的太严密了,反而没有 Unity4 的好加个 wrapper

    有做游戏开发的同学可以分享一下网络联机的方案吗?

    15 条回复    2016-03-29 21:33:27 +08:00
    yueyoum
        1
    yueyoum  
       2016-02-22 16:37:06 +08:00
    服务器 bind 到一个地址 监听,
    客户端 socket 连接

    处理消息,同步状态,
    dustfall
        2
    dustfall  
       2016-02-22 16:46:21 +08:00
    推荐去看 ue4 的官方文档和源码
    MiguelValentine
        3
    MiguelValentine  
       2016-02-22 17:00:13 +08:00
    虽然帮不上才才什么忙,我还是可以来吹水的
    denghongcai
        4
    denghongcai  
    OP
       2016-02-22 17:36:01 +08:00
    @dustfall Unity 5
    denghongcai
        5
    denghongcai  
    OP
       2016-02-22 17:36:07 +08:00
    denghongcai
        6
    denghongcai  
    OP
       2016-02-22 17:40:10 +08:00
    @yueyoum Unity 5 把老的比如 NetworkView 之类的都标为 deprecated 了,新的 High Level API 封的太死

    看来自己重新写一套是最好的选择了,基础库还是逃不掉的
    skyblue     7
    skyblue  
       2016-02-22 17:40:48 +08:00
    虽然帮不上才才什么忙,我还是可以来吹水的
    skyblue
        8
    skyblue  
       2016-02-22 17:41:22 +08:00
    虽然帮不上才才什么忙,我还是可以来吹水的.
    yuchting
        9
    yuchting  
       2016-02-22 20:53:47 +08:00   1
    我使用的是 socket(System.Net) + 自定义协议+Google Protobuff ,服务器用 java 的 Netty ,完鸟。

    从不用自己看不了或看不懂的库。
    fffonion
        10
    fffonion  
       2016-02-23 09:47:32 +08:00 via iPhone
    噫你怎么开始做游戏了[doge]
    我之前看到过一个手游,是 unity 里搞 websocket …
    gao117348222
        11
    gao117348222  
       2016-02-23 09:48:56 +08:00
    给你一个关键词 unity photon
    denghongcai
        12
    denghongcai  
    OP
       2016-02-23 11:23:06 +08:00
    @fffonion 诡异的工作 2333 ,也是当玩啦
    denghongcai
        13
    denghongcai  
    OP
       2016-02-23 11:24:40 +08:00
    @gao117348222 谢谢,这个 framework 看起来比 UNET 靠谱多了
    chrislon
        14
    chrislon  
       2016-02-28 09:36:00 +08:00
    @denghogcai http://v2ex.com/t/259592 正好有 Unity5 的 demo
    kytoo
        15
    kytoo  
       2016-03-29 21:33:27 +08:00
    普通 socket + Google Protobuff ,经历数个项目感觉稳定良好。

    另推荐使用开元的 NF 服务器引擎, https://github.com/ketoo/noahgameframe

    目前引擎已在数个大型商业游戏使用过,有支持 unity 的客户端源码和网络库,稳定,高效的开发方法,正好满足你的需求。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     935 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 33ms UTC 19:39 PVG 03:39 LAX 12:39 JFK 15:39
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86