自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Unity笔记

1.transform.GetComponentInChildren 该方法获取的子物体是全部子物体,包括子物体下的子物体2.(有待解答)实例化(Instantiate)时vs给的提示是实例化的物体和生成所在的父级,不是以往的位置坐标,旋转角度。3.(今日项目需要优化的地方)去实现一个用代码生成图片,带上button控件,同时把他们加入到链表中,根据其下标,依次实例化出模型。4.实例化出的物体防止加到UI层级后导致位置信息和大小的错乱,先将其实例化到场景中,因为是按照UI的顺序实例化出来的,所以需要不

2020-08-12 19:06:23 225

原创 UI框架

2020-08-12 19:05:28 162

原创 C#虚方法,抽象类笔记

1.C#中的抽象类用abstract修饰不能用sealed修饰符抽象类不能被实例化从抽象类派生的非抽象方法必包括继承的所有抽象方法和抽象访问器的实现必需用override重写什么时候要用到抽象类,方法比如你要去定义许多动物的类,动物们同属于animal类,动物们都会eat,walk,所以可以去定义一个animal的抽象类,里面含有eat walk的抽象方法(定义就行,不用具体实现)。然后当需要建立某个动物的类时,就可以去继承animal类。从而继承它的方法。那么为什么要用抽象方法而不用普通方

2020-07-13 15:22:01 193

原创 牛客unity面经的一些题目记录(不定期补充)

1: 一个数组,怎么不用循环,不逐一赋值,把它逆序输出class Program { static void Main(string[] args) { int[] ary = new int[] { 1,2,3,4 }; Sort(ary, ary.Length); } static void Sort(int[]a, int count) {

2020-07-08 17:18:41 633

原创 Unity C#面试题笔记 值类型和引用类型的区别

值类型和引用类型的区别值类型存放在栈stack中引用类型 数据存放在堆heap中。地址存放在栈stack中值类型变量声明后,不管是否已经赋值,编译器为其分配内存。声明一个引用类时,只在栈中分配内存,用于存放地址,而并没有为其分配堆上的内存。值类型和引用类型赋值的区别:运行结果:将值类型的变量赋值给另一个变量,会执行一次赋值,赋值变量包含的值。将引用类型的变量赋值给另一个引用类型变量,它赋值的式引用对象额内存地址,在赋值后就会多个变量指向同一个引用对象实例。值类型和引用类型按值传递的区别

2020-06-03 13:56:59 666

原创 unity AssetBundle ab包笔记

打包功能实现,并且扩展到菜单栏,该脚本需要在Editor中创建。public class CreateAssetBundle : MonoBehaviour{ [MenuItem("Assetbundles/BuildAssetBundles")]//菜单扩展 static void BuildAsserBundles() { string streamPath = Application.streamingAssetsPath;//路径 if

2020-05-31 18:25:42 173

原创 Unity场景的异步加载

当unity跳转大场景时,使用同步加载会特别缓慢,卡。所以推荐使用异步加载。这里用代码制作了个使用异步加载的加载动画。using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.UI;using UnityEngine.SceneManagement;public class LoadManager : MonoBehaviour{ public Game

2020-05-26 16:32:18 627

原创 Unity2D拖动物体笔记

Unity2D拖动物体笔记unity拖动物体的方式有很多。最简单就是检测鼠标的经过,按下和抬起。当鼠标按下时,使得物体跟随着鼠标,也就是两者的位置信息保持一致。需要注意的是,物体的坐标属于世界坐标,鼠标的坐标属于屏幕坐标,所以需要吧鼠标的坐标信息转换成世界坐标。private bool isOver = false; private void Update() { if (isOver) { Vector2 Pos = Came

2020-05-25 16:06:06 2164 2

原创 Unity优化 lod技术

Unity优化 lod技术LOD Group是unity里面的一项插件,他的功能是可以随着摄像机视角的不断远离或靠近来显示设定好的模型。为什么使用lod: 当场景有许多模型而且都是面数很多的高模,模型数量的增加必然增加引擎的负载,画面里出现的模型越多,也会越卡。而使用lod后,当你的视角远离了这个模型后,你可以将这个模型替换成相同但是面数比较少的低模。或者当视角远离一定距离后直接隐藏该模型。这样就做到了unity性能的优化近距离:中距离:远距离:...

2020-05-23 17:20:32 440

原创 数据结构算法的一些排序笔记

冒泡排序:for(i=0;i<list.Count-1;i++){ for(j=0;j<lisy.count-1-i;j++) {int temp=list[j]; list[j]=list[i]; list[i]=temp;}}选择排序for(i=0;i<list.Count-1;i++){int min=i;for(j+i+1,j<list.Count,j++){if(list[min]>list[j]{min=j}i

2020-05-18 14:35:20 174 1

原创 Unity简单的对象池

对象池理解: 在场景中需要经常生成和销毁物体时,直接使用实例化和destroy会十分损耗性能。这个时候可以创建一个对象池。将这些东西生成后存入池子中,使用时取出,不使用则放回。通过控制其setActive属性来实现生成和销毁的效果。创建一个对象池一般需要用到创建一个表,可以是list,queue,stack,Dictionary等数据结构。这里使用Queue先进先出的特性,创建对象池,实现发射子弹的小功能。using System.Collections.Generic;using UnityEng

2020-05-13 12:31:42 324 1

原创 Unity 字典笔记

Dictionary<Key,T>特点: 字典实现方式和哈希表一样但是字典是类型安全的,因为创建字典需要声明类型和key,哈希表不用,而且哈希表会引起哈希冲突。但是字典通过创建额外的链表来存储元素放置了查找的冲突。字典的速度是通过更大的内存开销提供的。一些方法:...

2020-05-10 18:20:06 490

原创 unity队列和栈笔记

队列 Queue特点:1.先进先出,2.初始容量323.只能在表的一段进行删增4.在使用Enqueue,会判断队列的长度是否足够长,若不足,则会依据增长因子来增加容量。栈 Stack特点:1.只允许在表的一端进行增删2.后进后出线性表3.默认容量位10...

2020-05-08 19:15:40 973 1

原创 unity List笔记

List泛型List有着Array和ArrayList的优点,需要声明对象类型。链表:LinedList

2020-05-07 16:34:31 610

原创 unity Arraylist数组列表笔记

Arraylist数组列表:优点:1.不用申明数组长度(ArrayList的对象的差昂度是按照片其中存储的数据来动态增加与缩减的)2.可以存储不同类型的元素(ArrayList会把它的元素都当做Object来处理)缺点:1.ArrayList不是类型安全的。因为把不同的类型都当做Object来做处理,很有可能会在使用ArrayList时发生类型不匹配的情况。2.当插入值类型是会发生装箱...

2020-05-06 16:46:57 2139

原创 Unity数组Array笔记

数组Array:1.数组存储在连续的内存上;2.数组的内容都是相同类型或者类型的衍生类型;3.数组可以直接通过下标访问 aarray[i];数组优点:1.索引速度快2.赋值和修改元素简单数组缺点:1.插入新元素不方便2.定义数组一定要申请空间,指明数组的长度,只能存储同一种数据类型数据创建素组以及遍历显示:int[] array = new int[5];//创建数组,需...

2020-05-03 21:36:19 5357 1

原创 UDP和TCP区别

UDP和TCP区别1. UDP是面向无连接的,TCP是面向有连接协议的的2. UDP不可靠(丢包不会重发,顺序乱掉不会纠正)TCP可靠(丢包会重新发送,顺序打乱会进行排序)3. UDP不使用流量控制,拥塞控制,TCP则使用4. UDP采用数据报模式TCP采用流模式5. UDP系统资源占用少,TCP则多6. UDP首部结构简单,开销少(大概8位字节)TCP首部结构复杂,开销大(大概20位...

2020-05-02 20:07:36 105

原创 线性表

线性表笔记线性表(List)的定义:由零个或多个数据元素组成的有限序列线性表的抽象数据类型:InitList(*L):初始化操作,建立一个空的线性表LListEmprty(L):判断线性表时候为空表,若线性表为空,返回true,否则返回falseClearList(*L):将线性表清空GetElem(L,i,*e):将线性表L中的第1个位置元素值返回给e。LocateElem(L,e...

2020-05-02 19:00:20 97

原创 常见的时间复杂度

常见的时间复杂度常用的时间复杂度所耗费的时间从小到大依次是:O(1)<O(logn)<O(n)<O(nlogn)<O(n^ 2)<(n^ 3)<O(2^n)<O(n!)<O(n ^ n)

2020-05-01 19:34:33 152 1

原创 数据结构笔记

数据结构笔记1.什么是数据结构程序设计=数据结构+算法是数据元素相互之间存在的一种或多种特定关系的集合2.数据结构的一些名词数据:描述客观事物的符号,计算机可以理解的对象,可以输入计算机处理的符号。例如,整数、小数、声音、图像、都是数据。数据元素:数据的基本单位,通常作为整体处理。比如人类的数据元素是人。数据对象:是性质相同的数据元素的集合,是数据的一个子集。数据结构:是相护之间存...

2020-04-30 20:47:31 235 1

原创 Unity2D游戏笔记

1.如何用鼠标控制玩家的转向Camera.main.ScreenToWorldPoint(Input.mousePosition).x获取鼠标当前的屏幕x轴坐标与主角的x轴坐标进行对比,若大于则往右转,反之往左。控制转向的三种方法:①: transform.localScale(1,0,1)→transform.localScale(-1,0,1)②:transform.localEu...

2020-04-21 19:10:16 946

原创 Unity 增加2D游戏的打击感笔记

1.玩家打击敌人产生底色的变换效果原理是利用Shader来给敌人添加一个材质Material(材质),在受到来自伤害的碰撞时去改变底色的值,同时还有设置底色回复到原来颜色的时间。设置两个float来控制底色的显示时间 public float hurtLength;//显示时间 private float hurtCounter;//计时器在碰撞事件发生时改变shader中控...

2020-04-10 15:03:09 1866 1

原创 unity2D游戏学习笔记

unity2D游戏自用学习笔记1.2D游戏利用Rigidbody 2D来进行左右移动,转向,跳跃。左右移动:获取移动物体的刚体,利用Input.GetAxisRaw("Horizontal")来获取左右方向键或者AD键按下时得到的值。把值给刚体的速度velocity的x来进行左右方向的位移。转向:改变物体Scale x的正负值。或者transform.localEulerAngles = n...

2020-04-06 18:44:44 2301 1

空空如也

空空如也

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

TA关注的人

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