- 博客(5)
- 收藏
- 关注
原创 C#中的Const和ReadOnly
const用于定义编译时常量。必须在声明时初始化。只能用于基本类型(如数字、字符、字符串等)和枚举。在编译时就确定了值,无法在运行时更改。readonly用于定义运行时常量。可以在声明时初始化,也可以在构造函数中初始化。可以用于任何类型,包括基本类型、对象和结构体。在运行时初始化后,值不能再改变。// 只能在构造函数中初始化 }
2024-07-17 19:25:41
314
原创 Unity [InitializeOnEnterPlayMode] 方法中最好不要去操作资源
[InitializeOnEnterPlayMode]允许在 Unity 进入运行模式时初始化编辑器类方法。项目中有同事使用此特性操作图集var spriteAtlas = AssetDatabase.LoadAssetAtPath<SpriteAtlas>(assetPath);...Resources.UnloadAsset(spriteAtlas);导致pc下动态合批失败,注释掉Resources.UnloadAsset之后,有些图片加载可能失败。改为了继承A
2022-03-30 16:38:26
2744
原创 在Dictionary中使用Enum作为TKey会带来GC
枚举类型作为一种值类型,在某些时候特别是需要位操作的时候,也会经常用作key。问题就出现在这里。我们知道,Dictionary的key必须是唯一的标识,因此Dictionary需要对 key进行判等的操作,如果key的类型没有实现 IEquatable接口,则默认根据System.Object.Equals()和GetHashCode()方法判断值是否相等。我们可以看看常用作key的几种类型在.NET Framework中的定义:public sealed class String : IComp
2022-03-09 10:20:56
547
原创 点乘&叉乘
在游戏开发中,确定目标的方位,朝向,夹角等相关数据需要用到向量间的计算,其中最常用到的就是点乘和叉乘。说实话,因为向量的运算在平时开发中不是经常使用,我也总弄混这两种运算的含义,所以这次好好区分一下,也给有同样困扰的朋友一点小小的帮助。因为我们主要研究的是游戏开发中的3D世界向量,所以下面的介绍会以几何定义为主,不研究其代数定义。1.点乘定义又称点积、数量积、标量积。从几何角度看,点乘是两个向量的长度和它们的夹角余弦值的积。从名称和定义上来看,点乘的结果是标量。点乘的..
2022-02-25 18:58:39
982
原创 今日之坑-unity AssetDatabase.FindAssets和LoadAllAssetsAtPath使用
unity AssetDatabase
2022-02-22 18:16:19
6023
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人