自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【Visual Studio】解决编写C#代码时编辑器自动添加using问题

关闭自动添加using的操作步骤:打开VS编辑器→顶部菜单栏选择“工具”→选项→文本编辑器→C#→IntelliSense(智能感知)→取消勾选“显示unimported命名空间中的项”→点击“确定”当我们编写引用其他作用域代码时,Visual Studio可能会非常“智能”地帮我们在代码顶部自动添加对应的using指令。显然这项举动有利有弊,有利在于可以提高代码编写效率,有弊在于如果不慎编写错误的代码那么错误的using指令会自动添加。

2023-09-27 10:21:04 1741

转载 【C#异常捕获】C#中Try-Catch语句真的影响程序性能吗?

很多帖子都分析过Try-Catch的机制,以及其对性能的影响。但是并没有证据证明,Try-Catch过于损耗了系统的性能,尤其是在托管环境下。

2023-08-08 14:00:25 399

转载 Unity 世界坐标、屏幕坐标、UGUI 坐标 相互转换

看下图 世界坐标、屏幕坐标、UI 坐标 三种坐标系的转换过程,此文章中的 UI 坐标特指 UGUI 坐标。从上图可以看到,世界坐标 和 UI 坐标 需要通过 屏幕坐标作为中间转换媒介。屏幕坐标为 从屏幕左下角开始 坐标为 Vector2 (0, 0),视口坐标为 从屏幕左下角开始 坐标为 Vector2 (0, 0),世界坐标 -> 屏幕坐标 -> UI 坐标。UI 坐标 -> 屏幕坐标 -> 世界坐标。屏幕坐标 -> UI 坐标 方法一。屏幕坐标 -> UI 坐标 方法二。UI 坐标 -> 屏幕坐标。

2023-03-22 15:16:23 2142

原创 C# 获取可执行文件EXE(文件夹)路径大全

/获取新的 Process 组件并将其与当前活动的进程关联的主模块的完整路径,包含文件名(进程名)。结果:X:\xxx\xxx\xxx.exe(.exe文件所在的目录+.exe文件名)结果:X:\xxx\xxx\xxx.exe(.exe文件所在的目录+.exe文件名)结果:X:\xxx\xxx\xxx.exe(.exe文件所在的目录+.exe文件名)结果:X:\xxx\xxx\(.exe文件所在的目录+“”)结果:X:\xxx\xxx(.exe文件所在的目录)//获取和设置包含该应用程序的目录的名称。

2022-10-24 17:28:32 6041

原创 Unity 将3D物体的世界坐标转换为对应的屏幕坐标

Unity 将3D物体的世界坐标转换为对应的屏幕坐标;将3D物体的位置信息映射到2D屏幕上。

2022-09-13 18:16:47 5344 5

原创 vscode 折叠/展开所有区域代码快捷键

vscode代码编辑器折叠所有区域的代码快捷键查看了使用说明,快捷键如下:折叠所有区域代码的快捷: ctrl + k ctrl + 0 ;展开所有折叠区域代码的快捷:ctrl +k ctrl + J ;

2022-07-07 11:11:11 3230

转载 Lua EmmyLua 注解详解

为了使 IDE 编码体验和强语言相近让 IDE 提前发现编码错误BUG 查找更方便代码阅读更方便

2022-06-29 16:49:30 2391

原创 Unity API之Physics.SyncTransforms

Physics.SyncTransformsdllUnityEngine.PhysicsModulenamespaceUnityEngineclassPhysicsmethodpublic static void SyncTransforms();描述将Transform更改应用于物理引擎。当Transform组件发生更改时,可能需要根据Transform的更改重新定位、旋转或缩放Transform或其子项上的任何Rigidbody或Collider。使用该函数可以手动将这些更改刷新

2022-05-11 15:01:16 956

原创 git常用命令大全

git常用命令大全git init 初始化一个仓库 ,会将该目录下所有文件交给git管理git status 查看当前版本管理状态git add 文件1 文件2… 把有变化的文件(新增的、修改的、删除的) 添加到git暂存区里git add . 将所有改变的文件统一 加入到暂存区里git rm --cached 文件1 文件2 把暂存区中的文件从暂存区移除git commit -m ‘提交描述’git restore 文件1 文件 2 … 放弃文件的改变git log 查看提交历史git

2022-04-24 15:03:51 66

转载 Unity优化之GC——合理优化Unity的GC

介绍:在游戏运行的时候,数据主要存储在内存中,当游戏的数据在不需要的时候,存储当前数据的内存就可以被回收以再次使用。内存垃圾是指当前废弃数据所占用的内存,垃圾回收(GC)是指将废弃的内存重新回收再次使用的过程。Unity中将垃圾回收当作内存管理的一部分,如果游戏中废弃数据占用内存较大,则游戏的性能会受到极大影响,此时垃圾回收会成为游戏性能的一大障碍点。本文我们主要学习垃圾回收的机制,垃圾回收如何被触发以及如何提GC收效率来提高游戏的性能。Unity内存管理机制简介要想了解垃圾回收如何工作以及何时被

2022-03-17 17:29:39 1784 1

原创 代码整洁之道要点(三)

本系列出自于本人看过《代码整洁之道》后总结的一部分要点。 非常感谢这本书给我和广大程序员带来的快乐!注: 需要该书电子版的朋友请私信我。推荐歌曲:Remember Our Summer - FrogMonster使用异常而非返回码遇到错误时,最好抛出一个异常。调用代码很整洁,其逻辑不会被错误处理搞乱。别返回null值如果在调动某个第三方API中可能返回null值...

2022-02-28 18:28:28 160

原创 代码整洁之道要点(二)

本系列出自于本人看过《代码整洁之道》后总结的一部分要点。 非常感谢这本书给我和广大程序员带来的快乐!注: 需要该书电子版的朋友请私信我。推荐歌曲:Try - Marlisa

2022-01-29 10:58:22 507

原创 代码整洁之道要点(一)

本系列出自于本人看过《代码整洁之道》后总结的一部分要点。 非常感谢这本书给我和广大程序员带来的快乐!注: 需要该书电子版的朋友请私信我。阅读本书的原因第一,你是一个程序员;第二,你想成为更好的程序员。整洁代码的艺术写整洁代码,需要遵循大量的小技巧,贯彻刻苦习得的“整洁感”。这种“代码感”就是关键所在。缺乏“代码感”的程序员,看混乱是混乱,无处着手。有“代码感”的程序员能从混乱中看出其他的可能与变化,帮助程序员选出更好的方案,并指导程序员制定修改行动计划。简而言之,编写整洁代码的程序员就.

2022-01-24 16:48:42 346

原创 Unity 自定义扩展Hierachy右键菜单

Unity 自定义扩展Hierachy右键菜单

2021-12-24 18:35:01 3584

原创 Unity 获取资源项目文件的路径

1.获取相对于存储资源的项目文件的路径名称使用AssetDatabase类中的静态方法:public static string GetAssetPath (int instanceID );public static string GetAssetPath ( Object assetObject );举例:Material mat = new Material(Shader.Find("Specular"));AssetDatabase.CreateAsset(mat, "Assets/M

2021-12-23 17:15:03 6339

转载 Unity Time.realtimesincestartup

realtimesincestartup表示的是从程序开始以来的真实时间。在游戏中,时间的流逝速度是可以调整的,比如我可以使用timeScale暂定游戏,或者2倍速进行游戏。因此如果想要真实的时间,就会出现问题。而采用realtimesincestartup就可以解决这个问题,因为它完全不依赖游戏的时间速度,它表示的是一个真实的时间流速。它的用法中,最大的作用就是不依赖游戏时间。我们会使用Time.time,或者Time.deltaTime,又或者使用粒子或者动画系统,它们是依赖于游戏时间的。当我们加速

2021-06-25 17:17:14 3068

原创 C# 打开指定路径的文件(文件夹)

代码 string filePath = "XXX";//文件(文件夹)路径 System.Diagnostics.Process.Start(filePath);

2021-06-25 15:57:03 8024 4

原创 SVN更新文件 出现Error 拒绝访问

问题当我们用SVN更新一些Word或者Excel文件时,可能会出现“”“”拒绝访问的现象:这是因为该文件已被打开且处于正在修改状态(未保存),于是文件被锁导致更新失败。解决先保存正在修改的Excel文件,接着返回文件上一级右键文件所在文件夹,然后在菜单选择:TortoiseSVN --> Clean up…弹出Cleanup窗口:点击OK,然后重新Update即可。...

2021-06-23 10:49:45 4416

原创 Unity 文件夹拷贝(复制)

参考代码/// <summary> /// 拷贝文件夹 /// </summary> /// <param name="srcPath">需要被拷贝的文件夹路径</param> /// <param name="tarPath">拷贝目标路径</param> private void CopyFolder(string srcPath, string tarPath) {

2021-06-22 15:59:05 2389 2

原创 lua深拷贝 实现及分享

什么是深拷贝 什么是深拷贝,先来谈谈浅拷贝。 当一个类中没有显示地声明一个拷贝构造函数,那么编译器将会自动生成一个默认的拷贝构造函数,该构造函数完成对象之间的位拷贝,位拷贝又称浅拷贝。浅拷贝会带来数据安全方面的隐患,因为这时候的拷贝相当于对对象的变量进行了一系列简单地复制操作,即把数据对应的引用进行拷贝,当用拷贝的引用去修改(写入)操作时,源对象的数据就将会被篡改。 ...

2021-06-19 11:27:53 409

转载 git创建命令行分支[转载]

https://blog.csdn.net/u012845099/article/details/80225542

2021-05-18 15:04:12 194

原创 阶乘实现(C#递归)

开门见山代码:using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace test{ class Program { static void Main(string[] args) { int n; int.TryP

2020-11-02 23:05:37 174

原创 lua实现Fibonacci数列

两种方式实现1 递归--递归local function Fibonacci_1(n) if n == 1 or n == 2 then return 1 else return Fibonacci_1(n - 1) + Fibonacci_1(n - 2) endend2 迭代--迭代local function Fibonacci_2(n) local f0, f1 = 1, 1 local curFib = nil

2020-10-19 13:57:57 377

原创 lua实现c#中的函数重载

lua实现C#中的函数重载C#的函数重载类似于C++、Java等OOP语言,C#函数重载概括起来就是对于多个函数,进行这样的处理时:1 函数的名字必须相同2 函数的参数类型一定不同3 函数的参数个数不同,或者个数可以相同但类型一定不同3 与函数的返回值无关就实现了该函数的重载。例: public void Print(int a) { System.Console.WriteLine(a); } public void Print(i

2020-10-13 17:05:24 249

原创 C# 重写一个类似List类的泛型类MyList,实现List类中的一些基本泛型方法

C#中提供的List类首先来看看List类,它是一个泛型(如果对泛型不理解的小伙伴,可以自行百度了解一下),在C#原生List类中的,定义了很多对泛型列表元素的操作的方法,例如:public void Add(T item) //添加泛型元素public void RemoveAt(int index) //移除指定索引的泛型元素public bool Contains(T item) ...

2019-08-22 23:56:40 1154

原创 C# 计算小字符串出现在大字符串中的次数

C#源码using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace 求子串出现次数{ class Program { static void Main(string[] ...

2019-08-19 20:03:47 268

原创 2048游戏的简单实现(C#实现)

游戏规则游戏规则,玩家需要控制所有方块向同一个方向运动,两个相同数字方块撞在一起后会合并成为它们的和,每次操作后会随机生成一个2或者4,最终得到一个“2048”的方块就算胜利。C#代码实现using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Thre...

2019-08-17 14:15:46 3574 1

原创 Windows上使用C#控制台应用程序打开指定路径的文件

例如打开Windows操作系统里的cmd.exe(命令行程序)using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Threading;namespace Open_The9_12{ ...

2019-08-16 14:44:03 2203

原创 抽象类和抽象方法描述(c#)

用abstract修饰的类叫抽象类,用abstract修饰的方法叫抽象方法。例如:创建一个动物抽象类,里面包含一个抽象方法Say() abstract class Animal//抽象类 { //普通成员属性 public int a; //普通成员方法 public void Test() ...

2019-08-15 15:10:41 182

原创 类的继承(c#)

继承的优缺点继承的优点:代码复用便于代码的层次化管理提高代码的可维护性和可扩展性继承的缺点:代码耦合度高,修改父类代码会影响子类...

2019-08-15 14:47:24 266

原创 静态类和静态成员(c#)

一、静态成员C#中一个类的静态成员属性和静态成员方法统称为静态成员,其他情况的属性和方法叫做非静态成员。静态成员用修饰符static修饰。//非静态类Rectclass Rect{ public static int x=5;//定义静态成员属性x,初始化等于5 public int y=10;//定义非静态成员属性y,初始化等于10 public void P...

2019-08-15 10:01:29 174

原创 C# 打乱数组中的数组元素

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace __2019年8月13日{ class Program { static void Main(string[] ...

2019-08-13 16:45:16 3467

原创 C#学习 方法篇

一、方法的定义和调用定义一个打印方法,在主方法中调用该方法:using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace 方法_定义和调用{ class Program { ...

2019-08-13 13:08:53 1075 2

原创 C#中的矩形数组(多维数组)和锯齿数组

(一)矩形数组矩形数组,又称多维数组,是使用多个索引访问其元素的数组。二维数组的定义:<baseType>[,] <name>;例如,声明和初始化一个二维数组doubleArray,其基本类型是double,3行4列:double[,] doubleArray=new double[3,4];double[,] doubleArray={{1,2,3,4}...

2019-08-12 23:55:24 2007

Unity实现物品拖拽

在开发中可能会遇到将道具拖动到某个位置的需求,这里提供了一种简单方便的实现方式,欢迎品鉴~

2022-09-14

空空如也

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

TA关注的人

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