Photon Server4.0版本入门(二)创建一个Photon的ServerDemo
来源:互联网 发布:淘宝茶叶拍摄技巧 编辑:程序博客网 时间:2024/06/07 04:46
啧 看了一下很难找到Photon4.0版本的入门资源【因为大部分都是3.4的
正好自己也在入门阶段 写一个算是自己成长的记录
Photon有cloud/PUN和server可以选 当然我更想学PUN如果有大神有学习经验愿意传授不胜感激!
而这个系列只讲Server
虽然知道会不会有转载但
如果转载请注明出处标明原博客地址
上一章简单介绍了一下Photon,下面来做一个简单的Demo感受一下
1.服务说明
2.创建一个服务器
打开VS,文件>新建>项目,在VC#模板选择类库。名称为ChatServer,选好创建项目的位置,确定创建。删掉自动创建的Class1.cs(此时该项目下没有cs文件)。
打开解决方案管理器(调出解决方案窗口如图),右键引用>添加引用>浏览,选择photon的安装目录,在lib下选择[ExitGamesLibs.dll]、[Photon.SocketServer.dll]、[PhotonHostRuntimeInterfaces.dll]三个dll文件,确定引用。
引用成功后,在解决方案空白处右键添加>新建项>类,创建ChatServer类。
将ChatServer类继承ApplicationBase,添加Photon.SocketServer命名空间,并添加override函数,删掉throw。代码如下(此时CreatePeer会报错,无视之)。
using Photon.SocketServer;using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace ChatServer{ //继承自 ApplicationBase 的类 是server的入口程序/启动程序 class ChatServer : ApplicationBase { /// <summary> /// 当一个客户端链接到这个server端的时候调用 /// </summary> /// <param name="initRequest"></param> /// <returns></returns> protected override PeerBase CreatePeer(InitRequest initRequest) { } /// <summary> /// 当这个server端启动时调用 /// </summary> protected override void Setup() { } /// <summary> /// 当这个server被停用的时候调用 /// </summary> protected override void TearDown() { } }}
在添加一个ChatPeer类,继承ClientPeer(4.0之前的版本是继承PeerBase),补上命名空间,创建构造方法ChatPeer并添加override函数。代码如下。
using Photon.SocketServer;using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using PhotonHostRuntimeInterfaces;namespace ChatServer{ //用来跟客户端通信 class ChatPeer : ClientPeer { public ChatPeer(InitRequest initRequest):base(initRequest) { } protected override void OnDisconnect(DisconnectReason reasonCode, string reasonDetail) { throw new NotImplementedException(); } protected override void OnOperationRequest(OperationRequest operationRequest, SendParameters sendParameters) { throw new NotImplementedException(); } }}
此时再回到ChatServer类中,补充CreatePeer函数。CreatePeer函数代码如下。
/// <summary> /// 当一个客户端链接到这个server端的时候调用 /// </summary> /// <param name="initRequest"></param> /// <returns></returns> protected override PeerBase CreatePeer(InitRequest initRequest) { return new ChatPeer(initRequest); }
然后右键项目,选择属性,如图。
再在Photon目录下的deploy文件里创建一个ChatServer_TaidouDemo的文件夹,在ChatServer_TaidouDemo下创建bin文件夹。
回到VS。
点击浏览,选择刚刚创建的ChatServer_TaidouDemo下的bin文件夹(是bin文件夹!bin文件夹!bin文件夹)。Ctrl+S保存一下。
VS里选择生成>生成解决方案。生成结束后会发现ChatServer_TaidouDemo/bin里出现了一堆文件。
然后在vs里打开[xxx\deploy\bin_Win64\PhotonServer.config ]文件,用图粗暴的简单介绍一下这里头都是啥。
嗯很粗暴2333
在修改config配置文件之前运行一下LoadBalancing或MMO,确保能够正常启动。
我决定将ChatServer放在LoadBalancing下。
展开LoadBalancing,找到<Applications Default="xxx">xxx...</Applications>,配置我们自己的Application节点。
简单介绍一下:Name,和服务名一样;BaseDiretory,指你生成解决方案的位置,相对于deploy下的目录;Assembly,代表主类(继承自ApplicationBase的启动类)所在的dll文件名;Type的话,就是“命名空间.类名”;剩下的,copy别的就好了。
做到这个时候,配置就完成了。保存一下,运行一下的PhotonServer,然后启动LoadBalancing。
* 如果失败的话...看一下你的Logs,如果看不懂就....重启一下电脑...
如果能够成功运行,在logs里能找到这么一堆信息
哎呀运行了,感动...
模拟客户端进行测试下一章讲,加油(ง •_•)ง
- Photon Server4.0版本入门(二)创建一个Photon的ServerDemo
- Photon Server4.0版本入门(一)初识Photon Server 4.0
- Photon服务器入门二
- Photon(二)
- photon入门
- [Unity&photon]photon chat入门
- Photon学习笔记(二)
- Photon学习笔记(二)
- 新手学习Photon之创建Photon服务器
- Photon服务器引擎入门
- PHOTON基础入门
- Photon服务器入门教程二
- Unity Photon服务器(二)
- 使用PhotonServer和Unity建立一个棋牌类游戏实例(二)构建photon服务器与数据库的交互
- Photon Server的使用(一)
- Photon Server的使用(一)
- Photon Server的使用(一)
- Photon的使用
- Maven POM详解
- Lua 面向对象之继承的实现
- 自制 Minecraft 1.7.10 客户端
- 使用Robolectric做Android单元测试
- 树莓派ubuntu开机进入emergency mode解决
- Photon Server4.0版本入门(二)创建一个Photon的ServerDemo
- linux下mysql的卸载、安装全过程
- python的下一步
- 如何上传项目代码到GitHub
- 使用fiddle进行断点测试
- 数据结构实验之查找五:平方之哈希表(详解平方法解决哈希表冲突)
- 如何将换行符、特殊字符从html传到php,how to capture newline from input
- DataFrame转化成RDD-[2]schema法
- 51nod 1076 2条不相交的路径【边双连通+染色】