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

扫一扫,访问微社区

项目源码

关注:1020

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

查看: 402|回复: 8

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

[复制链接]  [移动端链接]
2初来乍到
126/150
排名
14557
昨日变化
26

1

主题

17

帖子

126

积分

Rank: 2Rank: 2

UID
8864
好友
0
蛮牛币
259
威望
0
注册时间
2013-11-25
在线时间
84 小时
最后登录
2017-1-16
发表于 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日久生情
1896/5000
排名
496
昨日变化
1

0

主题

303

帖子

1896

积分

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

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

回复 支持 反对

使用道具 举报

2初来乍到
124/150
排名
9784
昨日变化
162

0

主题

33

帖子

124

积分

Rank: 2Rank: 2

UID
193802
好友
0
蛮牛币
182
威望
0
注册时间
2016-12-18
在线时间
33 小时
最后登录
2017-1-18
发表于 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初来乍到
126/150
排名
14557
昨日变化
26

1

主题

17

帖子

126

积分

Rank: 2Rank: 2

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

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

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

回复 支持 反对

使用道具 举报

6蛮牛粉丝
1262/1500
排名
1115
昨日变化

7

主题

278

帖子

1262

积分

Rank: 6Rank: 6Rank: 6

UID
29156
好友
2
蛮牛币
3195
威望
0
注册时间
2014-6-11
在线时间
289 小时
最后登录
2017-1-13

蛮牛哥

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

回复 支持 反对

使用道具 举报

3偶尔光临
266/300
排名
6565
昨日变化
4

1

主题

72

帖子

266

积分

Rank: 3Rank: 3Rank: 3

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

回复 支持 反对

使用道具 举报

2初来乍到
146/150
排名
15684
昨日变化
1531

2

主题

103

帖子

146

积分

Rank: 2Rank: 2

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

回复 支持 反对

使用道具 举报

3偶尔光临
272/300
排名
7107
昨日变化
7

3

主题

73

帖子

272

积分

Rank: 3Rank: 3Rank: 3

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

回复 支持 反对

使用道具 举报

5熟悉之中
557/1000
排名
3231
昨日变化
31

4

主题

110

帖子

557

积分

Rank: 5Rank: 5

UID
81888
好友
2
蛮牛币
3515
威望
0
注册时间
2015-3-19
在线时间
163 小时
最后登录
2017-1-17

迈向小康

发表于 2017-1-10 10:13:23 | 显示全部楼层
这个思路不错,顶一个
[发帖际遇]: a601014006 乐于助人,奖励 1 蛮牛币. 幸运榜 / 衰神榜

回复 支持 反对

使用道具 举报

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

本版积分规则

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