使用Photon引擎进行unity网络游戏开发(一)——Photon引擎简介

Photon
PUN
Unity
网络游戏开发

Photon引擎简介:

1. 服务器引擎:

服 务 器 引 擎 介 绍

  • 服 务 器 引 擎 封 装 了 一 系 列 网 络 通 信 方法, 开 发 者 可 以 直 接 调 用 这 些 方 法 , 实 现 网 络 通 信 的 功 能 ,
  • 服 务 器 引 擎 通 常 包 含 负 载 均 衡 技 术 , 自 动 完 成 网 络 通 信 中 的 性 能 优 化 以 及 异 常 处 理 。
  • 开 发 者 无 需 对 网 络 矩知识 有 很 深 的 了 解 , 即 可 实 现 高 性 能 和 高 可 靠 的 网 络 功 能 。

2. Photon服务器:

  • Photon 服 务 器 是 一 款 工 业 级 别 的 服 务 器 , 核 心 使 用 C + + 语 言 实 现 。
  • Photon 服 务 器 架 构 在 Wi ndows 操 作 系 统 平 台 , 支 持 可 靠 UDP 、 TCP 、 HTTP 以 及 Web Sockets 等 协 议 。
  • 允 许 开 发 者 使 用 C # 语 言 , 自 定 义 Photon 服 务 器 逻 辑 , 支 持 多 种 模 式 的 网 络 游 戏 。
  • Photon 服 务 器 的 部 署 选 择

    . Photon Server ( 本 地 )

    . Photon Cloud ( 云 端 )

3. Photon客户端:

Photon 客 户 端

  • Photon 引 擎 跨 平 台 功 能 优 秀 , 支 持 多 平 台 的 网 络 通 信
  • Photon 引 擎 针 对 各 个 平 台 , 提 供 了 对 应 的 客 户 端 SDK ,
  • 游 戏 引 擎 :
  • Unity ( Unity 3D SDK 、 Photon Unity Networking )
  • Unreal
  • Cocos2d-x
  • 客 户 端 平 台
  • Windows . Linux
  • Android

4. PUN(Photon unity networking)

  • 针 对 Unity 平 台 开 发 的 一 款 网 络 插 件 , 用 于 开 发 Unity 客 户 端 程 序
  • 封 装 了 游 戏 大 厅 与 游 戏 房 间 的 功 能 ,
  • 使 用 PUN 开 发 的 Unity 客 户 端 支 持 多 种 平 台 ;
  • 详 尽 的 技 术 文 档 和 精 心 设 计 的 学 习 Demo
  • 至 今 已 有 许 多 成 功 的 商 业 开 发 案 例 。

5. PUN + 本地photon服务器

  • PU N + 本 地 搭 建 的 Photon 服 务 器
  • · // 使 用 PUN 开 发 的 Unity 客 户 端 , 即 可 以 连 接 使 用 Photon Server
  • SDK 在 本 地 搭 建 的 Photon 服 务 器 , 也 可 以 连 接 在 Photon Cloud 上 的 Photon 服 务 器
  • Exit Games 公 司 没 有 在 中 国 区 域 部 署 Photon Cloud 服 务 器 , 使 用

    PUN 连 接 其 它 地 区 的 Photon Cloud 服 务 器 会 产 生 较 大 的 延 迟 !

6. Photon C/S通信

①:客户端向NameServer服务端发送有幸应用的Appld 和版本标识 符。

②:Name Serve 将管理该版本游戏应用的Master Serve IP 地址 , 发送给客户端 。

③:Unity客户端连接master server请求master server的游戏大厅列表。

④:master server发送游戏大厅列表给客户端。

⑤:Unity客户端向master server发送请求,创建或加入游戏房间。

⑥:master server将管理游戏房间的game server地址发送给客户端。

⑦:Unity客户端通过game server与其他客户端互相传递数据,实现unity客户端之间的信息传递。

7.PUN网络连接状态

使用Photon引擎进行unity网络游戏开发(一)——Photon引擎简介的更多相关文章

  1. 使用Photon引擎进行unity网络游戏开发(四)——Photon引擎实现网络游戏逻辑

    使用Photon引擎进行unity网络游戏开发(四)--Photon引擎实现网络游戏逻辑 Photon PUN Unity 网络游戏开发 网络游戏逻辑处理与MasterClient 网络游戏逻辑处理: ...

  2. 使用Photon引擎进行unity网络游戏开发(三)——网络游戏大厅及房间

    使用Photon引擎进行unity网络游戏开发(三)--网络游戏大厅及房间 Photon PUN Unity 网络游戏开发 连接到Photon ConnectUsingSettings 设置你的客户端 ...

  3. 使用Photon引擎进行unity网络游戏开发(二)——Photon常用类介绍

    使用Photon引擎进行unity网络游戏开发(二)——Photon常用类介绍 Photon PUN Unity 网络游戏开发 Photon常用类介绍: IPunCallback PUNGIPunCa ...

  4. unity 3d开发的大型网络游戏

    unity 3d开发的大型网络游戏 一.总结 1.unity的官网上面应该有游戏列表 2.unity3D是很好的3d游戏引擎,也支持2d,也能做很多画面精良的3A级游戏 3.范围:电脑游戏,手机游戏, ...

  5. 关于Unity游戏开发方向找工作方面的一些个人看法

     这是个老生常谈,却又是谁绕不过去的话题,而对于每个人来说,所遇到的情况又不尽相同,别人的求职方式和路线不一定适合你,即使是背景很相似的两个人,有时候机遇也很重要. 我本人的工作经验只有一年,就业方式 ...

  6. C# Unity游戏开发——Excel中的数据是如何到游戏中的 (一)

    引言 现在做游戏开发的没有几个不用Excel的,用的最多的就是策划.尤其是数值策划,Excel为用户提供强大的工具,各种快捷键,各种插件,各种函数.但是作为程序来说其实关注的不是Excel而是它最终形 ...

  7. Siki_Unity_4-4_丛林战争_Socket/TCP网络游戏开发

    Unity 4-4 丛林战争(Socket/TCP网络游戏开发) 任务1:素材.演示.Prerequisite 使用c#的有关TCP的底层API进行服务器端的开发(直接通过socket进行通信) 功能 ...

  8. 【Unity】开发WebGL内存概念具体解释和遇到的问题

    自增加unity WebGL平台以来.Unity的开发团队就一直致力于优化WebGL的内存消耗. 我们已经在Unity使用手冊上有对于WebGL内存管理的详尽分析,甚至在Unite Europe 20 ...

  9. 全球顶尖的内容创作引擎,Unity为创造而生

    5月11日晚,Unite Beijing 2018 Keynote主题演讲于国家会议中心圆满落幕.今年的Keynote主题演讲汇聚了12位重量级嘉宾,为参会者呈现出了一场属于Unity 2018的技术 ...

随机推荐

  1. Codeforce Round #554 Div.2 D - Neko and Aki's Prank

    dp 找规律 我好菜啊好菜啊,完全没有思路. 在合法的括号序列中,左括号数一定大于等于右括号数的,所以我们可以先定义平衡度为左括号数-右括号数. 然后可以发现一个惊人的规律..就是在trie同一深度上 ...

  2. Boost noncopyable实现禁止拷贝的类

    在C++中定义一个类,如果不明确定义拷贝构造函数和拷贝赋值操作符,编译期会为我们自动生成这两个函数.但是我们有时又希望禁止拷贝类的实例,这时可以私有化拷贝构造函数和拷贝赋值操作符即可. class d ...

  3. activiti获取到流程图节点信息之任务节点

    //获取bpmnModel对象 BpmnModel model1 = new BpmnJsonConverter().convertToBpmnModel(modelNode); //由于我们这里仅仅 ...

  4. [iOS]UIInterpolatingMotionEffect重力视觉差

    - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typica ...

  5. async函数结合promise的小案例

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. 使用ant design组件时,Select设置mode="multiple"或mode="tags"时遇到问题:Uncaught Error: must set key for <rc-animate> children

    import {Select} from 'antd'; <Select className={styles.edit_area_dialog_table_select_input_layout ...

  7. 14JavaScript条件语句

    条件语句用于基于不同的条件来执行不同的动作. 1.条件语句 通常在写代码时,您总是需要为不同的决定来执行不同的动作.您可以在代码中使用条件语句来完成该任务. 在 JavaScript 中,我们可使用以 ...

  8. 2.6 USB摄像头驱动之USB描述符

    学习目标:分析USB摄像头驱动的描述符: 一.USB设备描述符 在usb设备驱动分析那一节,也用到了usb描述符. usb描述符可分为: USB设备描述符(usb_device_descriptor) ...

  9. 第三章:文件I/O

    本章开始讨论UNIX系统的文件I/O函数,包括打开文件.读文件.写文件等. UNIX系统中的大多数文件I/O只需要用到5个函数:open.read.write.lseek和close.它们每执行一次都 ...

  10. 【 C 】高级字符串查找之查找标记(token)函数 strtok介绍

    我的csdn博客 一个字符串常常包含几个单独的部分,它们彼此被分隔开来.每次为了处理这些部分,你首先必须把它们从字符串中抽取出来. 这个任务有#include<string.h>中的str ...