自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 什么事DrawCall?怎么减少DrawCall?

什么是DrawCall?DrawCall是对底层图形绘制接口的调用命令GPU进行渲染,GPU和CPU并行工作,他们之间通过命令缓冲区连接,CPU像GPU发送渲染命令,GPU接受并执行相对应的渲染命令。怎么减少DrawCall?提交很多小的DrawCall会造成CPU的性能瓶颈,CPU的时间都浪费了在准备DrawCall身上了,把很多小的DrawCall合成一个大的DrawCall,由于我们需...

2019-07-15 21:29:54 1334

原创 XML文件详解以及解析

1.概述:xml:即可扩展标记语言,xml是互联网数据传输的重要工具,它可以跨越互联网任何的平台,不受编程语言和操作系统的限制,可以说它是一个拥有互联网最高级别通行证的数据携带者。xml是当前处理结构化文档信息中相当给力的技术,xml有助于在服务器之间穿梭结构化数据,这使得开发人员更加得心应手的控制数据的存储和传输。Xml用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型...

2019-06-06 20:22:48 611

转载 C#之链表的使用

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.IO;namespace test{    class Node     //结点    { &nb...

2019-05-22 20:38:51 2114

原创 C#中的as和强制转换的区别

as和强制转换之间最大的区别就在于如何处理用户自定义的转换。操作符 as和 is 都只检查被转换对象的运行时类型,并不执行其他的操作。如果被转换对象的运行时类型既不是所转换的目标类型,也不是其派生类型,那么转型将告失败。但是强制转型则会使用转换操作符来执行转型操作,这包括任何内建的数值转换(如:long转int)。一般情况我们应该先考虑使用as进行类型转换,然后再考虑使用is,最后才考虑使用强制...

2019-04-24 20:38:09 1152

原创 Unity3D用代码方式创建一个Cube并对其进行操作用C#实现器

首先创建一个MakeCube脚本在Awake函数中写以下代码private void Awake(){varpMeshFilter = gameObject.AddComponent(typeof(MeshFilter)) as MeshFilter;//网格过滤器varpMeshRender = gameObject.AddComponent(typeof(MeshRenderer...

2019-04-19 14:49:43 7968 5

原创 什么是索引器?

什么是索引器?索引器是C#引入的一个新型的类成员,它使的类中对象可以像数组那样方便、直观的被引用。索引器允许按照与数组相同的方式对类、结构或接口进行索引。索引器类似于属性,不同之处在于它们的访问器采用参数。它可以像数组那样对对象使用下标,另外,它还提供了通过索引方式方便地访问类的数据信息的方法。1、索引器的定义C#中的类成员可以是任意类型,包括数组和集合。当一个类包含了数组和集合成员时,索引器将大大简化对数组或集合成员的存取操作。定义索引器的方式与定义属性有些类似,其一般形式如下:

2019-04-18 20:50:35 4659

转载 Unity控制人物旋转看向目标的方式

https://blog.csdn.net/icecoldless/article/details/104069246

2021-01-27 18:05:06 496

转载 unity物体自发光

https://www.cnblogs.com/mrmocha/p/8320994.html

2021-01-16 18:05:56 970

原创 DOTween初步研究

https://blog.csdn.net/qq_38811117/article/details/105982534

2020-12-25 10:56:10 144

原创 Unity3D DoTween插件下载以及相关内容案例

DoTween插件下载链接:https://pan.baidu.com/s/1By0GLFRm5ixAx8JfmoQWlQ提取码:cl0bDoTween方法控制物体移动、旋转、大小http://dotween.demigiant.com/https://www.cnblogs.com/backlighting/p/5344047.html/// /// 控制场景中的cube/// public class CubeController : MonoBehaviour{Rigidbody

2020-12-24 17:12:14 2001

转载 2D画面中使物体跟随鼠标的方向旋转(向量法)

https://blog.csdn.net/UIUCGOGOGO/article/details/78879802

2020-07-21 10:09:29 152

原创 能用foreach遍历访问的对象需实现 () 接口或声明()方法的类型

能用foreach遍历访问的对象需实现IEnumerator 接口或声明GetEnumerator方法的类型

2019-08-12 21:08:36 768

原创 移动一根火柴2+7-2+7=30

247-217=30

2019-08-12 21:05:28 756

原创 求以下表达式的值,写出您想到的一种或几种实现方法: 1-2+3-4+……+m

int Num = this.TextBox1.Text.ToString() ;int Sum = 0 ;for (int i = 0 ; i < Num + 1 ; i++){if((i%2) == 1){Sum += i ;}else{Sum = Sum - I ;}}System.Console.WriteLine(Sum.ToString());Syst...

2019-08-12 21:04:25 945

原创 委托和事件的区别

1.委托是一个类,事件是对象。2.委托可以被外部的类调用,事件不可以。3.事件相当于委托的一个变量。4.委托可以把一个方法作为参数代入另一个方法。 委托可以理解为指向一个函数的指针。5.委托可以通过“=”、“+=”、“-=”进行赋值,但是事件只能通过“+=”和“-=”对事件进行赋值。...

2019-08-12 21:01:01 664

原创 关于CLR、CIL、CTS、CLS、CLI、BCL和FCL

CTS(Common Type System):通用类型系统CTS是一种类型系统和语言规范,他能够确保CLR能够识别和处理的类型,所有.Net开发语言中类型,无论VS.Net类型还是C#.Net类型最终都会被编译成CLR能够识别的CTS类型,所以CTS是所有平台的抽象型。如果某种语言能在CLR上运行,并不代表这种语言能够符合CTS的规范。这些语言之间就必需取得一个共同的subset,有共同遵守的...

2019-07-26 11:33:00 387

原创 RectTransformUtility API运用

RectTransformUtility.ScreenPointToWorldPointInRectangle使用说明 首先,看Unity Scripting API上的介绍: public static bool ScreenPointToWorldPointInRectangle(RectTransform rect, Vector2 screenPoint, Camera cam, ou...

2019-06-17 19:28:20 386

原创 装饰者模式

在现实生活中,常常需要对现有产品增加新的功能或美化其外观,如房子装修、相片加相框等。在软件开发过程中,有时想用一些现存的组件。这些组件可能只是完成了一些核心功能。但在不改变其结构的情况下,可以动态地扩展其功能。所有这些都可以釆用装饰模式来实现。装饰模式的定义与特点装饰(Decorator)模式的定义:指在不改变现有对象结构的情况下,动态地给该对象增加一些职责(即增加其额外功能)的模式,它属于对象...

2019-06-12 21:04:05 74

原创 Uml类图

继承、实现、依赖、关联、聚合、组合的联系与区别分别介绍这几种关系:继承指的是一个类(称为子类、子接口)继承另外的一个类(称为父类、父接口)的功能,并可以增加它自己的新功能的能力,继承是类与类或者接口与接口之间最常见的关系;在Java中此类关系通过关键字extends明确标识,在设计时一般没有争议性;实现指的是一个class类实现interface接口(可以是多个)的功能;实现是类与接口之...

2019-06-11 20:22:00 78

转载 XML是什么,它可以做什么?——写给XML入门者

XML即可扩展标记语言(eXtensible Markup Language)。标记是指计算机所能理解的信息符号,通过此种标记,计算机之间可以处理包含各种信息的文章等。如何定义这些标记,既可以选择国际通用的标记语言,比如HTML,也可以使用象XML这样由相关人士自由决定的标记语言,这就是语言的可扩展性。XML是从SGML中简化修改出来的。它主要用到的有XML、XSL和XPath等。上面这段是对X...

2019-06-10 15:52:30 703

原创 策略模式

策略模式定义:策略模式定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法独立于使用它的客户而独立变化。适用:多个类只是区别在表现行为的不同,在运行时选择具体要执行的行为对客户隐藏自己的实现细节,彼此相互独立优点:可以提供不同的备用方案,方面用户进行选择,选择灵活性比较大可以抽离出不同策略的公共部分,供其使用,减少了冗余度避免使用多重条件(if-el...

2019-06-05 20:22:03 94

原创 工厂模式

说到简单工厂,自然的第一个疑问当然就是什么是简单工厂模式了? 在现实生活中工厂是负责生产产品的,同样在设计模式中,简单工厂模式我们也可以理解为负责生产对象的一个类, 我们平常编程中,当使用"new"关键字创建一个对象时,此时该类就依赖与这个对象,也就是他们之间的耦合度高,当需求变化时,我们就不得不去修改此类的源码,此时我们可以运用面向对象(OO)的很重要的原则去解决这一的问题,该原则就是——封装改...

2019-06-04 20:28:05 71

原创 建造者模式

建造者模式建造者模式(Builder Pattern)使用多个简单的对象一步一步构建成一个复杂的对象。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。一个 Builder 类会一步一步构造最终的对象。该 Builder 类是独立于其他对象的。介绍意图:将一个复杂的构建与其表示相分离,使得同样的构建过程可以创建不同的表示。主要解决:主要解决在软件系统中,有时候面临着"一个...

2019-06-03 20:27:38 189

原创 线程安全

线程安全一个程序和方法在面对任何多线程情况下都没有不确定,那么就是线程安全的. 线程安全主要通过加锁和减少线程之间互动的可能性来实现。通用类型很少全面线程安全的,由于以下几个原因:线程安全的开发负担非常重,尤其一个类型有很多字段时(每一个字段潜在与很多线程交互)。线程安全会降低了性能(正确的说,看它是否在多线程中使用)。线程安全不一定非要使用线程安全类型。因此,线程安全仅在需要的地方实现。然而,有...

2019-05-31 17:21:56 80

原创 观察者模式

观察者模式有以下几个优点:观察者模式实现了表示层和数据逻辑层的分离,并定义了稳定的更新消息传递机制,并抽象了更新接口,使得可以有各种各样不同的表示层,即观察者。观察者模式在被观察者和观察者之间建立了一个抽象的耦合,被观察者并不知道任何一个具体的观察者,只是保存着抽象观察者的列表,每个具体观察者都符合一个抽象观察者的接口。观察者模式支持广播通信。被观察者会向所有的注册过的观察者发出通知。观察...

2019-05-30 21:22:48 101

原创 什么是依赖倒转原则

定义:高层模块不应该依赖低层模块,二者都应该依赖其抽象;抽象不应该依赖细节;细节应该依赖抽象。优点:依赖倒置原则可以提高程序的可扩展性,也可有效的降低程序耦合;依赖倒置原则避免了修改负责复杂逻辑的高层模块,大大提高了程序的稳定性。依赖倒置原则简单点的说就是在编程过程中应尽可能引用抽象类,减少引用具体类。举个例子来说抽象类animal中有很多的共性,而具体类dog(由基类animal派生而来)中...

2019-05-29 17:30:54 618

原创 C#单例模式

1、什么是单例单例模式(Singleton)是几个创建模式中最对立的一个,它的主要特点不是根据用户程序调用生成一个新的实例,而是控制某个类型的实例唯一性,通过上图我们知道它包含的角色只有一个,就是Singleton,它拥有一个私有构造函数,这确保用户无法通过new直接实例它。除此之外,该模式中包含一个静态私有成员变量instance与静态公有方法Instance()。Instance()方法负责检...

2019-05-28 19:20:11 1524

原创 OOP思想

面向对象编程(Object Oriented Programming,OOP,面向对象程序设计)是一种计算机编程架构。OOP 的一条基本原则是计算机程序是由单个能够起到子程序作用的单元或对象组合而成。核心思想:封装,继承,多态.OOP 达到了软件工程的三个主要目标:重用性、灵活性和扩展性。为了实现整体运算,每个对象都能够接收信息、处理数据和向其它对象发送信息。OOP 主要有以下的概念和组件:...

2019-05-27 21:05:22 388

原创 二分查找

基本思想二分查找又叫折半查找,其基本思想是:将列表中间位置的元素与目标元素比较,如果两者相等,则查找成功;否则将列表从中间位置分开,分成前、后两个子列表,如果中间位置的元素大于目标元素,则进一步查找前一子列表,否则进一步查找后一子列表。重复以上过程,直到找到满足条件的元素,使查找成功;或子表为空,此时制定元素不在列表内部。/// /// 二分法查找,递归方法实现,二分查找的条件是原数组有序/...

2019-05-21 20:31:32 81

原创 动态规划

动态规划一、动态规划的基本要素(1)最优子结构性质(2)重叠字问题性质二、掌握设计动态规划算法的步骤找出最优接的性质,并刻画其结构特征递归地定义最优值以自底向上的方式计算出最优值根据计算最优值得到的消息,构造最优解三、算法总体思想动态规划算法与分治法类似,其基本思想也是讲待求解问题分解成若干个子问题但是经分解得到的子问题往往不是互相独立的。不同子问题的数目常常只有多项式量级。...

2019-05-20 09:09:13 401

原创 常见的7种排序算法

冒泡排序1.算法思想冒泡排序,是对序列进行遍历,遍历过程中如果发现相邻两个元素,满足比较条件,则进行交换,一次遍历之后最大的元素被移动到队尾,然后进行第二次遍历,直到序列有序。2.选择排序算法思想选择排序,是先找到起始序列中最小的元素,将它交换到i=0;然后寻找剩下元素中最小的元素,将它交换到i=1的位置…… ,直到找到第二大的元素,将它交换到n-2的位置。这时,整个序列的排序完成。3...

2019-05-14 20:14:46 2332

原创 数据结构——树

树:树的定义:树是n个结点的有限集。n=O时称为空树。二叉树:二叉树的定义:二叉树是n个(n>=0)个结点的有限集合,该集合或者为空集空二叉树(),或者由一个根节点和两棵互不相交的、分别称为根结点的左子树和右子树的二叉树集合二叉树的特点:①每个结点最多只能有两棵子树,二叉树不存在度大于2的结点。②左子树和右子树是有顺序的,次序不能颠倒。二叉树的五种形态:①空二叉树②只有一个...

2019-05-13 21:01:44 65

原创 线性表的顺序存储结构

顺序存储的线性表顺序表的优点:①读取元素时可直接定位,所以在某些操作(比如将顺序表元素反转合围)中,不需要遍历,循环次数(时间复杂度)相对完全遍历而言能减少一半②读取较多的时候用顺序表顺序表的缺点:① 插入 /删除元素,因为要保持其顺序性,所以后续元素需要移动,增加了时间开销顺序存储结构需要三个属性:  存储空间的起始位置:数组data,它的存储位置就是存储空间的存储位置。...

2019-04-23 20:34:57 95

空空如也

空空如也

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

TA关注的人

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