- 博客(11)
- 收藏
- 关注
原创 在Ts 中var,let和const区别
一,介绍在ts中var,let,const 和const一样是声明变量的关键字。在我的理解中var修饰的变量可以在使用之后声明,其实是类似于静态,但在声明之前为空值。let和const就比较中规中矩要在使用前使用来声明,但const修饰后就成了常量。二,实例1.第一种var可以在使用后声明2.第二种const在初始化后不可修改3.第三种var类似静态的用法运行结果:(前两次)...
2020-12-14 17:33:42 7614
原创 关于MipMap
关于MipMap原理1.MipMap多级江源纹理技术,是在游戏后期的一种游戏优化技术。2.提前用滤波处理来得到很多更小的图像,形成一个图像金字塔,每一层都是对上一层纹理优缺点1.优点远时使用精度低的,近时使用精度高的。2.占用内存...
2020-10-25 08:47:29 315
原创 解析Lua实现热更新原理
热更新就是在程序运行时对程序进行更新。比如我们游戏中的目的地突然改变,我们要更新路线但人物移动不停止function reloadUp(moudle_name) package.loaded[modulename] = nil require(modulename)end
2020-08-24 11:18:58 959
原创 lua元表与元方法
元表1.首先我们先了解下lua的表表(table):一种数据结构,使用关联型数组,你可以使用任意类型的值来做数组的索引,但这个值不可以是nil,容量大小不是固定的创建:表名 = {元素1,元素2,…},也可以不写元素比如t1 = {}这样这就是一张空表(注意取名时不可以是关键字table)插入:table.inster(表名,元素)排序:table.sort(表名,方法)(这里的方法可以不写,默认为升序,元素下表为数字)(方法:function( a,b )return a>=bend
2020-08-23 17:56:35 1188
原创 Lua闭包函数解析
闭包函数1. 概念通过调用含有一个内部函数加上该外部函数持有的外部局部变量(upvalue)的外部函数(就是工厂)产生的一个实例函数2. 组成外部函数+外部函数创建的upvalue+内部函数(闭包函数)【形成的闭包是引用类型的】3. 案例格式function function_name1( ... )--body return function function_name2( ... )-- body endend实现b = 10function BB( ) b = b+2
2020-08-20 22:28:16 168
转载 Lua——Table表
Table表是 Lua 的一种数据结构用来帮助我们创建不同的数据类型,如:数组、字典等。使用关联型数组,你可以用任意类型的值来作数组的索引,但这个值不能是 nil。是不固定大小的,你可以根据自己需要进行扩容。也是通过table来解决模块(module)、包(package)和对象(Object)的。例如string.format表示使用"format"来索引table string。Table构造– 初始化表mytable = {}– 指定值mytable[1]= “Lua”–
2020-08-19 11:32:40 179
原创 Lua_GC分析
GC分析1.从根节点开始遍历GC对象,如果可达,则标记;2.遍历所有的GC对象,清除没有标记的对象三色标记法三色标记法是Lua5.1后的一种三色回收算法白色:在开始时,是所有的对象都为白色,但在遍历完一遍对象后如果还是白色那么将被清楚;灰色:用在分布遍历阶段,如果一直是对象为灰色的话,遍历不会停止黑色:确定对象被引用,将不会被清除;GC的6种状态GCSpause:gc开始阶段,初始化一些属性,将一些跟节点(主线程对象,主线程环境对象,全局对象等)push到灰色链表中。GCSprop
2020-08-17 22:20:33 448
原创 八大排序
1.冒泡排序算法步骤比较相邻的元素。如果第一个比第二个大,就交换他们两个。对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最大的数。针对所有的元素重复以上的步骤,除了最后一个持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。动图演示3.代码void Bubble_Sort(int *num, int n){ for (int i = 0; i < n; i++) { for (int j = 0; j <
2020-08-16 19:38:07 90
原创 游戏中查找分数的算法和简单的寻路算法
查找分数1.问题描述假如在游戏中有很多人参加一场记分制比赛,那么我们要找出里面分数要如何做?2.问题分析1.找到最大值2.查出分数为多少的玩家这两个问题我第一个想法便是遍历数组;但显然是不可取的,因为效率低通常,我们会先运用快排排序,然后再用二分法查找;因为快排和二分法速度快效率高。**3.代码 **1.快排int getpos(int *num,int n,int left,int right){ if (left >= right || left > n - 1
2020-08-16 19:01:27 266
原创 平衡二叉树-AVL树和红黑树
平衡二叉树—AVL树与红黑树1.平衡二叉树平衡二叉树:指的是,任意节点的子树的高度差都小于等于1。常见的符合平衡树的有,B树(多路平衡搜索树)、AVL树(二叉平衡搜索树)等。2.平衡二叉树示意图第一棵树左边节点深度为3右边节点深度为1这样高度差为2这样的就是不平衡的;第二棵树左边节点深度为2右边节点深度为1这样高度差为1这样的就是平衡的;如果不平衡的话要咋作呢比如一棵树上有ABCDEF,6个结点的树如图这样一棵不平衡二叉树要咋做呢首先我们先分清不平衡二叉树有哪些类型LL类型R
2020-08-13 01:24:23 405
原创 栈与队列实现以及相互转化
栈与队列栈与队列可以理解为特别的链表。那么什么是链表呢?链表示意图像这样的我们成为一个节点一般我们是这样定义的在结构体中struct Node//这里访问权限为public{int data;//数据域,这里我们想使用intNode * node;//指针域,用于指向下一个节点}在类中class Node//这里数据为private访问权限{int data;//数据域,这里我们想使用intNode * node;//指针域,用于指向下一个节点}就是这样由一个节点指向下
2020-08-12 01:11:46 920
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人