自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 资源 (1)
  • 收藏
  • 关注

原创 游戏开发常用字体(自制)

这个不用多讲。

2023-03-21 23:28:57 3484

原创 C# 使用Protobuf产生的堆栈溢出问题 Stack overflow.

直接说明情况:[ProtoBuf.ProtoContract][ProtoBuf.ProtoInclude(11, typeof(Cat))][ProtoBuf.ProtoInclude(12, typeof(Dog))]public abstract class Animal{[ProtoBuf.ProtoMember(1)]public string name;[ProtoBuf.ProtoMember(2)]public int sex;}[ProtoBuf.ProtoContr

2022-02-15 14:03:12 421

原创 Unity连接Mysql数据库

下载对应版本的dll文件,包括Unity版本和MysqlServer版本本项目使用的是MysqlServer8.0Unity2020.3.21所以下载的dll文件需要满足这两个版本1.mysql8.0以上2.4.5以及4.5以下(只是猜测,4.6以上unity也确实不能识别)综上,选择了8.0.11版本,网址如下https://downloads.mysql.com/archives/c-net/下面是具体脚本:using MySql.Data.MySqlClient;using Sy

2022-01-25 17:46:02 3585

原创 C# 常用Github工程地址

基于C#实现的RPC项目https://github.com/Cysharp/MagicOnionhttps://github.com/supperlitt/tcp_all

2021-11-26 14:34:24 282

原创 网络编程中的粘包处理

/* 主要用于处理粘包现 怎么会出现这种现象? 从接收数据来看,Socket每次接收数据并不是根据目标数据来设置Buffer的大小,而是先设置一个Buffer然后去接收,当发送方发送的数据大于设置的Buffer大小时,则会发生发送方发送一次的数据,接受却用了n次,更关键的是接收方根本不知道自己什么时候才算接受到一次完整的消息,而这个问题也就是粘包问题 解决方法: 双方约定一条消息由两部分组成:包头 + 内容 包头:表示这条消息的长度 + 4 内容:表示

2021-08-14 17:17:01 88

原创 引导遮罩的一种实现方式

来源:https://github.com/asyncrun/GuideMaskusing UnityEngine;using UnityEngine.UI;/* 引导遮罩 -- 打开后只有指定地方可以点击,且指定地方完全透明 targetArea: 指定区域 offset: 偏差值*/[RequireComponent(typeof(RectTransform))][RequireComponent(typeof(Canva

2021-05-14 18:53:26 198 1

原创 LoopScrollView-Unity

自己实现的循环列表,附带一个工程地址,有Bug随时提https://github.com/CamelWH/LoopScrollView/tree/mainusing System;using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.EventSystems;/* 循环列表 -- 格子大小一致的循环列表 -- 通过Template的大小

2021-05-12 16:20:47 517

原创 Unity~辅助类Gizmos

记录一下Unity中关于线框的两个方法void OnDrawGizmos()void OnDrawGizmosSelected()类似于OnGUI,每帧运行,且在编辑器模式也能运行,在编辑器中显示形状 private void OnDrawGizmos() { Gizmos.color = Color.red; // 以自身位置为球心,画出一个半径为10的球体 Gizmos.DrawSphere(transform.position, 1

2021-05-06 21:14:51 217

原创 Shader效果实现:双色渐变

// 双色渐变// 颜色由一种颜色随着时间逐渐变成另外一种颜色,再从另外一种颜色回到初始颜色// 初始颜色// 目标颜色// 渐变速度// _Time 内置时间函数// sin 内置sin函数Shader "MyShader/DoubleChange"{ Properties { _Color1 ("Color1", Color) = (1,1,1,1) _Color2 ("Color2", Color) = (1,1,1,1) _Speed

2021-04-12 15:52:34 1062 1

原创 修复ScrollRect在Elastic的模式下,localScale.x或者localScale.y为0时一直计算的Content位置的Bug

using UnityEngine;using UnityEngine.UI;// 修复了在Elastic的模式下,localScale.x或者localScale.y为0时一直计算的Content位置的Bugpublic class CustomScrollView : ScrollRect{ protected override void LateUpdate() { if (Mathf.Abs(transform.localScale.y) > 0.01

2021-04-08 16:28:21 159

原创 基于unity实现的FSM有限状态机(泛型篇)

前言:基于上篇实现的FSM状态机,发现只有Transition和FSMState两个枚举的时候,若是实现超过两种状态机时,枚举容易混淆,显然不够实用,于是采用泛型的方式重新实现了一遍,当为一种对象创建状态机时,先要为其创建EnemyAIData,EnemyTransition,FSMEnemyState三份文件.EnemyAIData – 在状态检测时需要使用到的数据EnemyTransition – 过度条件,枚举FSMEnemyState – 对应状态,枚举using System

2021-02-25 20:33:24 321

原创 基于unity实现的FSM有限状态机

代码思想来自于https://github.com/KinJin-Ristina/FSMState,这里进行了一定的修改主要代码using System.Collections;using System.Collections.Generic;using UnityEngine;public class FSMSystem{ private List<FSMStateBase> stateList = new List<FSMStateBase>();

2021-02-25 19:08:06 250 2

原创 unity编辑器扩展~Inspector扩展

前言对于一个继承于MonoBehaviour的脚本组件来讲,它的字段是可以在Inspector面板中显示,但是通过对Inspector的扩展,可以为自定义组件创建自定义检视面板和编辑器,例如修改字段显示的样式,以及该字段是否显示等操作具体脚本创建组件脚本,继承自MonoBehaviour:public class Test : MonoBehaviour{public int a;public string b;}创建对应的编辑器脚本,继承自Editor,并添加CustomEditor属性

2021-02-24 11:04:41 509

原创 记录一种不均等随机函数,值越大随机到的几率就越大

public static int RangeList(List<int> list) { //1.计算和 int sum = 0; foreach (var item in list) { sum += item; } var ran = Random.Range(0, sum); var curNum = 0; foreach...

2021-02-23 17:23:48 465 1

原创 Window实用工具~uTools

下载地址https://u.tools/功能1.本地搜索2.快速截图3.插件集合

2021-01-30 13:13:10 134

原创 基于C#实现的WebServer

最近终于理解Http协议的底层是Socket这句话,于是用C#实现了一下1.通过Socket直接实现using System.Text;using System.Net;using System.Net.Sockets;using System;using System.IO;using System.Runtime.Serialization.Formatters.Binary;/// <summary>/// 通过Socket实现/// </summary>

2021-01-20 11:55:55 1391

原创 基于Unity中UGUI的EventTrigger组件实现的UI拖拽以及位置交换功能

如图所示,点击UI跟随鼠标移动并在拖动过程移动其他UI的位置`public class Test : MonoBehaviour{ /// <summary> /// 记录一下当前拖拽的物体 /// </summary> public Slot curSlot; public List<Slot> slotList = new List<Slot>(); private Dictionary<Game.

2020-07-10 13:33:49 1318 1

原创 Lua编程(一)~数据类型

在Lua中数据类型有以下几种:nil–该类型只有nil一个值,表示一个无效值,在条件表达式中相当于falseboolean–包含两个值:false,truenumber–表示双精度类型的实浮点数string–字符串function–由C或者Lua编写的函数userdata–表示任意存储在变量中的C数据结构thread–表示执行的独立路线,用于执行协同程序table–lua表其实是一...

2019-12-23 17:27:30 157

原创 Lua面向对象~创建类以及其实例的概念

–利用局部表的概念–定义一个类class={new=function()local o={}–在这里可以定义属性和方法o.a=1o.fun1=function()print(“fun1”)endreturn oend}–构造该类的两个实例,分别为a,ba=class.new()b=class.new()print(a.a)print(b.a)a.a=10b....

2019-12-18 11:38:38 300

原创 MySql数据库在C#中的一些应用

前提:需要安装MySql的Windows环境以及下载MySql的.Net连接文件,即相关.dll文件本文使用的是8.0.17版本的连接文件,支持.net 4.5.2以上环境编译.GitHub地址为:https://github.com/CamelWH/MySqlForCSharpusing System;using System.Collections.Generic;using Sys...

2019-09-16 17:52:57 168

原创 Unity Shader学习(一)

本章没有讲述具体编程过程,而是从以下三个角度进行阐述:1.计算机渲染流程2.CPU和GPU的关系3.着色器语言1.计算机渲染流程–1.1应用阶段这个阶段主要做三件事情://a.准备场景数据(模型,光照等等),把视野范围外的数据剔除.//b.设置好模型的渲染信息(材质,纹理等)//c.最后输出渲染图元到GPU的显存中,一般来说渲染图元就是点,线,三角面等数据,也称为一次DrawCa...

2019-07-24 17:04:37 117

原创 Unity学习笔记(一)~介绍以及入门

1.简单的个人介绍在介绍Unity前,容许我介绍一个自己吧,毕竟自我介绍是每一个码农,咳咳,每一个求职人员必备的一项工作,虽然感觉就是一个开场白吧.本人呢就是普通的本科毕业,既不是985也不是211,大学专业学的自动化专业,就是那种90+人,4个妹子那种工科专业.着实不是啥好专业(PS:如果你是正在考大学,选专业,如果你不是对工科特别感兴趣,千万不要选择这种工科专业~).学习自动化,说实话,...

2019-07-18 19:02:24 207

多人斗地主.zip

全套资源,包括视频以及素材. 全套资源,包括视频以及素材. 全套资源,包括视频以及素材.

2019-08-20

空空如也

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

TA关注的人

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