自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 Unity中连接数据库MySQL的操作

MySQL1.声明连接ip 端口(固定为3306)连接数据库的账户和密码string str=“server=127.0.0.1;port=3306;user=root;password=123;database=test;”;2.声明MySQLConnection连接对象  将连接数据库字符串传入连接对象中 调用Open方法开始连接3.增删改操作 实例化MySQLCommand...

2019-10-15 15:12:02 289

原创 Unity网络通信中对消息包的分包处理

简单分包无论客户端还是服务端 接收数据时收到了消息的长度(消息的构成 消息长度int/消息头short/消息体byte[]) 传入处理分包的函数中 定义接收缓存区的有效长度初始为0 有效长度+=消息长度 判断有效长度是否大于4 如果小于4说明为残包不做处理 如果大于4继续执行函数;通过BitConvert.toInt32从缓存区的0位开始读 读4位把消息长度读出来 这个int值(leng)就是消...

2019-10-15 15:11:11 464

原创 AssetBundle打包加载/UnityWebRequest远程下载

UnityEditor编辑器扩展菜单MenuItem MenuItem函数[(itemName,isValidateFunction,priority)]第一个参数声明菜单选项名称 如果是多层目录用’/'分割 第二个参数是是否为验证函数(布尔类型) 第三个参数设置优先级 多个菜单选项或同级目录下 先显示哪个子目录[MenuItem("",false,100)]声明在静态函数的上面 意为在Uni...

2019-10-15 15:10:40 519

原创 XLua的简单知识点

xlua中关于函数的调用 模拟类Class的声明 在lua中用table 声明两个成员变量 就相当于用表(table)模拟了Class 接下来用Class.__index=Class 设置metatable的元方法__index指向表Class自己 然后声明构造函数 非静态用冒号调用函数 新建对象(新表table)这样就可以通过Class:create()函数表示创建了新的实例 之后绑定元表设置新...

2019-10-15 15:04:39 272

原创 随笔——基于消息中心的摇杆移动

摇杆的实现原理 摇杆的组成是两个圆形 底图为大圆 大圆的半径是小圆的按压范围 以圆心为中心 模长为1 可看做坐标系 分为4个象限 根据按压点返回的Vector2值判断目标点在哪个象限 摇杆多用于手游 无法像键盘或鼠标输入具体位置 那么返回的Vector2值就用按压的力度*具体的模长来计算 目前完成了用户的输入 也就是得到了具体的偏移量 可以驱动所写的数据逻辑执行 经过逻辑的分发之后找到最后的执行逻...

2019-09-11 21:48:40 113

原创 随笔——案例描述(击退/镜头)

一些视觉效果上的处理 比如摄像机的控制系统 在任务出场时 镜头由远及近 逐渐靠近主角并在主角身旁围绕做圆周运动且圆周运动有上下波动的效果 具体可用Lerp移向主角 判定距离足够近就开始圆周浮动运动 使用RotateAround 并将摄像机的y轴值更改 设定浮动的最大值及最小值 实现效果之后 为了增强用户体验 丰富打击感 在判断范围实行攻击之后 敌人更改坐标 有击退的效果 同时摄像机抖动 并计算伤害...

2019-09-11 21:48:07 379

原创 Unity之生命周期的再次自我理解

首先是ReSet相比于其他函数较特殊 只在编辑模式下调用且只调用一次 在用户点Inspector面板下的Reset按钮时或第一次添加组件时调用Awake 该函数中进行游戏对象的初始化 例如GameObject.FInd GameObject.FindWithTag Awake函数游戏运行之后第一个执行且执行一次 生命周期执行完一次后直接跳到OnEnable 不走Awake 如果要程序运行之后要禁...

2019-09-11 21:47:33 151

原创 UnitySocket异步通信

Socket 套接字 一个ip和一个端口组成一个Socket 属C/S架构 具有长连接和实时性(强联网) 客户端服务端都用Socket来声明 Socket类型又分为多种 常用有Stream流传输和Dgram打包传输 流传输对应协议类型的TCP(传输控制协议)Dgram打包传输对应协议类型的UDP(用户数据报协议)TCP和UDP都是传输协议 双方通信时都需要端口的开放TCP是可靠的传输 收发数据...

2019-09-11 21:46:42 352

原创 UnitySocket框架应用//粘包分包的理解//阻塞与非阻塞的自我理解/音游Demo描述

Socket框架Socket通信使用同步时 若有多个客户端同时连接服务端 每次都开启一条线程来接收客户端的消息并返回结果 显然消耗过大 所有有必要进行优化 可以采用多线程(接收线程 发送线程 其他处理线程)和异步Socket 使用异步Socket时 封装CommonSocket 无论服务端或者客户端都可用的通用Socket; NetMsgObject类用来处理消息的解析 将一条完整的消息解析为消...

2019-09-11 21:45:55 738

原创 UnityProtobuffer的应用

类似于Json的一个序列化与反序列化数据的数据传输工具 Protobuffer自带编辑器.exe文件(protoc)该工具跨语言跨平台 与Json相比数据量更小 效率更高 因为Json中引号冒号逗号等格式也是需要传送的 传送就占用了数据中的字节数///生成proto文件namespace common{  [global::System.Serializable, global:...

2019-09-11 21:44:23 328

原创 RPG策划描述思路整理

近期做了一个RPG项目中押镖的功能 策划罗列有 镖车在有能量情况下跟随主角 路过兵营 兵营随机时间开始出兵 攻击镖车 主角砍兵获取能量 护送镖车到达终点 可应用状态机以及消息中心的知识实现 主角有跑 攻击状态 根据用户输入切换状态;镖车有idle 跟随状态 根据自身能量值切换状态;敌人有跑 攻击 死亡状态 根据视野范围及自身血量切换状态 当怪物死亡时 主角拾取能量到背包 背包中使用能量道具时 利用...

2019-08-23 16:05:25 461

原创 Unity生命周期的自我理解

首先是ReSet相比于其他函数较特殊 只在编辑模式下调用且只调用一次 在用户点Inspector面板下的Reset按钮时或第一次添加组件时调用Awake 该函数中进行游戏对象的初始化 例如GameObject.FInd GameObject.FindWithTag Awake函数游戏运行之后第一个执行且执行一次 生命周期执行完一次后直接跳到OnEnable 不走Awake 如果要程序运行之后要禁...

2019-08-23 16:04:03 266

原创 摇杆移动应用消息中心的简易实现

摇杆的实现原理 摇杆的组成是两个圆形 底图为大圆 大圆的半径是小圆的按压范围 以圆心为中心 模长为1 可看做坐标系 分为4个象限 根据按压点返回的Vector2值判断目标点在哪个象限 摇杆多用于手游 无法像键盘或鼠标输入具体位置 那么返回的Vector2值就用按压的力度*具体的模长来计算 目前完成了用户的输入 也就是得到了具体的偏移量 可以驱动所写的数据逻辑执行 经过逻辑的分发之后找到最后的执行逻...

2019-08-19 20:40:23 154

原创 内存管理机制与垃圾回收机制

内存管理机制栈(Stack)是一种后进先出(FILO)的数据结构 一些变量和形参都存在栈中 栈中存一些简单的值类型数据 在运行时栈是可以随时更新的 当变量超出自身的作用于时 自动从栈中弹出 栈的元素是连续的 不会产生一些碎片垃圾 所以栈是不需要GC机制来回收栈中的数据的堆(Heap)堆没有栈的特性 没有后进先出的顺序 堆像是个大容器 存储相对复杂的数据类型(比如引用类型)以及解决栈中出现栈溢出...

2019-08-14 20:59:16 189

原创 FSM状态机的简易实现

FSM状态机的简易实现状态机 在我们的项目中多处应用了状态机 比如站立 行走 跑步等一个个状态 因为定义的状态类型有限 所以为有限状态机(finite state machine) 状态与状态之间满足一定条件时可称之为过渡transition 满足条件时 单个状态是多种可融合的 融合结束之后产生一个结果 结果产生时 又遵循状态机的单线互斥结果唯一原则 最终执行结果只有一个状态那么一个个的状态之...

2019-08-13 20:30:39 491

原创 SLG游戏中大地图实现使用四叉树技术

SLG游戏中大地图实现使用四叉树技术四叉树是一种数据结构 每个节点最多有四个子树的数据结构 适用于二维图片的像素定位 SLG游戏地图中有动态的资源也有静态的资源 动态资源如玩家 敌人 静态资源有房屋 树木等 在加载静态资源时直接加载 加载动态资源时避免造成一次性加载卡顿的问题 可采用四叉树 在一个节点中资源存放到一定量时 分为4个节点 整个地图也是分为4个区域 可以理解为4个象限 而每个区域存放...

2019-08-11 20:27:39 4356

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除