自定义博客皮肤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)
  • 资源 (2)
  • 收藏
  • 关注

原创 欧拉角(定义解释,使用,优缺点)

例如,滚转角的物理轴总是纵向的体空间轴,但是通常它是在直立空间中任意取向的。但事实证明,固定轴系统和欧拉角系统实际上是等效的,只要以相反的顺序进行旋转。根据欧拉角的约定,首先进行航向轴的旋转并绕垂直轴(y轴)旋转h,然后围绕对象空间的横向轴(x轴)旋转角度p。这种描述旋转的方案是由**指数映射(Exponential Map)**的相当令人生畏和模糊的名称进行的。①旋转角度可以从e的长度推导出来。虽然在计算里,当我们正在将矢量从直立空间旋转到对象空间时,可以可视化欧拉角,但实际上使用的是固定轴系统。

2023-11-30 11:57:28 1446

原创 向量运算之点乘叉乘

向量运算,简单了解叉乘和点乘

2023-11-30 11:45:47 440

原创 cocos creator使用protobufjs的两种方式

cocos creator使用proto后端数据结构的两种方式方法,用于快速开发接口,简单易用,方便前后端统一数据结构

2023-11-06 16:18:00 671 1

原创 node创建本地服务器

nodejs创建本地服务器

2022-09-14 12:53:17 145 1

原创 opengl 环境搭建

opengl 环境搭建首先尽量使用Visual Studio 如果使用vscode来集成opengl的环境非常的麻烦对于小白来说就是个大坑,可以等到有一定的基础的时候再来做这件事,等以后会了我再来补!首先就是需要下载两个库分别是glad 和 glfw地址:库文件glfwgladCMake是一个工程文件生成工具cmake使用CMake的时候如果配置选择错误可以在填输出的位置填一个不存在的文件,这样就会询问你是否创建文件并可以重新开始设置编译的环境推荐的方式是建立一个新的目录包含所有的第三方库

2022-01-22 22:06:01 388

原创 GAMES101课程环境搭建(Win10+VSCode)

GAMES101课程环境搭建(Win10+VSCode)抄自:知乎发现很多人遇到Mingw环境的问题,这里共享一个可用的mingw,自行解压,然后把bin目录加入环境变量即可。链接: https://pan.baidu.com/s/1zsiUnzbuzglhgxvjFiqaAQ 提取码: 6xfu 复制这段内容后打开百度网盘手机App,操作更方便哦以下是原文:最近B站上看到一个不错的图形学教程,复习下图形学知识挺好的。教程地址:GAMES101-现代计算机图形学入门-闫令琪_哔哩哔哩 (゜-゜)

2021-11-12 22:44:35 4316

原创 github访问加速

github访问加速抄自:知乎​目录收起一.使用镜像网站二. 使用代理网站下载三. cdn加速获取GitHub官方CDN地址修改系统Hosts文件刷新系统DNS缓存四. 转入gitee加速使用镜像网站使用代理网站下载cdn加速转入gitee加速概括:如果是下载比较大的项目,比如耗时5min往上,大小30mb往上,十分推荐使用代理网站下载,或者转入gitee的方式下载.如果仅仅是下载比较小的项目,类似代码性质,文档性质的项目,使用cdn加速,提升到100多KB/s也就够

2021-11-11 23:50:03 1892

原创 Laya发布资源没更新fileconfig

使用ctrl + f12 后fileconfig文件没有更新,或者图集里面没有对应的图片资源可以进入laya的开发者模式 laya图标按钮 -----------> 帮助 -----------------> 开发人员工具可以看到对应的log,根据log查看对应的报错位置,能够直接定位到最好,不能的话可以直接跳转到报错的js 然后再js中对应的位置添加对应的日志输出,再重新发布资源测试下log打印 一般都是atlas文件出问题了...

2021-06-25 10:03:12 300

原创 二叉树-性质

二叉树二叉树性质1)在二叉树的第i层上最多有2i-1 个节点 。(i>=1)2)二叉树中如果深度为k,那么最多有2k-1个节点。(k>=1)3)n0=n2+1 n0表示度数为0的节点数,n2表示度数为2的节点数。4)在完全二叉树中,具有n个节点的完全二叉树的深度为[log2n]+1,其中[log2n]是向下取整。5)若对含 n 个结点的完全二叉树从上到下且从左至右进行 1 至 n 的编号,则对完全二叉树中任意一个编号为 i 的结点有如下特性:(1) 若 i=1,则该结点是二叉树的根

2021-06-03 17:10:25 1088

原创 脏标记-游戏开发

原始地址,怕有改动摘抄过来游戏编程模式-脏标记模式“将工作推迟到必要时进行以避免不必要的工作。“动机许多游戏都有一个场景图的东西。这是一个庞大的数据结构,包含了游戏世界中所有的物体。渲染引擎使用它来决定物体绘制到屏幕上的什么地方。通常来说,游戏中的物体都含有一个形状或者说模型,和一个”变换“。这个变换是一个包含物体位置、旋转角度和物体大小的一个数据结构,我们如果想该变物体的位置或大小,通过改变这个变换就可以了。而通常在游戏中,场景图是分层的,也就是说场景中的物体会绑定在一个父物体上。在这种情况下,

2021-06-01 22:17:30 547

原创 像素点 --------思路

需求: 产品经理:你能不能用div给我画条龙链接 掘金出处 记录下怕删除 哈哈将图片绘制到canvas中var canvas = document.getElementById("canvas");var ctx = canvas.getContext("2d");var image = new Image();image.src = "dragon.jpg";image.onload = function(){ canvas.width = image.width;

2021-05-19 16:54:20 221

原创 深度优先算法

深度优先算法深度优先百度百科深度优先遍历图的方法是,从图中某顶点v出发:(1)访问顶点v;(2)依次从v的未被访问的邻接点出发,对图进行深度优先遍历;直至图中和v有路径相通的顶点都被访问;(3)若此时图中尚有顶点未被访问,则从一个未被访问的顶点出发,重新进行深度优先遍历,直到图中所有顶点均被访问过为止。有点不太好理解就如图所示 整个节点构成的图 是一个二维数组,当进行深度优先的时候先以黑色箭头为指向的下标节点开始搜索,先搜索 arr[0][index] 开始找到存在通路的第一个节点且该节点没有

2021-05-17 20:56:14 1874

原创 数据结构- 图

图 :包含了多组 从一个顶点到另一个顶点的连接数据图就需要记录对应的顶点数据,即顶点在实际应用的的数据图就需要记录每个顶点互相之间的连通数据图就需要记录总共可以走通的路的条数codenamespace DataStructure { export class MapGrap{ private edges: number[][]; // 边对应的数据 private vertexs : string[]; // 顶点数据 private n

2021-05-12 20:38:10 58

原创 八大排序算法(上 包含:冒泡,选择,插入,希尔,希尔插入)

(() => { // 冒泡排序 let arr = []; /** * 从数组的第0个索引开始依次从左到右比较数组中的最小值,如果右边的值比左边小,那么交换值,这样右边的值一直都是最大的值 * 从而将最大的值冒泡到数组的最后一个索引的位置 * 然后从第1...n个索引循环 使用依次从左到右比较数组中的最小值,如果右边的值比左边小,那么交换值 冒泡到第n-1...0个索引 * @param {*} size */

2021-01-15 18:09:37 96

原创 八皇后问题

(() => { // 8皇后的计算逻辑 // 之前想的是将棋盘用一个二维数组装入 // 然后又一个缓存了路径的数组 记录走过的路径 // 每个格子进行对比 // 没想过什么情况下一遍将棋盘走完,没想过for循环完成每一列的递归回溯 单行每列的判定 // 没想过用一个一维数组来记录走过的路径 var result = []; var max = 8; var count = 0; function queueMain() {

2021-01-15 11:31:42 80

原创 后缀表达式计算规则【逆波兰计算器】

后缀表达式计算规则从左到右扫描,将数字压入堆栈;遇到运算符,依次弹出数字栈中的栈顶元素和次栈顶元素,计算出来的值,再次入栈;依次循环扫描后缀表达式重复1,2规则,栈中唯一的数字就是后缀表达式的计算结果;这里主要注意下第二条,计算时 栈顶元素和次栈顶元素 在符号运算时的先后顺序将次栈顶元素放在 运算符号的 左边栈顶元素放在运算符号的右边 计算,才能得到正确的结果例如: 3 4 + 5 * 6 -首先将这个字符串解析为一个数组 并且区分 数字的多位数然后创建一个栈,将数字依次入栈,遇

2021-01-14 14:26:34 245

原创 中缀表达式转后缀表达式【转换步骤】

中缀表达式转后缀表达式思路步骤分析一、初始化两个栈: 运算符栈symbolStack 和 存储中间结果的栈 resultStack;二、从左到右扫描中缀表达式;三、遇到操作数时,将其压入到 resultStack中;四、遇到运算符时,比较期与symbolStack栈顶运算符的优先级;1). 如果symbolStack为空,或栈顶运算符为左括号"(",则直接将此运算符压入symbolStack栈中;2). 否则,若优先级比栈顶运算符高,也将运算符压入symbolStack栈中;3). 否则,(运

2021-01-14 14:11:12 2132

原创 环形链表

定义:环形链表是将 单向链表的首尾相连,可以通过头节点往下再次寻找到头节点。链表主要作用就是方便删除和增加节点使用的,在查找方面有一定的缺陷。环形链表主要用于解决约瑟夫问题约瑟夫问题:设编号为 1,2,3,…n的n个人围坐一圈,约定编号为k(1<=k<=n)的人从1开始报数,数到m的那个人出列,它的下一位又从1开始报数,数到m的那个人又出列,依次类推,直到所有人出列为止,由此产生一个出列编号的序列。当然这个问题用数组也能够实现,这里仅考虑使用环形链表,打开算法思路和了解环形链表exp

2021-01-11 10:41:15 1146

原创 环形队列

环形队列作用可以将数组重复利用,只要队列中的元素少于 最大长度 -1 , 那么就可以一直往队列中存放数据,对于一个固定的容量,实现先进先出,并且会频繁的存入和取出,就可以节省很大的性能消耗队列中 需要队列起始的位置队列结束的位置队列容量限制队列是否为空队列是否填充满了队列的长度结算往队列添加元素从队列取出元素首先我们用的队列会将数组的最后一个元素空出来,不存放任何元素,方便计算根据图解 得出一个通用的计算容量的公式:通过移动开始索引和结束索引 完成数组的复用export

2021-01-07 18:04:03 134

原创 数据结构

稀疏数组作用: 原始数组其中大部分数据是同一个数值的时候,且数组长度较长, 通过稀疏数据可以降低内存消耗,特别是作为数据存储的时候。 下面的例子是一个二维数组,普通一维数组也是同理。通用格式第1行 保存原始数组的行列 和 存在数据的元素个数var sparseArr = [];var row = 11,col = 11,count = 2;sparseArr[0] = [row, col, count];之后的每行保存对应原始数据的行列 和 元素值sparsArr[1] = [

2021-01-06 18:02:11 70

原创 js数组底层实现

js数组底层实现传统意义的数组传统意义上的数组是插入和删除是很耗费性能的,数组的长度是固定的超出数组初始的长度的时候就会抛出异常,但是查询操作非常的优秀,要增加一个超过数组长度的元素时,需要自行将数组扩容,再增加该元素。同一个数组中 所有元素的类型必须是一样的。快数组定义:快数组是基于下标就能够快速访问的数据结构即 传统意义上的数组慢数组定义:慢数组的实现是基于HasTable实现的 散列表,能够方便的增加,删除,修改,且能够存放不同类型的元素,由于慢数组使用的是不连续的内存,就没有了内存

2021-01-06 15:56:42 1456

转载 浅谈js堆、栈、执行栈和EventLoop

JS内存机制整篇文章通过 浅谈js堆、栈、执行栈和EventLoop摘抄,真心写的不错也方便自己查阅JavaScript具有自动垃圾回收机制,周期性会检查没有使用的变量,进行回收释放。所以在闭包中,如果引用了外部的变量,则无法进行释放和回收,一般会传参进去。垃圾回收:找出那些不再继续使用的变量,然后释放其占用的内存,垃圾收集器会按照固定的时间间隔周期性地执行这一操作。在JS中,每一个数据都需要一个内存空间,内存空间又分为栈内存(stack)与堆内存(heap)。栈内存一般储存基础数据类型Numb

2020-10-23 16:45:15 308 1

批量修改csv文件编码错乱问题

请注意,这个脚本将原始CSV文件备份到UTF-8编码的临时文件,然后删除原始文件,并将UTF-8编码的文件重命名为原始文件名。如果您需要保留原始文件,建议在执行脚本之前备份文件夹中的CSV文件。 希望这个脚本满足您的需求,解决了CSV文件的乱码问题。

2023-09-26

unreal-development-kit-game-programming-with-unrealscript-beginn

Thisisastep-by-stepbookthatbuildsonyourknowledgebyaddingtoanexamplegameoverthecourseofeachchapter.Eachtopicusesexamplecodethatcanbecompiledandtestedtoshowhowthingsworkinsteadofjusttellingyou.Complicatedtasksarebrokendownintoeasytofollowstepswithclearexplanationsofwhateachlineofcodeisdoing.ThisbookiswrittenforbeginnerstoUnrealScript,whetherthisisyourfirstexperiencewithprogrammingoryou'recomingintoitfromanotherlanguageandwouldliketolearnhowUnrealScriptusesconceptsyou'realreadyfamiliarwith.lfyouwou

2023-05-27

OpenGL ES 2.0编程指南中文版.pdf

OpenGL ES 2.0 OpenGL ES 2.0 是本书中要讲的 API,目标是讲述完整的细节(核心和扩展),给出怎么 使用的例子,讨论各种优化技术,读完本书希望能你能懂的 OpenGL ES 2.0 的核心 API,能够 开发 OpenGL ES 2.0 的应用程序,不要担心技术细节,懂得怎么去工作。 OpenGL ES 2.0 包含两部分:OpenGL ES 2.0 API 说明和 OpenGL ES 着色器语言说明, 图 1_1 显示 OpenGL ES 2.0 图像管线,图 1 _1 中的的着色器盒子描述了 OpenGL ES 2.0 的管 道可编程阶段,OpenGL ES 2.0 可编程管线的每个阶段预览在下面介绍。

2023-05-27

eigen-3.4.0

c++ 库 eigen-3.4.0

2022-02-09

webgl 工具库 lib.rar

webgl库文件 包括cuon-matrix.js, cuon-utils.js, webgl-debug.js, webgl-utils.js

2021-05-27

空空如也

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

TA关注的人

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