首页视频教程脚本编程 / 系统开发Unity3d / Unreal Engine UE4、Unity3d连接c++ 自定义游戏服务器

UE4、Unity3d连接c++ 自定义游戏服务器

Unreal Engine Unity3d

分享

Loading...

收藏

学习热度:21821

适用行业:游戏引擎

课程时长:1800分钟

课程难度:高级

学习路径: 系统程序开发专项学习

Image

课程简介

 1、本课程服务器框架主要使用c/c++语言开发,c++11标准,vs2019作为IDE,开发windows和linux的代码,工作效率高效。要求学习人员具备c/c++语言基础知识,熟悉windows/linux操作系统环境,并具备一定的Tcp/IP知识。
2、功能为自定义游戏服务器。支持跨平台:Windows和Linux。
3、本课程没有使用任何第三方网络库,Windows平台下使用IOCP结构搭建底层服务器。Linux平台下使用epoll结构搭建底层服务器,使用TCP/IP协议,流式套接字,长连接。
4、服务器采用单进程单线程 [业务逻辑单线程 网络IO多线程] , 通信方式使用自定义数据、结构体,也支持第三方的protobuf协议。单服务器支持1W+长连接,分布式服务器组理论是硬件支持,支持人数屋无上限。
5、服务器客户端底层采用预开辟内存的方式,整个框架运行期间不会内存溢出,非常稳定。底层使用自定义HasyArray模板类,插入,删除,修改,查找速度非常快,时间复杂度O(1),性能高效,不会随着连接数上升效率低下。
6、整个服务器框架简洁明了,框架结构清晰。学习本教程,大概一周就能学会。封装好的服务器框架,不熟悉的人员使用,只需要几个小时就能熟悉使用,不用关心底层使用。
7、架构分布式负载均衡游戏服务器组,各个服务器之间通信使用socket。各个服务器可以架设在不同的物理机上,也可以架设在一个物理机上。
8、纯C++客户端,主要用于各个服务器之间通信的客户端。支持windows和linux。
9、UE4 客户端。使用ue4 Socketsubsystem 通信,支持跨平台windows、IOS、android等。
10、Unity3d客户端。使用c# TcpClient通信,支持跨平台windows、IOS、android等。
11、本课程不会长篇概论的讲解理论知识,重点是实战,让学员直接掌握一套可以商业化的服务器。少走弯路,避免采坑。
注意事项
1、 本课程理论知识讲的很少,重点是偏实战完成一套服务器框架,购买前请慎重看清楚再购买。
2、 购买本课程需要有编程基础,熟悉c++语法知识和了解网络编程Tcp/IP知识,以及ue4或unity3d知识,购买前请慎重看清楚再购买。
3、 全部课程使用手动敲代码编程讲解教学方式,服务器没有使用任何第三方网络库,linux服务器部分不提供源码,其他提供源码,linux部分按照教学视频你可以完成一套框架。目的是强迫大家一起边学边写,真正理解到框架的精华。购买前请慎重。谢谢各位,非喜勿喷。

课程信息

教学总长度30小时,使用软件:vs2015,vs2019,UE4.19, Unity2018.4.14。

交流答疑

对于课程内容相关的疑问,提供有交流群,不但可以在群里与同学交流,分享资料,与教程内容有关的技术问题还可以进入答疑专区寻求帮助。老师一般会在2个工作日内为您解答。

核心知识点

Image

windows IOCP服务器

教学使用vs2019搭建windows IOCP服务器,定义数据结构,采用windows下的WSASocket接受新的连接,接收、发送WSASend数据。

Linux epoll服务器

教学使用vs2019搭建linux epoll服务器,定义数据结构,采用标准c++ soceket接受新的连接,接收recv数据,发送send数据。

Image
Image

UE4 客户端

教学使用UE4.19 vs2015搭建客户端框架,定义数据结构,使用UE4的SocketSubsystem 和服务器进行通信。支持跨平台windows,ios,android等。

Unity3d 客户端

教学使用Unity2018.4.14 vs2015搭建客户端框架,定义数据结构,使用c#TcpClient和服务器进行通信。支持跨平台windows,ios,android等。

Image

课程目录

第一章:服务器数据准备

0101_创建windows工程
0102_创建linux工程
0103_设置工程
0104_基础数据定义
0105_连接数据定义
0106_windows加载xml
0107_linux下读取xml
0108_hasharray容器模板

第二章:Windows IOCP服务器

0201_iocp编程步骤
0202_io投递对象回收池
0203_iocp封装类定义
0204_初始化socket
0205_递accept
0207_保存新的连接数据
0208_封包解包原理
0209_投递recv
0210_投递send
0211_封包_生产发送数据
0212_解包_消费接收数据
0213_解包_解析消息体
0214_注册消息
0215_app管理器
0216_测试服务器
0217_停止服务器

第三章:纯c++客户端.支持windows和linux

0301_定义连接服务器数据结构
0302_tcpclient封装类数据定义
0303_工作线程
0304_初始化socket
0305_生产者_接收数据
0306_消费者_发送数据
0307_生产者_封包处理
0308_消费者_解包处理
0309_app管理器
0310_万人长连接测试
0311_支持protobuff

第四章:linux epoll服务器

0401_epoll原理_01
0402_epoll原理_02
0403_数据定义
0404_初始化入口
0405_初始化socekt
0406_epoll线程管理
0407_接收新的连接
0408_封装公用api
0409_接收数据
0410_发送数据
0411_封装发送数据包
0412_解析数据_01

0413_解析数据_02
0414_运行测试
0415_linux客户端

第五章:engine库

0501_封装engie代码到库
0502_客户端引用库
0503_linux封装到库

第六章:服务器和客户端交互

0601_模拟玩家登录移动
0602_申请其他玩家数据离开

第七章:unity3d通信框架搭建

0701_底层框架
0702_数据定义
0703_跨平台封装tcp
0704_解包数据
0705_发送数据
0706_app管理器
0707_模拟登录发送移动同步
0708_移动同步申请数据离开同步
0709_多人同步

第八章:UE4 通信框架搭建

0801_ue4底层框架通信
0802_数据定义
0803_线程_01
0804_线程_02
0805_连接服务器
0806_接收和发送数据
0807_解包和封包
0808_app管理器入口托管
0809_封装蓝图库
0810_模拟登录发送移动同步
0811_移动同步申请数据离开同步
0812_android演示
0813_赠送ai多人同步交互demo

第九章:分布式负载均衡服务器搭建

0901_分布式负载均衡服务器
0902_dbserver构建
0903_centerserver构建
0904_gameserver构建
0905_gateserver构建
0906_loginserver构建
0907_服务器之间通信测试
0908_linux修改

第十章:服务器安全

1001_服务器安全

多端支持

课程支持在ios以及Android端设备播放,您只需要登录各大手机应用平台,搜索“ABOUTCG学院”即可下载安装应用。

知识要求

本教学需要您对基础的3D概念和术语有一定的了解,比如Polygon(多边形),Edge(边),Face(面)Axis(轴向),Space(空间),Map(贴图)等。

此课程的内容正在持续更新中

此课程获得之后永久可以观看

本课程包含录播视频课程内容

FIRST BLOOD

首杀英雄风云榜 - 下单快如闪电

加入交流群
选课小助手
相关课程