photon引擎的photon引擎的相关术语

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了photon引擎的photon引擎的相关术语相关的知识,希望对你有一定的参考价值。

参考技术A

Ack内部使用的命令,主要功能是用于实现可靠UDP。
Actor进入房间的玩家叫“Actor”。Actor在房间内有个编号(ActorNumber),编号仅在当前房间有效。
ApplicationApplication指的是游戏逻辑应用,由C#语言书写同时由Photon引擎负责启动运行。所有的应用均从Application继承。
Binaries FolderBinariesFolder指的是针对不同平台编译出的Photon目录,以“bin_”为前缀命名目录,且放置在服务端SDK的“deploy”目录中。
Build script即MsBuild项目的批处理文件,实现发布应用时候的编译程序拷贝文件等功能。请关注VS生成菜单下的清理项目选项。
Business logic即游戏逻辑,运行在Photon引擎中,负责处理operation和event。
Channel在Photon引擎中channel主要用于分割通信用,在同一channel中所有的operation和event都是顺序执行的。
CommandCommands主要用于在eNet协议层上实现数据传输、建立连接关闭连接等功能。当然您无需书写什么命令,在这里提出来,仅仅是为了加深您对Photon引擎的理解。
Connect在客户端向photon引擎发送请求之前在客户端和服务器之间必须要建立连接才行。
Custom Operation任何非客户端API内的或新的服务器端的(不在Lite应用中)客户端操作。
DashboardDashboard主要负责收集计数器信息,同时在web站点上生成图标以便于监控。
Deploy Folder即发布目录,在服务端SDK中,deploy目录包含了Photon引擎运行的所有需要的文件:Photon核心文件和应用程序文件。
Device通常指的是移动终端,或者其他可以运行客户端程序的设备。
Disconnect即服务器和客户端断开操作。通常发生在客户端断开连接或连接超时时候;服务器也可以根据需要断开和客户端之间的连接。
EventEvent是异步发送给客户端的事件消息。可以由操作(operations,如sideeffect)触发或引发(这是operation的主要目的)。事件由事件代码(Eventcode)标识,事件来源则是ActorNumber。
EvCode即EventCode简称,标识事件的类型以及事件所附带的信息。
Game根据上下文,可能是单机的也可能是多个玩家之间有轮次的比赛。Lite则是后者,玩家可以加入到房间内相互游戏。
Latency即请求回应时间,服务端和客户端可能有所不同。
Lite即Lite应用,您入门的基本游戏逻辑。
Lobby大厅,即“Lite大厅”或“游戏房间”。
Lobby Roomlobby room是大厅应用的一个特殊的房间。它不关注玩家进出游戏房等操作,而是列出游戏列表供玩家选择。
Log FilesPhoton作为服务程序运行,没有图形化界面(GUI),因此需要有日志记录。目前有两套日志:一套是应用的日志,日志文件存于deploy/log目录中;另外是Photon引擎自身的日志,记录到deploy/bin_*/log目录中。
Matchmaking负责查找游戏建立比赛。Lite应用无此功能,只能根据名称加入游戏房间。Lite Lobby则是列出了所有游戏房清单出来便于查找。
NNet即eNetRUDP之前的叫法,主要由“eNet”和“Neutron”两个单词混合而来。
Operation对在Photon服务器端上远程方法调用的另外一种叫法。客户端使用operation可以在服务器上做任何事情,甚至可以发送event给其他客户端。
OpCode“Operation Code”的简称。byte类型,用于触发服务器端操作,客户端获取操作返回结果,用opCodes判断返回动作类型。
Peer即连接到Photon引擎的客户端,另一方面Photon服务器端也是Peer,且只有一个。
Photon Core指的是Photon引擎的核心,由c++语言实现,负责处理连接以及eNet协议。
PhotonControlPhoton的管理工具,打开PhotonControl.exe文件即可开启一个托盘应用。
PhotonServer.configPhoton引擎的配置文件,主要用于IP、应用以及性能检测设置。以前叫PhotonSocketServer.xml,刚刚改为PhotonSocketServer.config。
Policy File即证书文件,由证书应用负责发送crossdomain.xml。像Unity Webplayer、Flash以及Silverlight等web游戏平台在连接服务器之前都需要得到授权才可以运行。
Reliable即可靠命令,要么到达目的地要么超时断开。可靠命令在信道中是顺序传输的,同时若有丢包情况,则会重复发送直到确认成功收到。
ReturnCode每个Operation返回的初步结果,用一个字节的值表示,可以通过ReturnCode检验操作成功与否:RC_OK == 0 表示操作成功,否则操作失败。
Room即一组玩家或客户端的集合,可以用于游戏、聊天大厅或者其他方面。Room是Lite框架中的一个类。
RUDP即可靠UDP:在UDP协议基础上实现的可靠数据传输协议。
Socket Server即Photon引擎的另外一种说法。
Timeout使用eNet方式,客户端和服务器端都监视对方消息是否可靠,如果检测到长时间没有回应,则会断开连接。
Unreliable不可靠的命令则不需要对方回应,它顺序发送数据,可能会有数据丢失,数据序列有“漏洞”。

一Photon 引擎

 

Photon简介

Photon是一套使用广泛的socket server引擎,服务端底层C++编写,客户端C#编写,跨多平台,收费,效率可观的一款引擎。实用上前有九城游戏(原魔兽世界代理),现在笔者发现多款腾讯旗下3D游戏同样有该引擎的身影;Photon也是比较早且成熟的与Unity携手工作的引擎之一。Photon在多人在线共享游戏场景保持平台和多玩家(多客户端)性能优越。由于网络资料偏少,个人理解偏差的期待指出分享。本文Photon版本v4

官方资料:

官方服务端和客户端下载
https://www.photonengine.com/OnPremise/Download
官方论坛
http://forum.photonengine.com/
官方文档和示例
http://doc.photonengine.com/en/onpremise/current 

 

 1、服务端下载

技术分享

2、授权下载:

登录自己的账户,在https://www.photonengine.com/zh-CN/OnPremise/Dashboard 下载photon授权,免费版的限制是100ccu,试用版限制时间30天无人数限制

技术分享

3、安装

photon server的安装其实就是解压

deploy编译发布版本的服务端、src可以看到开源的代码示例、doc里相关官方文档、lib使我们开发时候需要的photon相关dll都在这里

技术分享

 

4、运行

 笔者64位系统,把下载的license文件放入解压出来的server目录里deploy\bin_Win64,直接打开deploy\bin_Win64目录下的PhotonControl.exe ,打开后默认在系统任务栏显示一个图标,右键start as application 然后open logs

看到弹出的service is running……就是启动成功了。 

技术分享

技术分享

技术分享

 

以上是关于photon引擎的photon引擎的相关术语的主要内容,如果未能解决你的问题,请参考以下文章

photon引擎的photon引擎5分钟快速入门

一Photon 引擎

使用Photon引擎进行unity网络游戏开发

二Photon v4引擎基础开发框架——开发第一个Photon程序

在Unity中使用Photon(网络多人联机)

What is Photon Server?