Unity3D游戏制作学习记录01——丛林战争
Siki学院的视频教程指路牌:http://www.sikiedu.com/course/61.
学业繁忙…和朋友一起跟着siki的丛林战争的教程跟着做来交作业,仅用于学习笔记记录,最终的成品效果也不知道,翻不翻车我们拭目以待(●ˇ∀ˇ●)
TCP/IP介绍
在网络通信中,路由器是起到一个中转站的作用,发送的目的主机就是靠路由器识别IP转发,IP就是目的主机的地址。
IP粗略分类:
局域网IP:是可以通过ipconfig查询到的,是在连接同一个路由的主机构成的一个局域网内,由路由分配的IP。在这个局域网内,IP唯一且不可重复。(本地坐标系)
公网IP:不可以在本地查询,它是该局域网内的主机对于外界的位置标识,是同一局域网内主机共享的IP。可以通过百度查找得到。(世界坐标系)
端口号
由于IP可以定位到主机,主机上不同的要通信的程序占用着不同的端口,因此要到软件的话,需要IP+端口来定位。
一、服务器端——简单收发
① 工程创建
VS2019 项目类型:C# .Net Framework 控制台应用
创建服务器项目:TCPServer
② 代码编写
实现步骤
- 创建套接字,一般是指定套接字绑定ip的类型(IPv4/IPv6),套接字通信的类型,套接字所使用的协议;
- 为套接字绑定IP;由于现在的主机一般都是配置了两个网卡,有的甚至更多,我们要让这个套接字知道是监听哪一个ip的通信消息,所以要为套接字绑定IP。
关于IP:我们除了ipconfig 查看到对应IP,也可以填写“127.0.0.1”,这个IP是默认当前主机的IP,如果实在不清楚,就可以直接写这个。
IPaddress: 就是IP地址,即127.0.0.1
IPEndPoint: IP:Port,IP地址加上端口号127.0.0.1:xxxxxx - 把套接字开启监听,监听方法的参数是int类型的,它表示的是处理客户端请求的数量,即可以处理的等待队列的长度,但不表示可以容纳服务器的最大连接数,参数为0时表示无限制。
class Program
{
static void Main(string[] args)
{
//用于通信的套接字: IP类型,套接字类型:管道通信, 协议:TCP
Socket serverScoket = new Socket(AddressFamily.InterNetwork, SocketType.Stream,P