自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(39)
  • 资源 (7)
  • 收藏
  • 关注

转载 关于vs编码格式UTF8中文处理方式

一、现象vs2017默认创建的.cpp等,编码格式默认为简体中文GB2312,给代码可移植性带来一些列问题,现象有如下警告或者汉字乱码:二、建议为了方便后续中文处理,且代码可移植性,建议使用UTF-8编码格式,跨平台更推荐此格式。三、方法推荐三种办法:1、如上图,用notepad++ 打开文件,编码,转为UTF-8,保存。2、vs自带的高级保存,如下图,高级保存,选UTF-8,保存就行。(默认没有高级保存选项,请参考这里https://blog.csdn.net/Evanbear.

2021-06-06 02:23:23 379

原创 C# 加密,java 解密

import java.math.BigInteger;import java.util.Scanner;import java.security.KeyFactory;import java.security.PrivateKey;import java.security.KeyPair;import java.security.KeyPairGenerator;import java.security.PublicKey;import java.security.interfaces.R.

2021-01-07 10:34:01 499

原创 pixi的graphics转sprite,及简单交互

拖拽方法,应用在graphics上。const app = new PIXI.Application({ backgroundColor: 0x1099bb });document.body.appendChild(app.view);// create a texture from an image pathconst texture = PIXI.Texture.from("examples/assets/bunny.png");// Scale mode for pixelatio.

2020-09-28 20:17:22 908

原创 最简双向循环链表

/// <summary> /// circular doubly linked list /// 双向循环链表 /// </summary> public class Node { public Node Pre; public Node Next; /// <summary> /// 因为循环,所以用的方法都是插入的 /// </summa.

2020-09-16 19:12:19 85

原创 使用反射的简单工厂类

using System;using System.Collections.Generic;using System.Linq;using System.Reflection;using System.Text;using System.Threading.Tasks;using System.Windows.Documents;using Autodesk.Revit.DB;using Autodesk.Revit.DB.Architecture;namespace Automati.

2020-09-09 14:57:06 97

原创 多边形最大内接矩形算法C# java

Polygon.cs /* compute y intersection with an edge * first pixel completely inside * ceil function if edge is on top, floor otherwise * (+y is down) */ int yIntersect(float xi, Line2 e) { int y; .

2020-09-09 14:55:43 2484 5

原创 js文件保存

/** FileSaver.js* A saveAs() FileSaver implementation.** By Eli Grey, http://eligrey.com** License : https://github.com/eligrey/FileSaver.js/blob/master/LICENSE.md (MIT)* source : http://purl.eligrey.com/github/FileSaver.js*/// The one and only.

2020-08-12 15:05:25 798

原创 A星算法的一些关键点

这里写自定义目录标题A星算法的一些关键点A星算法的一些关键点基本原理C#代码 internal abstract class AStarData { public int FSum => _gSum + _hSum; private int _gSum; private int _hSum; public int...

2019-08-21 16:41:37 227

原创 若有恒 何必三更眠五更起 最无益 莫过一日曝十日寒

若有恒 何必三更眠五更起 最无益 莫过一日曝十日寒

2019-08-20 17:00:19 749

原创 访问者模式

访问者模式要解决的问题是,如果一个类的需要频繁的增加方法,但是因为接口原因这个类又不能更改。我采取的访问者模式,就是给这个类实现一个Element的接口的Accept的方法,这个方法会实现一些实现了IVisitor接口的类。也就是说只要我实现了IVisitor接口,我就能在不改变Element的前提下,对他进行更改,访问。这个等于是,把一个需要更改的点,转移到了另个类,这种方法,一般是面对我要改,...

2019-08-14 13:38:01 72

原创 外观模式

给需要进行统一管理的对象,加一层封装。来统一管理

2019-08-14 13:37:54 82

原创 代理模式

给被代理的对象加一层封装,通过访问过proxy来访问realsubject

2019-08-14 13:37:45 77

原创 桥接模式

桥接模式有两个抽象类,用其中的一个抽象类的子类来调用另一个抽象类的子类对象的方法,就是桥接。这种方法将调用和实现,完全分开,而且可以无限扩展。...

2019-08-14 13:37:01 69

原创 建造者模式

建造者模式应对的是复杂的构建过程中,我们将构建过程和构建步骤进行解耦,使其能自由组合。电脑组装等是一个很好的例子

2019-08-14 13:36:51 62

原创 工厂模式和抽象工厂模式

工厂模式就是对简单的new对象进行了封装,为什么要把new进行封装呢?当需要new很多不同对象时,而这些对象又有一些共同点,我们需要进行管理。还有一点是,创建过程有一点复杂度。那么交个一个工厂类来管理,有点像归类的办法,不用去直接面对更复杂的产品。...

2019-08-14 13:36:44 59

原创 状态模式

状态模式应对的是,当程序中有多种状态,每一种状态都伴随着许多不一样的逻辑处理。如果我在客户端进行处理,会针对不同的状态,写很多判断逻辑,包括if,else ,switch等,而且不利于扩展。这样,我们利用多态的方法,为不同状态建立一个父类,不同的子类对应不同的状态,这样需要增加状态和修改状态是,只需要更改对应的状态类。而客户端也只需要实例相对应的状态类就行了。...

2019-08-14 13:36:33 60

原创 设计模式之解释器模式

这个模式不太懂,不知道什么时候会用

2019-08-14 13:36:25 62

原创 原型模式

如果一些类型涉及到复制和克隆操作的时候,可以为他们来实现一个Clone接口,方便操作。在.NET中实现ICloneable接口,使用MemberwiseClone方法来进行拷贝。

2019-08-14 13:36:18 89

原创 适配器模式

适配器模式,将需要使用的方法封装在一个,能给客户端调用的接口里面,让实现这个接口的对象能使用。这个模式,一般会在维护重构代码的时候使用。...

2019-08-14 13:36:10 58

原创 享元模式

享元模式,有点像对象池技术。都必须要有一个享元工厂来生成需要的元。

2019-08-14 13:36:00 63

原创 delegate的三种调用方式,同步调用,异步调用,异步回调

C#1、同步调用del.Invoke();2、异步调用del.BeginInvoke(,,null,null);3、异步回调del.BeginInvoke(,,new AsyncCallback(callbackself),AsyncState);void callbackself(IAsnycResult result){ delegateType del...

2019-08-14 13:35:51 129

原创 Unity拖拽UI生成物体的实现

using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.EventSystems;public class MYTEST : MonoBehaviour, IBeginDragHandler, IDragHandler, IEndDragHandler{...

2019-08-14 13:35:37 744

原创 Lua协程

Lua协程的几个方法意义coroutine.create(f),f是协程的主函数coroutine.wrap(f)会返回一个函数,每次调用这个函数f(xxxx),就相当于调用coroutine.resume(co,xxxx)coroutine.resume(co,...)...是传入协程的参数,返回的是上一次yield的参数coroutine.yield(...)挂起corouti...

2019-08-14 13:35:23 68

原创 装饰模式

装饰模式的作用就是,要给一个类增加一个功能,但是有不能直接在这个类上改,就需要加个Decorator来封装这个类的对象,来加功能。但是加的功能有多的时候,就要建立一个Decorator的抽象类。这样封装相当于是新加了一个类。那么功能增加的多是不是会导致类变多呢?所以被装饰的类和装饰类都需要继承至同一接口,再提供一个他们之间组合的方法。有点递归的意思。...

2019-08-14 13:35:14 41

原创 组合模式

组合模式是一种很常见的形式,当你的业务模型是树状结构的时候,自然就会写成组合模式的样子。有树的类,节点,还有叶子。节点的类又是树类的子类。...

2019-08-14 13:35:07 45

原创 责任链模式

责任链模式就是一个对象,需要许多不同的对象来访问,但是访问的顺序有一定的要求。如果乱来就会导致访问的混乱,所以,我让这些访问的对象都实现一个Chain的接口。这个接口提供了一个SetNextChain的方法。只要我每次访问后都能告诉下次访问的对象就形成了一个责任链,有点像工厂的流水线。简化代码结构。这个模式其实没什么卵用,遇到这种问题的时候,我们用LinkList<>来存储相关的对...

2019-08-14 13:35:00 44

原创 设计模式之命令模式

命令模式是指客户端在是使用请求的时候,对于请求的调用者和执行者的耦合进行解耦的办法。比如一个客户端的请求,需要调用者调用1,2,3,而执行者又要执行a,b,c,如果增加一个请求或者修改这个请求,要在客服端增加方法,调用者和执行者都要改,这就是强耦合。命令模式就是用一个命令把这个请求抽象出来。当增加方法是,只用改这个命令类就好了ICommand;把命令当成一个对象来看,就是命令模式,这种天...

2019-08-14 13:34:48 45

原创 解释器模式

这个模式有点像翻译软件,把一种形式翻译成另一种形式。难得地方应该是算法,不是模式

2019-08-14 11:48:48 41

原创 中介者模式

当系统出现网状结构的时候,可以引入中介者模式,这个模式能把复杂的网状结构,变为星型结构。比如说多人聊天系统。如果是像现实生活中一样,每个人之间都互相联系,当其中一个有变化,其余所有和他交互的都受到影响。引入中介者模式后,每个人只与中介者联系。当一个发生变化是,只需要改变中介的代码就好了,这个也是解耦的一种方式。也不一定是要网状结构,只有当两个需要信息交换的对象,本身的功能已经很复杂了,不...

2019-08-14 11:48:32 64

原创 备忘录设计模式

备忘录:专门用来记录你要记住的一些东西的卡片,很显然这些数据是有用的且重要的。在程序中把经常要用的东西,都保存起来,这也叫设计模式,不是数据结构吗?...

2019-08-14 11:47:09 76

原创 策略模式

客户端会根据不同的情况来选择不同的策略来达到目的,这个时候如果我们把选择策略的逻辑使用判断逻辑让客户端来选择,会导致代码变得耦合,增加修改困难。为了增加灵活性。使用多态对不同策略建立父类来统一管理。让客户端直接选择策略时来实例化不同的策略。这种用多态的方法,取代判断语句的做法,和状态模式很像。总的思路就是要把变化点提取出来,增加灵活性,降低耦合。把变化点统一管理,降低管理成本。什么鸡巴策略,状...

2019-08-14 11:39:06 46

原创 Vue和mobx的基础理解

Vue:    index.html =&gt; main.js =&gt; App.vue ,然后就在这个基础上去建立各种*.vuemobx:action:标记此动作会被observable,而触发reaction 或autorunrunInAction:异步action,标记action中的异步操作extendObservable: + observableuseStr...

2018-07-22 22:59:27 2026

原创 类似目录的三种遍历方法

/// &lt;summary&gt; /// 广度遍历 /// &lt;/summary&gt; /// &lt;param name="tf"&gt;&lt;/param&gt; /// &lt;returns&gt;&lt;/returns&gt; List&lt;Transform&gt; FindChildRecurs

2018-07-09 22:54:05 205

原创 WWW加载AssetBundle的坑

其实就是一个路径的坑,平台不一样,路径也不一样。比如Win是file:///,三杠其他是file://,两杠public static string PERSISTENT_PATH_DATABASE //= LGameConfig.LOCAL_URL_PREFIX + Application.persistentDataPath + "/DataBase/"; { get ...

2018-06-15 17:36:29 957

原创 进程之间简单Socket通信

当两个应用要嵌套的时候,嵌套完成之后需要通信,比如Unity和WF的通信,我试过NamedPipeServerStream这种命名管道,但是由于Unity只能使用.Net2.0。所以但Unity给WF发消息的时候出现bug(打断点后,Unity卡死),无法正常发送。Unity端做客户端public abstract class BasicSocket{ publi...

2018-06-15 17:36:02 248

原创 VS调试Shader方法

1、Unity关闭抗锯齿(Anti Aliasing),"Graphics API for Windows"选择Direct3D11,打个PC包。2、VS建个C++的空项目,配置属性中的调试命令为步骤1中的PC包中的exe的路径,命令参数填“-force-d3d11”3、启动图形调试,打开像素历史记录,里面有你想要的...

2018-04-28 16:00:15 2653

原创 StrangeIOC框架心得

先说Binder,这个框架出现最多的就是Binder,也是很多人刚接触的时候不能理解的地方,中文意思就是粘合剂。有几个主要的Binder,他们都是继承至Binder的,Binder其实就是一个高级表。里面存放的是以typeof(T)为key的对象。同key下以name(通常用枚举)来区分。,value存在binding中。1、CrossContextInjectionBinder(跨上下文注入)核...

2018-04-22 12:49:39 906

原创 Object中== 和Equals,及Get的作用

object o = 10;if(o==o)//trueobject o = 10;if(o.Equals(o))//trueobject o{get{return 10;}}if(o==o)//falseobject o{get {return 10;}}if(o.Equals(o))//trueobject o{get {return "o";}}if(o.Equals(...

2018-04-16 16:17:26 129

原创 override 和new重写方法的区别

override :使用父类的方法是不可能使用父类方法的,这辈子都不可能用父类的方法。new:转成父类了,就用父类的方法

2018-04-11 17:06:20 234

斯坦福大学algorithm

斯坦福大学的研究机构由院系实验室、大学与工业合作的研究中心、 斯坦福研究园 斯坦福研究园 政府设在大学的研究中心以及独立研究机构四种类型组成,四类研究机构总共包括122个研究单位,分别是 70 个中心 (Center) 、16个实验室 (Lab) 、10个研究所(Institute) ,以及各种项目 (Project) 、论坛 (Forum) 、计划 (Program)、研究组( Group) 等其他研究机构25个,其中独立科研机构共有12个 ,其中工程类5个,人文社会科学类7个 ,根据学校官网统计, 科研机构已经承担了斯坦福大学科研总量的20% ,学校的多数学术活动和项目都是由科研机构举办的

2018-06-26

UNITY SHADER

Shader就是在GPU上运行的程序叫做着色器程序(一般的程序在CPU上执行指令)。 Unity Shader使用的是NVIDIA公司的Cg标准语言,可以处理顶点着色、像素着色任务。Unity中的游戏对象只要是可视的,就一定会调用shader渲染,最简单的shader就是diffuse类型,就是你给对象涂个什么颜色,这个对象在白光下就是什么颜色。

2018-04-24

uGUI Message Box Modal Dialog and Menu

For instance using "Localization package" from the asset store you would do this: MessageBox.Localize = (originalString) => { return Language.Get(originalString); }; Current text strings that need to be localized are "OK", "Yes", "No", "Cancel", "Abort", "Retry", "Ignore" This function only needs to be set once at game startup. See MessageBoxExample.TestLocalization for an example.

2018-01-28

EasySave,Easy+Save+v2.6.3

Easy Save保存的格式:(不能直接保存自定义类) ,Easy Save存储和读取基本都是一条命令就能搞定非常方便,而且数据都是经过加密存储所以也不用担心数据泄密的问题。

2018-01-19

天空盒贴图

天空盒贴图天空盒贴图天空盒贴图天空盒贴图天空盒贴图

2018-01-16

skybox10种

10种神奇的天空盒,从所未有的体验,让你身灵其境,所有的东西,都是你没有见过的

2018-01-15

Runtime Eidtor

Unity 插件,学习分享使用,在运行GAME视图下可进行编辑,很实用,很方便

2018-01-08

空空如也

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

TA关注的人

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