自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 自动寻路脚本

自动寻路脚本

2022-06-15 10:14:41 1344 1

原创 网络加载资源

Unity网络加载资源

2022-06-15 10:11:33 268

原创 Unity 与 Android 、IOS交互笔记

Unity 与 Android 、IOS交互笔记

2022-06-14 17:59:51 1423

原创 初识Unity 编辑器扩展

初识Unity 编辑器扩展

2022-06-14 17:55:21 185

原创 pairs和ipairs,pcall和xpcall的区别和用法

pairs和ipairs,pcall和xpcall的区别和用法

2022-06-14 17:49:34 254

原创 【Lua】排序算法分析与实现

常见排序算法时间与分析,直接插入排序、希尔排序、冒泡排序、快速排序、直接选择排序、堆排序...使用lua实现

2022-03-23 11:38:59 372

原创 Unity Shader Specular

Shader "Custom/MySpecular"{ properties { _SpecularColor("SpecularColor",Color) = (1, 1, 1, 1) _Spininess("Spininess", Range(1, 64)) = 8 } SubShader { pass{ tags{"LightMode" = "ForwardBase"}

2022-03-09 17:50:27 3552

原创 Unity Shader Diffuse

Shader "Custom/MyDiffuse"{ SubShader { pass{ tags{"LightMode" = "ForwardBase"} CGPROGRAM #pragma vertex vert #pragma fragment frag #include "unitycg.cginc" #include "lightin

2022-03-08 15:52:19 4015

原创 cannot implicitly convert from ‘float4x4‘ to ‘float4‘

Unity升级到5.6及以后,所有跟UNITY_MATRIX_MVP运算的矩阵或者向量的mul方法,会被自动转成UnityObjectToClipPos方法float4x4 m = mul(Unity_MATRIX_MVP, rm);// 自动变成如下float4x4 m = UnityObjectToClipPos(rm);在代码中遇到了这样的报错:void Update() { Matrix4x4 RM = new Matrix4x4(); RM[0,

2022-03-02 11:57:58 4818

原创 有向无环图——AOE网(关键路径)

有向无环图:无环的有向图,简称DAG图(Directed Acycline Graph)有向无环图常用来描述一个工程或系统的进行过程。(通常吧计划、施工、生产、程序流程等当成是一个工程)一个工程可以分为若干个 子工程,只要完成了这些子工程(活动),就可以导致整个工程的完成AOE网:关键路径用一个有向图表示一个工程的各子工程及其相互制约的关系,以弧表示活动,以顶点表示活动的开始或结束事件,称这种有向图为边表示活动的网,简称为AOE网(Activity On Edge)把工程计划表示为边表示活动的

2022-02-25 15:20:50 3532

原创 有向无环图——AOV网(拓扑排序)

有向无环图:无环的有向图,简称DAG图(Directed Acycline Graph)有向无环图常用来描述一个工程或系统的进行过程。(通常吧计划、施工、生产、程序流程等当成是一个工程)一个工程可以分为若干个 子工程,只要完成了这些子工程(活动),就可以导致整个工程的完成AOV网:拓扑排序用一个有向图表示一个工程的各子工程及其相互制约的关系,其中以顶点表示活动,弧表示活动之间的优先制约关系,称这种有向图为顶点表示活动的网,简称AOV网(Activity On Vertex network)A

2022-02-24 20:39:57 5070

原创 【c++】图的遍历-深度优先(DFS)与广度优先(BFS)算法分析与实现

图常用的遍历:深度优先遍历(Depth_Frist Search – DFS)广度优先遍历(Breadth_Frist Search – BFS)深度优先遍历(DFS)方法:在访问图中后以起始点v后,由v触发,访问他的任一邻接点w1,然后再从w2出发,进行类似的访问,…如此进行下去,直到到达所有的邻接顶点都被访问过顶点u位置。接着,退回一步,退到前一次访问过的顶点,看是否还有其他没有被访问的邻接顶点。如果有,则访问此顶点,之后再从此顶点出发,进行与前述类似的访问;如果没有,就

2022-02-21 10:04:47 1337

原创 【C++】图的构造算法-邻接表表示法

结构分析:算法思想:输入总顶点数和总边数建立顶点表,依次输入信息存于顶点表中,将每个顶点头节点的指针域初始化为NULL创建邻接表,依次输入边所依附的两个顶点,确定两个顶点的下标 i 和 j ,建立边结点,使用头插法分别差入 vi 和 vj 对应的边链表的头部存储表示:#define MaxInt 32767 // 极大值#define MVNum 100 // 最大定点数typedef int ArcType; // 边的权值类型typedef char

2022-02-19 11:33:11 1224 1

原创 【C++】图的构造算法-邻接矩阵表示法

结构分析:算法思想:输入总顶点数和总边数一次输入顶点休息存于顶点表初始化邻接矩阵,每个权值为极大值构造邻接矩阵存储表示:#define MaxInt 32767 // 极大值#define MVNum 100 // 最大定点数typedef char VerTexType;// 顶点数据类型typedef int ArcType; // 边的权值类型// 图的结构定义typedef struct{ VerTexType vexs[MVNum]

2022-02-19 11:19:14 938

原创 图的定义和术语

图:G = (V, E) Graph = (Vertex, Edge)V: 顶点(数据元素)的 有穷非空集合E: 边的有穷集合无向图:每条边都是无方向的有向图:每条边都是有方向的完全图:任意两个点都有一条边相连稀疏图:有很少边或弧的图(e<nlogn)稠密图:有较多边或弧的图权与网:途中边或弧所具有的相关数称为权,表明从一个顶点到另一个顶点的距离或耗费,带权图称为网邻 接:有边/弧相连的两个顶点之间的关系存在(Vi,Vj), 则称为Vi和Vj互为邻接点;存在&l

2022-02-15 11:22:34 120

原创 【Lua】创建哈夫曼编码算法实现

创建哈夫曼编码算法实现--创建哈夫曼编码算法--array - 哈夫曼树数组,n - 叶子结点数量--[[ array - 哈夫曼树数组结构 weight = 0--权重值 self.lch = 0--左孩子(数组中的下标) rch = 0--右孩子(数组中的下标) parent = 0--双亲(数组中的下标) ]]function HuffmanTree:CreatHuffmanCode(array, n) --哈夫曼编码 local huffmanC

2022-02-14 17:32:28 434

原创 字符串中不含有重复字符的 最长子串 的长度

题目:给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度示例1:输入: s = “abcbcabd”长度: 4无重复字符的最长子串是 “cabd”,其长度为 4。示例2:输入: s = “pwwkew”长度: 3无重复字符的最长子串是 “kew”,其长度为 3。代码实现Luafunction this:LengthOfLongestSubstring(str) local table = {} for i = 1, string.len(str) do loc

2022-02-12 15:38:16 815

原创 【Lua】哈夫曼树构造算法的分析与实现

哈夫曼树构造算法分析1、哈夫曼树中权重越大的叶子离根越近,采用贪心算法构造哈夫曼树,首先选中权重值小的叶子结点进行构造2、步骤构造森林全是根:根据n个给定结点的权重值{W1, W2…Wn}构成 n 颗二叉树的森林F = {T1, T2…Tn},其中 Ti 只有一个带权重为 Wi 的根结点选用两小造新树:在F中选取两颗跟结点权重值最小的两颗树作为左右树构成新二叉树,此二叉树的权重值为左右树权重值之和删除两小添新树:在F中删除这两颗树,同时将新的到的二叉树添加到森林中重复23剩下单根:重复2、3步

2022-02-12 15:22:42 969

原创 FileStream加密、原理

File Stream加密

2022-01-12 14:51:05 2760

原创 Unity 两张合并而成的背景图如何做全屏自适应

Unity 两张合并而成的背景图如何做全屏自适应

2021-12-16 17:40:13 2345

原创 从0到1学会C中的左移和右移

从在代码里看见>> << 连这两个符号叫左移和右移都不知道是啥到查了百度和问朋友终于是弄懂了它接下来就和大家分享一下我的理解叭首先举个小栗子local a = 10 >> 2这个就叫10右移2位得出a我们把10称为左数,2称为右数(需要位移的数),中间的>>或<<称为右移或左移如何来运算这个a = 10 >> 2呢第一步:把左数转为二进制然后将余数从下到上写,就是1010,这就是10的二进制第二步:把10得二进

2021-01-12 10:11:25 867

原创 解决vue中使用ElementUI导航栏重复点菜单出现错误Error: Avoided redundant navigation to current location:的问题

在VUE中使用ElementUI中的导航的时候,默认情况下如果重复点击某选项,会报错,显示是路由重复,虽然说对项目没啥影响,但是看到有红色的bug就想解决有木有。解决方法如下在router.js中加上以下代码// 解决ElementUI导航栏中重复点菜单报错问题 const originalPush = VueRouter.prototype.push VueRouter.prototype.push = function push(location) { return origina

2020-07-23 11:24:38 550 2

原创 配置VS Code中git与配置window下cmd使用git

1、配置VC中git的使用打开vs code 文件–首选项–设置–输入框中搜索git.path然后添加这两行,注意git.path后面的路径是你自己安装git的路径,找到Git/bin/git.exe然后复制填到git.path后面记住是反斜杠"files.autoSave": "afterDelay","git.path": "D:/Software/Git/bin/git.exe"2、配置window下cmd中使用git在系统环境变量中git的安装配置环境  环境变量—>pa

2020-07-05 11:40:05 590

原创 node-sass安装失败解决办法

在学习webpack的时候打包sass要安装node-sass,然后一直出错,网上找了很多解决办法都没用错误:PS D:\WebStorm\work\vue学习\黑马Vue\ES6模块化与webpack\WEBPACK_STUDY\src> npm install node-sass> node-sass@4.14.1 install D:\WebStorm\work\vue学习\黑马Vue\ES6模块化与webpack\WEBPACK_STUDY\node_modules\node-s

2020-07-02 17:32:08 769

原创 Express框架初体验

Express框架初体验1. Express框架是什么2. Express框架特性3. 中间件3.1 什么是中间件3.2 app.use中间件用法3.3 中间件应用3.4 错误处理中间件3.5 捕获错误4. Express请求处理4.1 构建模块化路由4.2 GET参数的获取4.3 POST参数的获取4.4 静态资源的处理5. express-art-template模板引擎5.1 模板引擎5.2 app.locals 对象1. Express框架是什么Express是一个基于Node平台的web应用开

2020-07-02 09:07:40 381

原创 初识Ajax

这里写目录标题一、Ajax运行原理及实现-- Ajax运行原理-- Ajax的实现步骤-- 服务器端响应的数据格式-- 请求参数传递-- 请求报文-- 请求参数的格式-- 获取服务器端的响应--- Ajax 状态码--- onreadystatechange 事件-- Ajax 错误处理-- 低版本 IE 浏览器的缓存问题二、Ajax 异步编程-- 同步异步概述-- Ajax 封装一、Ajax运行原理及实现– Ajax运行原理Ajax相当于浏览器发送请求与接收响应的代理人,以实现在不影响用户浏览器页面

2020-06-27 08:45:33 253

原创 node.js实现学生档案管理

学生档案管理目标:模板引擎应用,强化node.js项目制作流程知识点:http请求响应、数据库、模板引擎、静态资源访问制作流程建立项目文件夹并生成项目描述文件创建网站服务器实现客户端和服务器端通信连接数据库并根据需求设计学员信息表创建路由并实现页面模板呈递实现静态资源访问实现学生信息添加功能在模板的表单中指定请求地址与请求方式为每一个表单项添加name属性添加实现学生信息功能路由接收客户端传递过来的学生信息将学生信息添加到数据库中将页面重定向到学生信息列表页面实现学

2020-06-12 22:47:34 707

原创 art-template模板引擎

art-template模板引擎一、模板引擎的基础概念(art-templatem)二、模板语法三、判断条件四、数据循环五、模板继承五、子模板六、模板配置一、模板引擎的基础概念(art-templatem)在命令行根据使用npm install art-template 命令进行下载使用const template = require(‘art-template’)引入模板引擎告诉模板引擎拼接的数据和模板路径 const html = template(‘模板路径’, 数据)使用模板语法搞事模板

2020-06-12 10:19:38 256

原创 使用node创建服务器成功但是页面打不开

命令行没有报错,服务器创建成功但是 localhost:3030 打不开页面注意!!!如果显示这样,那么就是创建服务器成功了,但是你没有接受返回值可以在app.on('request', async (req, res) => { res.end('123'); // 添加返回的结果 });或者是你在 localhost:3030/xx (xx路由里面接收的值)这样使用 localhost:3030/xx 也可以打开不要傻傻的一直在试localhost:3030然后想,

2020-06-11 10:54:37 3777

原创 MongoDB的增删改查

增// 引入mongoose第三方模块,用来操作数据库const mongoose = require('mongoose');// 数据库连接mongoose.connect('mongodb://localhost/playground', { useNewUrlParser: true }) // 连接成功 .then(() => console.log('数据库连接成功')) // 连接失败 .catch(err => console.log(er

2020-06-09 23:14:17 227 1

原创 MongoDB连接、创建数据库、插入数据

在node中使用mongoose第三方模块来操作数据库一、连接、创建数据库// 引入mongoose第三方模块,用来操作数据库const mongoose = require('mongoose');// 数据库连接mongoose.connect('mongodb://localhost/palyground', { useNewUrlParser: true }) // 连接成功 .then(() => console.log('数据库连接成功')) // 连接失

2020-06-09 23:01:43 870

原创 Node.js创建本地Web服务器

使用Node.js中的http模块创建本地Web服务器// 用于创建网站服务器的模块const http = require('http');// app对象就是网站服务器对象const app = http.createServer();// 当与客户端有请求来的时候app.on('request', (req, res) => { // 获取请求的方式 // req.method // 获取请求地址 // req.url // console.

2020-06-09 08:57:45 277

原创 Node.js模块查找规则

Node.js模块查找规则模块查找分三种一、require方法根据模块路径査找模块,如果是完整路径,直接引λ模块 require('./find.js');二、1.如果模块后缀省略,先找同名JS文件再找同名JS文件夹2.如果找到了同名文件夹,找文件夹中的 index.js3.如果文件夹中没有 index js就会去当前文件夹中的 package. js文件中查找main选项中的入口文件4.如果找指定的入口文件不存在或者没有指定入口文件就会报错,模块没有被找到require('./fin

2020-06-09 08:53:12 438

原创 Promise异步函数解决回调地狱

在根目录下创建1.txt、2.txt、3.txt现在想要依次读取1.txt、2.txt、3.txt文件要保证是依次读取,所以我们需要回调函数嵌套来保证是依次读取1.txt、2.txt、3.txt文件const fs = require('fs');fs.readFile('./1.txt', 'utf8', (err, result1) => { console.log(result1); fs.readFile('./2.txt', 'utf8', (err, resul

2020-06-09 08:37:28 438

原创 Node.js Gulp的基本使用和常用插件

使用Gulp五步骤1.使用 npm install gulp下载gulp库文件2.在项目根目录下建立 gulpfile.js文件3.重构项目的文件夹结构src目录放置源代码文件 dist目录放置构建后文件4.在 gulpfile.js文件中编写任务5.在命令行工具中执行gulp任务Gulp中提供的方法1.gule.src(): 获取任务要处理的文件2.gule.dest(): 输出文件3.gule.task(): 建立gulp任务4.gule.watch(): 监控文件的变化5.Gu

2020-06-07 23:05:26 181

原创 史上最全最常用Git命令行

git config --list 查看信息cd…\ 返回上一级cd 文件名 进入文件夹git init 创建仓库cd text1 进入text1目录mkdir text 创建text目录touch a1.html 创建a1.html文件git status 查看状态vi a1.html 进入a1.html1.按下 ESC 键, 退出编辑模式,切换到命令模式。2.输入 :wq , 保存修改并退出VIcat a1.html 查看a1.ht

2020-06-05 20:40:15 179

原创 Ajax使用火狐跨域访问本地资源

**如何使用火狐跨域访问本地资源**一、首先要对火狐浏览器进行设置:进入火狐浏览器,在地址栏输入“about:config”点击我了解此风险后进入页面在搜索栏输入“security.fileurl.strict_origin_policy”,设置为false重新启动浏览器就可以跨域访问啦二、编辑代码HTML代码<body> <h1>People</h1> <ul> <li><a href

2020-05-21 11:42:49 307

原创 var、let、const的区别

var、let、const的区别使用var声明的变量,起作用域为该语句所在的函数内,且存在变量提升现象。使用let声明的变量,起作用域为该语句所在的代码块内,且存在变量提升现象。使用const声明的是常量,在后面出现的代码中不能再修改常量的值。varletconst函数级作用域块级作用域块级作用域变量提升不存在变量提升不存在变量提升值可更改值可更改值不可更改...

2020-05-14 22:39:15 90

原创 JavaScript闭包-面试题

什么是闭包?闭包(closure)指有权访问另一个函数作用域中变量的函数 ----JavaScript高级程序设计简单来说,闭包就是一个函数(一个作用域可以访问另一个函数的局部变量)闭包的作用是什么?延伸变量的作用范围function fn() { var num = 10; return function() { console.log(num); //这里的num就是访问了fn()函数的局部变量num,所以fn()是一个闭包函数 }}var f =

2020-05-14 22:18:32 1306

原创 对象方法Object.defineProperty()

Object.defineProperty()定义对象中新属性或修改原有的属性。Object.defineProperty(obj, prop, decriptor);obj:必需。目标对象prop:必需。需定义或修改的属性的名字descriptor:必需。目标属性所拥有的特性Object.defineProperty() 第三个参数descriptor说明:以对象形式{ }书写value:设置属性的值,默认为undefinedwritable:值是否可以重写,true|false 默

2020-05-14 22:06:17 142

空空如也

空空如也

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

TA关注的人

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