以此博客记录我的成长轨迹,与诸君共勉
Unity框架之事件的订阅和发布(观察者模式) Unity框架之事件的订阅和发布(观察者模式)
事件管理器using System.Collections; using System.Collections.Generic; public class event_manager : Singletom<event_manage
2024-09-30
服务器分布式部署与通用服务器 服务器分布式部署与通用服务器
本教程基于libuv,需要自行下载和搭建libuv开发环境,参考我之前的文章:C/C++服务器基础(网络、协议、数据库) 本教程基于之前搭建过的C++高效游戏服务器的单服架构,拓展成为多服。 分布式结构用户访问的服务器可以分为两种
2024-09-29
C++高效游戏服务器 C++高效游戏服务器
本教程基于libuv,需要自行下载和搭建libuv开发环境,参考我之前的文章:C/C++服务器基础(网络、协议、数据库) netbus框架1: 每个服务器,都是基于netbus框架;2: 基于netbus框架来开发上面的每个服务器
2024-07-07
C++网络、协议、数据库 C++网络、协议、数据库
SocketSocket是对网络中不同主机上的应用进程之间进行双向通信的端点的抽象。它可以看成是两个网络应用程序进行通信时,各自通信连接中的端点。Socket上联应用进程,下联网络协议栈,是应用程序通过网络协议进行通信的接口,是应用程序与网
2024-06-22
Unity在非继承自MonoBehaviour的脚本启动协程 Unity在非继承自MonoBehaviour的脚本启动协程
在Unity中,协程通常是通过MonoBehaviour的StartCoroutine方法来启动的。很多时候,我们写逻辑层代码的时候也希望能够调用协程,例如网络通讯等功能,这就需要一个中介来帮你做这件事。这个中介通常是一个继承自MonoBe
2024-06-21
强化学习中的自我博弈(self-play) 强化学习中的自我博弈(self-play)
自我博弈(Self-Play)[1]是应用于智能体于智能体之间处于对抗关系的训练方法,这里的对抗关系指的是一方的奖励上升必然导致另一方的奖励下降。通过轮流训练双方的智能体就能使得双方的策略模型的性能得到显著提升,使得整个对抗系统达到正和博弈
2024-06-21
Unity客户端的Http通讯实战 Unity客户端的Http通讯实战
背景知识在Unity游戏开发中,一个常见场景是,后端扔过来一个Swagger后端接口网页,需要你使用对应的接口对应的接口发送和接收数据,如图所示为发起Get请求: 我们可以通过点击Try it out按钮直接在网页上测试收发数据(如果需要
2024-06-21
ml-agents执行原理和流程 ml-agents执行原理和流程
可参考文档:https://unity-technologies.github.io/ml-agents/Python-On-Off-Policy-Trainer-Documentation/ 入口在命令行执行mlagents-learn的
C/C++基础 C/C++基础
C二进制问题:二进制怎么表示整数、小数、正数、负数,如何存储?加减乘除怎么运算?(参考数据结构与算法实践篇) 变量c定义一个变量的时候,需要事先定义变量大小和变量类型。 //有符号整数 char 一个字节 short 两
2023-10-12
数据结构与算法(实践篇) 数据结构与算法(实践篇)
代码基于Python,简单易读 数组O(1)插入删除元素遇到需要逐个遍历判断并删除集合内元素的情况,可以逆序进行遍历,这样就能避免删除后元素减少而越界删除一样的元素: def removeDuplicates(self, nums: Lis
XLua热更新框架——基础版 XLua热更新框架——基础版
安装插件下载Xlua插件:https://github.com/Tencent/xLua下载完成后,把Asset文件夹下的文件拖入自己的工程Asset中,看到Unity编辑器上多了个Xlua菜单,说明插件导入成功 Lua启动代码新建一个空场
2023-07-13
跨引擎TA Shader 跨引擎TA Shader
渲染管线概念:GPU绘制物体的时候,标准的,流水线一样的操作 游戏引擎如何绘制物体:CPU提供绘制数据(顶点数据,纹理贴图等)给GPU,配置渲染管线(装载Shader代码到GPU,配置一次称为一次SetPassCall),并对GPU下命令(
2023-05-20
2 / 12