开启辅助访问
 找回密码
 注册帐号

扫一扫,访问微社区

项目源码

关注:1061

当前位置:游戏蛮牛 资源专区 项目源码

查看: 621|回复: 9

[Unity] 写了个网络游戏框架Uwork包含服务端和客户端-

[复制链接]  [移动端链接]
2初来乍到
130/150
排名
14827
昨日变化
13

1

主题

17

帖子

130

积分

Rank: 2Rank: 2

UID
8864
好友
0
蛮牛币
275
威望
0
注册时间
2013-11-25
在线时间
88 小时
最后登录
2017-2-19
发表于 2016-12-24 16:25:45 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册帐号

x
项目地址:http://git.oschina.net/ximu/Uwork
[C#] 纯文本查看 复制代码
Uwork是包含服务端、客户端开发的一套框架。
1)服务器基于SuperSocket(http://www.supersocket.net/)
2)通信协议基于Json,使用Newtonsoft.Json序列化
3)Unity3d实现MVC
4)无需定义通信协议
5)多平台支持

[C#] 纯文本查看 复制代码
    服务端
//继承Ucontroller启动器自动加载并实例化
    public class TestController : UController
    {
        //框架启动完成,框架事件参考UEvent定义
        [UControllerAction(UEvent.INIT_FINISH)]
        public static void Init()
        {
            Console.Title = "测试服务器";
            UServer server = new UServer(2016);
        }
        //Hello测试
        [UControllerAction("msg.test.hello")]
        public void TestHello(USession session,string data)
        {
            Console.WriteLine(data);
            session.Send("msg.test.hello.resp", "Hello Client!!!");
        }

        //排行榜测试
        [UControllerAction("msg.test.rank")]
        public void TestRank(USession session)
        {
            session.Send("msg.test.rank.resp", 10, new List<string>() { "rank1", "rank2", "rank3", "rank4" });
        }
    }

[C#] 纯文本查看 复制代码

客户端
using UnityEngine;
using System.Collections;
using UFrameWork;
using System.Collections.Generic;

public class TestView : UView 
{
    public IEnumerator Start()
    {
        WaitForAction action = Action<WaitForAction>("cmd.connect.server");
        yield return action.Wait();

        if (action.IsTimeOut)
        {
            Debug.LogError("连接失败");
            yield break;
        }

        Debug.Log("连接成功");

        StartCoroutine(Hello());
        StartCoroutine(Rank());
    }

    private IEnumerator Hello()
    {
        WaitForAction action = Action<WaitForAction>("cmd.send.hello","你好服务器!");
        yield return action.Wait();

        if (action.IsTimeOut)
        {
            Debug.LogError("获取超时");
            yield break;
        }

        Debug.Log(action.Result<string>());
    }

    private IEnumerator Rank()
    {
        WaitForAction action = Action<WaitForAction>("cmd.send.rank");
        yield return action.Wait();

        if (action.IsTimeOut)
        {
            Debug.LogError("获取超时");
            yield break;
        }

        Debug.Log("self:" + action.Result<int>());

        List<string> list = action.Result<List<string>>(2);

        foreach (string v in list)
        {
            Debug.Log("rank:"+v);
        }
    }
}






回复

使用道具 举报

7日久生情
2057/5000
排名
443
昨日变化
1

0

主题

366

帖子

2057

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
115647
好友
0
蛮牛币
1717
威望
0
注册时间
2015-7-28
在线时间
581 小时
最后登录
2017-2-25
发表于 2016-12-26 23:11:18 | 显示全部楼层
还考虑加上对protobuf协议的支持吗?或者是可以自己方便的修改吗?对http,TCP,UDP都可以方便的使用吗??

回复 支持 反对

使用道具 举报

3偶尔光临
235/300
排名
6288
昨日变化
59

0

主题

37

帖子

235

积分

Rank: 3Rank: 3Rank: 3

UID
193802
好友
0
蛮牛币
302
威望
0
注册时间
2016-12-18
在线时间
69 小时
最后登录
2017-2-25
发表于 2016-12-27 18:01:41 | 显示全部楼层
viết một khuôn khổ mạng trò chơi Uwork bao gồm dịch vụ và khách hàng
[发帖际遇]: hyhy122 乐于助人,奖励 1 蛮牛币. 幸运榜 / 衰神榜

回复 支持 反对

使用道具 举报

2初来乍到
130/150
排名
14827
昨日变化
13

1

主题

17

帖子

130

积分

Rank: 2Rank: 2

UID
8864
好友
0
蛮牛币
275
威望
0
注册时间
2013-11-25
在线时间
88 小时
最后登录
2017-2-19
 楼主| 发表于 2016-12-28 08:29:30 | 显示全部楼层
daguang 发表于 2016-12-26 23:11
还考虑加上对protobuf协议的支持吗?或者是可以自己方便的修改吗?对http,TCP,UDP都可以方便的使用吗?? ...

网络部分使用的SuperScoket,可以支持奥http,tcp,udp。

protobuf只需要替换掉序列化部分就可以了

回复 支持 反对

使用道具 举报

6蛮牛粉丝
1298/1500
排名
1101
昨日变化
2

8

主题

280

帖子

1298

积分

Rank: 6Rank: 6Rank: 6

UID
29156
好友
2
蛮牛币
3694
威望
0
注册时间
2014-6-11
在线时间
302 小时
最后登录
2017-2-23

蛮牛哥

发表于 2016-12-30 16:23:47 | 显示全部楼层
赞,开源分享很不错

回复 支持 反对

使用道具 举报

3偶尔光临
270/300
排名
6712
昨日变化
7

1

主题

73

帖子

270

积分

Rank: 3Rank: 3Rank: 3

UID
20927
好友
0
蛮牛币
66
威望
0
注册时间
2014-4-11
在线时间
78 小时
最后登录
2017-2-12
发表于 2017-1-4 11:07:49 | 显示全部楼层
赞,开源分享很不错

回复 支持 反对

使用道具 举报

3偶尔光临
210/300
排名
11836
昨日变化
8

2

主题

133

帖子

210

积分

Rank: 3Rank: 3Rank: 3

UID
198779
好友
0
蛮牛币
159
威望
0
注册时间
2017-1-4
在线时间
37 小时
最后登录
2017-2-4
发表于 2017-1-5 03:44:10 | 显示全部楼层
这个思路不错,顶一个

回复 支持 反对

使用道具 举报

4四处流浪
313/500
排名
6773
昨日变化
62

3

主题

86

帖子

313

积分

Rank: 4

UID
146965
好友
0
蛮牛币
294
威望
0
注册时间
2016-4-27
在线时间
108 小时
最后登录
2017-2-24
发表于 2017-1-5 13:10:59 | 显示全部楼层
mark mark mark mark mark

回复 支持 反对

使用道具 举报

5熟悉之中
649/1000
排名
2876
昨日变化
10

4

主题

130

帖子

649

积分

Rank: 5Rank: 5

UID
81888
好友
2
蛮牛币
3918
威望
0
注册时间
2015-3-19
在线时间
191 小时
最后登录
2017-2-24
发表于 2017-1-10 10:13:23 | 显示全部楼层
这个思路不错,顶一个
[发帖际遇]: a601014006 乐于助人,奖励 1 蛮牛币. 幸运榜 / 衰神榜

回复 支持 反对

使用道具 举报

5熟悉之中
694/1000
排名
8808
昨日变化
135

0

主题

511

帖子

694

积分

Rank: 5Rank: 5

UID
189581
好友
0
蛮牛币
727
威望
0
注册时间
2016-12-5
在线时间
109 小时
最后登录
2017-2-24
发表于 2017-2-6 14:23:17 | 显示全部楼层
强大  给力啊  
[发帖际遇]: cs562981849 发帖时在路边捡到 2 蛮牛币,偷偷放进了口袋. 幸运榜 / 衰神榜

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则

快速回复 返回顶部 返回列表