UNET学习笔记3 - 网络系统的概念

服务器和 HOST

在Unity游戏里,一个游戏一般有一个服务器和多个客户端组成,但也可以没有服务器,用某一个客户端来同时做服务器用,这种就叫Host

在Host上的客户端叫Local Client,其他的客户端叫Remote Client。Local Client和服务器之间的通信是直接函数调用或者消息队列,因为他们是在一起的,实际上他们是共享scene的。Remote Client和服务器的通信就要通过网络链接了。

Unity的目标之一就是让Local Client和Remote Client对开发者来说是一样的,所以只用考虑一种就行了。

Instantiate and Spawn

在Unity里通过GameObject.Instantiate来创建游戏物体。在UNET里,物体也是通过“Spwan”的方式产生的,但只能在服务器上进行spawn,然后会同步到各个客户端上。一旦spawn了游戏物体,spawn管理系统就会对物体进行分布式物体生命周期管理和状态同步管理。

Players, Local Players and Authority

在UNET里Player物体是很特别的,因为这个物体是玩家控制的。这里还要区分一个是我的Player概念,因为不能把控制指令发送给其它Player,当一个Player随着链接一块产生时,我们就叫这个Player为“Local Player”,相应的属性 isLocalPlayer 会被设置为true,并且在client上OnStartLocalPlayer()会被回调。下图圈内的为Local Player:

时间: 2024-08-28 21:20:17

UNET学习笔记3 - 网络系统的概念的相关文章

Linux程序设计学习笔记----多线程编程基础概念与基本操作

转载请注明出处,http://blog.csdn.net/suool/article/details/38542543,谢谢. 基本概念 线程和进程的对比 用户空间资源对比 每个进程在创建的时候都申请了新的内存空间以存储代码段\数据段\BSS段\堆\栈空间,并且这些的空间的初始化值是父进程空间的,父子进程在创建后不能互访资源. 而每个新创建的线程则仅仅申请了自己的栈,空间,与同进程的其他线程共享该进程的其他数据空间包括代码段\数据段\BSS段\堆以及打开的库,mmap映射的文件与共享的空间,使得

.NET Remoting学习笔记(一)概念

目录 .NET Remoting学习笔记(一)概念 .NET Remoting学习笔记(二)激活方式 .NET Remoting学习笔记(三)信道 背景 自接触编程以来,一直听过这个名词Remoting,但是对他了解少之又少,近日有点时间,参考研究研究. 其相关概念本章不做详解,具体大家可以看下  http://baike.baidu.com/view/742675.htm?fr=aladdin  ,写的很详细. .Net Remoting概念 概念:一种分布式处理方式.从微软的产品角度来看,可

【转载】.NET Remoting学习笔记(一)概念

目录 .NET Remoting学习笔记(一)概念 .NET Remoting学习笔记(二)激活方式 .NET Remoting学习笔记(三)信道 背景 自接触编程以来,一直听过这个名词Remoting,但是对他了解少之又少,近日有点时间,参考研究研究. 其相关概念本章不做详解,具体大家可以看下  http://baike.baidu.com/view/742675.htm?fr=aladdin  ,写的很详细. .Net Remoting概念 概念:一种分布式处理方式.从微软的产品角度来看,可

Windows Media Foundation学习笔记1——MF核心概念

该笔记参考书籍<Developing Microsift Media Foundataion Application>,因此有不少是从该书中摘录的,如有侵权,不胜惶恐! MF核心概念:component(组件),这里的组件类似于directshow的filter,即针对某一特定功能封装成一个component,该特定功能可以是解码,编码,渲染等等,通过把这些component组合,形成pipeline,就可以完成多媒体应用程序所需的各种功能,跟directshow链接filter一样,保持fi

CCNA学习笔记7--动态路由协议概念和RIP

路由协议用于在路由器之间自动的确定路径和维护路由表 确定路径后,路由器可以路由被路由协议:即可以转发IP协议 工作步骤:接收其他路由器的路由信息 像其他路由器传递路由信息 根据收到的路由信息,计算出到达目的网络的最优路径,并由此产生路由表 对网络拓扑变化及时作出反应,并生成新的路由表,同时把拓扑变化信息向其他路由器宣告 总结:自动收集信息,根据自己的算法算出最优路径,生成路由表:定时更新并触发更新并且泛红 静态路由协议:动态路由协议 ◆距离矢量协议:每天路由器在路由信息上都依赖于自己的相邻路由器

计算机网络学习笔记(一) 计算机网络基本概念

v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VML);} .shape {behavior:url(#default#VML);} Ding Ding 4 120 2015-05-03T12:52:00Z 2015-05-03T12:52:00Z 1 167 957 7 2 1122 15.00 false 7.8 磅 0 2 false fal

[linux内存]伙伴系统学习笔记(一)——概念

1,伙伴系统的作用: 伙伴系统主要是为了高效使用物理内存,尽量减少内存碎片的产生 2,伙伴系统的概念: 系统中的内存总是两两分组,每组中的两个内存块称为伙伴 3,伙伴系统的原理:  伙伴系统是相对于struct zone而言,将每个zone的空闲内存分为最多11个数组,比如第一个数组里管理着2^0页的内存,所有这些2^0的页以struct page的lru域的双向链表相连接,第二个数组管理着2^1页的内存,所有这些2^0的页以struct page的lru域的双向链表相连接,以此类推,.....

[Linux内存]slab分配器学习笔记(一)--概念

http://blog.csdn.net/vanbreaker/article/details/76642961,为什么需要slab分配器: 利用伙伴系统进行分配内存只能按照页的单位进行分配,这样会造成很多的内存浪费,多了很多内存碎片,比如只需要申请10字节的,结果分配了一个页. 2,slab分配器和伙伴系统分配的差别 slab分配器是基于对象进行管理的,相同类型的对象归为一类(如进程描述符就是一类),每当要申请这样一个对象,slab分配器就从一个slab列表中分配一个这样大小的单元出去,而当要

SPL学习笔记(1)---概念

一:什么是SPL SPL是Standard PHP Library的缩写,他是用于解决常见问题的接口与类的集合. 常见问题是什么问题呢? 1:数据建模.数据结构. 解决数据如何存储的问题. 2:元素遍历. 数据如何查看的问题. 3:常用方法的统一调用. 通用方法(数组.集合的大小). 自定义遍历. 4:类定义自动装载. SPL框架包括数据结构.迭代器.基础接口.基础函数.异常.其他等. 二:SPL中的常用数据结构 1:什么是数据结构? 数据结构是计算机存储.组织数据的方式.是指相互之间存在一种或