自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(90)
  • 资源 (5)
  • 收藏
  • 关注

原创 LeetCode --- 数学--- 69. x 的平方根

这个很容易就想到使用二分查找时间复杂度 private int BinarySearch(int start, int end, int target) { if (target < 2) return 1; while (start <= end) { v...

2020-03-04 12:02:45 194

原创 LeetCode --- 数学--- 67.二进制求和

本人看这题的时候脑回路清奇,竟让不由自主的想到了位运算。通过& 和^ 俩个操作可以快速的计算。且停止计算的条件是 & 的结果为0时候退出,如果不是就一直进行移位 , & 和 ^ 计算。具体原理我也太难描述但是有官方文档 public string AddBinary1(string a, string b) { var ...

2020-03-02 21:49:52 1090

原创 LeetCode --- 贪心算法 --- 1046. 最后一块石头的重量

C# 没有提供原生的优先队列,但是也可以用SortedList建立一个大顶Heap。但其实也可用通过递归的技术手段来实现。 public int LastStoneWeight(int[] stones) { if (stones.Length == 2) { return Math.Abs(st...

2020-02-19 23:29:20 278

原创 LeetCode --- 贪心算法 --- 1005.K此取反后最大化的数组和

这个题思路就是先把数组A进行排序,系统的Array.Sort()方法,但是里面的具体排序方法好像根据数据的长度来选择。我也不知道题目会有多长的数据,这里时间复杂度不好算了。官方文档介绍文档有了规律的数据后面就是一个O(n)时间内就可以算出最大值了。负数一律取反并且 K 自减1,到正数(包含 0)时候需要比较左边数据和本数据的大小选择一个最小的数据,在根据 K 的奇偶性进行后面的操作是否...

2020-02-17 21:01:10 178

原创 LeetCode --- 贪心算法 --- 944. 删列造序

这个最开始想复杂了但是核心思路也就那样后面也参考了更好的写法。时间复杂度O(n+m):想复杂的版本: public int MinDeletionSize1(string[] A) { if (A.Length == 0) return 0; var tmpSet = new HashSet&...

2020-02-16 00:42:44 138

原创 LeetCode --- 贪心算法 --- 874. 模拟行走机器人

这个可以自己标记一组数据,开始我是标记的角度然后去判断,但是我看了下题目给出的更好,使用数组标记信息简单明了直接了当:public int RobotSim(int[] commands, int[][] obstacles) { int[] dx = new int[] {0, 1, 0, -1}; int[] dy = new int[] ...

2020-02-16 00:36:50 233

原创 LeetCode --- 贪心算法 --- 860. 柠檬水找零

这个和日常数钱一个道理 你肯定是多少张5块的多少张10块的这样来考虑收钱对吧。所以消耗额外的空间少不了了。至于有人用for循环和我用递归其实都一样。至于时间复杂度都最坏就是 o(n)了。 public bool LemonadeChange(int[] bills) { if (bills[0] != 5) return...

2020-02-10 00:01:38 195

原创 Unity TimeLine --- Animation track properties 使用

Animation track properties|官方文档Tineline1.2.11属性 描述 Display Name 动画轨迹的名称 Track Offsets 相对于一个物体的旋转或者偏移 Apply Transform Offsets 相对应一个特定的位置进行旋转或者偏移,在一个场景中较为常用 ...

2020-02-09 17:30:31 331

原创 LeetCode --- 贪心算法 --- 455.分发饼干

这个题目要尽可能的满足更多的孩子能得到饼干所以饼干和胃口要尽可能的相近,不能用很大的饼干满足胃口很小的孩子,这样容易浪费,得不到最大的数量。这样避免不了很多次查找遍历,最好的办法就是提前把胃口和饼干进行排序形成有序序列,在后面的查找中可以尽可能的减少时间。虽然排序也需要时间但是在代码整体整洁和可读性时间复杂度面前其实是最好的选择: public int FindContentC...

2020-02-08 16:03:23 186

原创 Unity Entities --- JobComponentSystem中部分参数介绍

Unity Entities|0.2.0-preview.18Unity Entities|官方文档JobComponentSystem支持俩种类型的lambda表达式:1.JobComponentSystem.Entities.ForEach(lambda)依赖于Entities,返回Entities集合通过lambda进行选择筛选2.JobComponentSystem.Jo...

2020-02-07 20:31:14 2328

原创 LeetCode --- 贪心算法 --- 392. 判断子序列

基本上目标串最坏要全部遍历一遍时间复杂度最坏O(n)有用二分 动态感觉太麻烦。最简单的就是双指针和IndexOf方法双指针: public bool IsSubsequence(string s, string t) { var sIndex = 0; if (s.Length <= 0) ...

2020-02-06 23:38:21 382

原创 Unity2019.3 中的 BuildPhysicsWorld和StepPhysicsWorld作用

首先应该明确这俩个主要用在DOTS物理系统中。本人感觉是现在DOTS物理系统还不够完善的中间产物,之后的优化应该会慢慢干掉。BuildPhysicsWorld主要获取场景中碰撞体的坐标位置StepPhysicsWorld接受存储引发碰撞对象发出的事件以上在Unity2019.3中还是存在的。...

2020-02-06 22:12:36 761 1

原创 LeetCode --- 贪心算法 --- 1221. 分割平衡字符串

这个思路很简单就是简单的计数。深层次理解可以想成用计数方式代替栈public class Solution { public int BalancedStringSplit(string s) { var maxCount = 0; var tmpCount = 0; for (int i = 0; i < s...

2020-02-05 23:49:33 176

原创 LeetCode --- 贪心算法 --- 122. 买卖股票的最佳时机 II

贪心算法最粗暴的理解就是:眼观局限,只能选择当下看起来最好的这个题目在官方的答案中有三种解决方案:暴力法;峰谷法;简单的一次遍历我采用的就是最后一种public class Solution { public int MaxProfit(int[] prices) { var maxProfit = 0; for (int i =...

2020-02-05 23:44:28 182

原创 Unity Entities 中的 AlwaysSynchronizeSystemAttribute 特性

https://docs.unity3d.com/Packages/[email protected]/api/Unity.Entities.AlwaysSynchronizeSystemAttribute.html官方文档解释看不懂说人话就是每次JobComponentSystem执行的时候都要等待他自己所依赖的执行完成才行执行自己。同步频率每一帧。所以以下俩份代码等价:...

2020-02-05 22:58:12 621

原创 Unity Entities 中的 GenerateAuthoringComponent 特性

在写ECS的代码时候 我们要写IComponent的继承 ,但是他不是个Mono所以无法挂载到Gameobject 上。这里如果要用Hybrid(混合)ECS的化在2019.3中就继承出来的IComponent 需要挂载到Gameobject上,然后通过Gameobject上的ConvertToEntity转换成ECS。所以。。。。。[GenerateAuthoringComponent...

2020-02-05 22:30:42 2008

原创 unity 制作效果展示20190306_001

我只是个搬运工

2019-03-06 23:16:52 366 1

原创 (四) ECS: 关于GameObjectEntity组件

Hybrid ECS使用的GameObjectEntity组件在OnEnable时,GameObjectEntity会创建一个包含GameObject身上所有Component的Entity。这样,整个GameObject和它的全部Component就都能被ComponentSystem遍历到了。注意:所以,目前你必须要在你想让ComponentSystem能遍历得到或看得到的GameObje...

2019-02-21 15:50:57 888

原创 unity 制作效果展示20190219_001

发现一个非常炫酷的特效用的ShaderGraph原文地址

2019-02-19 12:06:44 746

原创 (三) ECS: 泛泛之谈

此文章为转载知乎上的一篇文章感觉挺好,泛泛之谈扩展一下自己的认识原文链接这篇文章将带着你从设计出发重新发明ECS注意:此篇为泛泛之谈,不涉及具体实现从Abstract说起从”是”到”能”再到”有”对对象的抽象是整理代码的要点,继承是一种比较古老并常见的抽象,其描述了一个对象"是"什么,其中包含了对象拥有的属性和对象拥有的方法,在简单情况下,继承是一种非常易用易懂的抽象,然而在...

2019-02-18 15:00:10 409

原创 (二) ECS: Pure vs Hybrid

目前的ECS分为两种 Pure ECS 与 HyBridECS 区别主要就是Pure版的不能使用GameObjects 和 MonoBehaviours ,当然这中理解很表面,但是刚开始嘛

2019-02-17 17:08:54 2071

原创 (一)ECS:这是什么鬼?

有了解的知道ECS出名是因为《屁股》的火爆,在Unite大会上介绍了他们使用了ECS框架。不同于传统的OOP编程思想,ECS不强调继承而是强调功能模块的组合。上个图爽爽眼:这个最主要还是变成了一种数据驱动的设计。变得更加单纯纯粹。往上面的这种概念上的介绍好多多的。让我们看看官方怎么介绍的——》官方ECS介绍网页。请自行跳转学习。所以说下来就是:高性能,大场景,大数量,低延迟...

2019-02-16 22:37:56 1993

原创 unity 制作效果展示20190216_002

我只是个搬运工

2019-02-16 17:35:05 130

原创 unity 制作效果展示20190216_001

我只是个搬运工

2019-02-16 17:20:37 314

原创 Unity TECH和LTS版本

我们在Unity全新的版本发布计划所介绍的,以及此前在GDC的宣布内容,Unity将发布Unity TECH技术前瞻版本和Unity LTS稳定支持版本。Unity TECH版本包含所有最新功能,每年将有三次主要更新。今年的Unity TECH版是Unity 2018.1,Unity 2018.2和Unity 2018.3,以上版本都加入了全新的功能与特性。 Unity 2018.3是U...

2019-01-16 10:44:33 8403

原创 Unity UI性能优化技巧

问题:UI Canvas上有一个或多个元素变化时,会污染整个画布。画布(Canvas)是Unity UI的基本组件。它会生成网格来呈现放置在画布上的UI元素,当UI元素变化时,它会重新生成网格并向GPU发起绘图调用,从而显示出UI。生成这些网格会消耗大量性能,需要将UI元素收集到批处理中,从而尽可能减少绘图调用。因为批处理的生成过程性能消耗较大,通常只在必要时候才重新生成。问题在于,当画布...

2018-10-14 23:53:29 932

转载 12篇学通C#网络编程——第一篇 基础之进程线程

   在C#的网络编程中,进程和线程是必备的基础知识,同时也是一个重点,所以我们要好好的掌握一下。一:概念          首先我们要知道什么是”进程”,什么是“线程”,好,查一下baike。  进程:是一个具有一定独立功能的程序关于某个数据集合的一次活动。它是操作系统动态执行的基本单元,           在传统的操作系统中,进程既是基本的分配单元,也是基本的执行单元。一个...

2018-09-22 15:25:17 344

原创 理解Unity3D中的四种坐标体系

一、前言刚开始接触 Unity3D 的时候,经常会被 Unity 中各种坐标系搞得昏头转向不知所措,毕竟是一个 3D 兼 2D 游戏开发殷勤,还要把 3D 作品最终发布到 2D 的桌面或者手机系统中,所以熟悉掌握 Unity3D 中的坐标系是非产重要的。其实如果仅仅只有 3D 坐标系还是很简单的,就目前来说我们所见过的三维建模软件或者游戏开发软件所用的坐标系分两种:左手坐标系和右手坐标系。...

2018-09-20 16:31:29 5717

转载 导弹追踪算法

FPS 游戏中经常会使用炮弹打击目标,炮弹的飞行轨迹使用的是类抛物线算法,将该算法应用到游戏开发中会出现非常好的视觉效果,如何使用算法解决问题?这就要学会将书本知识结合着实践使用,理论联系实际,算法真正使用起来并不难,就是一些简单的公式。先看一下炮弹的发射轨迹,实现方式如下所示:在上图中,炮弹发射时需要一个初始角度和速度,在垂直方向上做加速度运动,在水平方向上,做匀速运动。现在我们利用 U...

2018-09-15 13:12:34 5033

转载 简单工厂模式,工厂模式,抽象工厂模式

简单工厂模式简单工厂模式不是 23 种里的一种,简而言之,就是有一个专门生产某个产品的类。比如下图中的鼠标工厂,专业生产鼠标,给参数 0,生产戴尔鼠标,给参数 1,生产惠普鼠标。工厂模式工厂模式也就是鼠标工厂是个父类,有生产鼠标这个接口。戴尔鼠标工厂,惠普鼠标工厂继承它,可以分别生产戴尔鼠标,惠普鼠标。生产哪种鼠标不再由参数决定,而是创建鼠标工厂时,由戴尔鼠标工厂创建。...

2018-08-12 15:29:43 290

原创 对称二叉树

给定一个二叉树,检查它是否是镜像对称的。例如,二叉树 [1,2,2,3,4,4,3] 是对称的。 1 / \ 2 2 / \ / \3 4 4 3但是下面这个 [1,2,2,null,3,null,3] 则不是镜像对称的: 1 / \ 2 2 \ \ 3 3说明:如果你可以运用递归和迭代两种方法...

2018-08-05 22:51:38 247

转载 unity3D 编辑器扩展,MenuItem 和 ContextMenu 的使用方法

[TOC] Unity编辑器允许你去添加像内置菜单一样外观和行为的自定义菜单。自定义菜单对于那些经常使用的功能提供一种能从编辑器直接访问的便捷方式。在这一课程中我将对每个描述的主题提供真实的使用示例,用于说明在unity中的菜单项是如何创建和使用的。添加菜单项为了要在顶层工具栏中创建一个新的菜单项,你必须去创建一个编辑器脚本(在项目Editor目录下的一个脚本)。此菜单项需要是一个静态的...

2018-07-29 22:59:40 2286

转载 Unity3D移动平台动态读取外部文件全解析

Unity3D在移动端如何动态的读取外部文件,比如csv(txt),xml一类的文件。主要涉及的问题,就是PC端上本来测试的好好的东西,到了移动端就不能用了,所以要讨论一下PC端和移动端的区别,那么下一个问题自然而然的就是移动端的资源路径(要讨论一下Resources、StreamingAssets、AssetBundle、PersistentDataPath),最后一步就是找到了资源如何读取(这...

2018-07-28 23:43:16 1636 1

原创 Unity中Editor打开文本文件设置

System.Diagnostics.Process.Start("notepad.exe", Application.streamingAssetsPath + "/" + ToolsConfig.DefaultJSonConfig); //用记事本直接调用系统的API就行

2018-07-26 13:46:56 2063 1

原创 全世界的游戏制作效果展示

之前同事推荐给我看的一个小小的Demo,发现国内国外的游戏制作理念已将差别很大了。就拿U3D来说国内开发来说主要以简单实用为主然后考虑适配性通用性,特效动画模型上面都表现的很一般,游戏设计理念还用20年前的。国外就可以看出来他们敢于进取获得意想不到的效果,毕竟游戏还是一个以创新为目的系统工程,不单单是写写代码拼拼UI,可能设计电影镜头,动作,哲学等等。虽然有很多我也没法实现的效果(是知道原理就...

2018-07-25 11:02:49 253

转载 泡妞与设计模式

面试的时候,设计模式会经常被问到。其实我们在写代码中或多或少会用到一些模式,面试官问你设计模式的问题,更多是看你有没有总结过。如果一直都是在那垒代码,你当然会认为这是个很难的问题。所以我们需要总结一下设计模式。1. SINGLETON 单例模式单例模式:单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例单例模式。单例模式只应在有真正的“单一实例”的需求时才可使用。...

2018-07-24 23:02:40 860

转载 判断点是否在三角形内

概述给定三角形ABC和一点P(x,y,z),判断点P是否在ABC内。这是游戏设计中一个常见的问题。需要注意的是,这里假定点和三角形位于同一个平面内。本文介绍三种不同的方法,由浅入深一 内角和法连接点P和三角形的三个顶点得到三条线段PA,PB和PC,求出这三条线段与三角形各边的夹角,如果所有夹角之和为180度,那么点P在三角形内,否则不在,此法直观,但效率低下。二 同向法...

2018-07-22 13:47:29 245

原创 验证二叉搜索树

给定一个二叉树,判断其是否是一个有效的二叉搜索树。一个二叉搜索树具有如下特征:节点的左子树只包含小于当前节点的数。 节点的右子树只包含大于当前节点的数。 所有左子树和右子树自身必须也是二叉搜索树。示例 1:输入: 2 / \ 1 3输出: true示例 2:输入: 5 / \ 1 4  / \  3 ...

2018-07-17 14:55:26 483

原创 二叉树的最大深度

给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。说明: 叶子节点是指没有子节点的节点。示例:给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回它的最大深度 3 。 /// &lt;summary&gt; ...

2018-07-17 10:49:24 266

原创 环形链表

给定一个链表,判断链表中是否有环。进阶:你能否不使用额外空间解决此题?链表中快慢指针,循环递归看来是经常使用的办法 public static bool Method1(ListNode head) { ListNode slow = head; ListNode fast = head; while (fas...

2018-07-12 15:35:19 212

Unity Asset - Behavior Designer

Behavior Designer

2017-06-11

Shader Forge

Shader Forge

2017-06-11

Xffect Editor Pro v5.3.0

Xffect Editor Pro v5.3.0

2017-06-11

NGUI Next-Gen UI v3.10.2 (u5)

NGUI Next-Gen UI v3.10.2 (u5)

2017-06-11

DOTween Pro v0.9.290

DOTween Pro v0.9.290

2017-06-11

空空如也

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

TA关注的人

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