自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

MaiYo_

do it.

  • 博客(130)
  • 收藏
  • 关注

原创 Vector 基础

向量基础

2021-05-25 20:38:01 1334

原创 关于 Unreal 中的一些计算问题

关于 Unreal 中的一些计算问题

2024-03-09 23:22:51 156

原创 Godot 基础

Godot 基础

2023-11-04 17:21:25 355

原创 Unity Addressable Sample

【代码】Unity Addressable Sample。

2023-07-03 10:49:15 398

转载 浅析 C# Dictionary 实现原理(转)

浅析 C# Dictionary 实现原理 - InCerry

2023-05-17 17:28:32 108

原创 UE 控制台命令整理

控制台命令整理

2022-06-13 22:27:25 1760

原创 PS 图层混合模式分类

图层混合模式分类

2022-04-16 10:52:15 292

原创 Photoshop 抠图方式

选择 “色彩范围” 工具,调整容差与吸管加选选区选择 “焦点区域” 工具“对象选择工具”,“快速选择工具”,“魔术棒” 等配合 “选择并遮住”快捷键Q进入 “快速蒙版”,使用 “画笔” 确定选区钢笔勾边图层样式 “混合选项” 中使用混合颜色带(Alt点击分离手柄)通道抠图,选择并复制合适的通道,使用加色阶、加深、减淡等工具处理通道获得选区最后,多种方法要结合使用不断优化选区蒙版,已建立蒙版可以双击使用 “选择并遮住” 反复调整...

2022-03-01 22:58:47 188

原创 快捷键与偏好设置整理

快捷键与偏好设置整理KeyActionLMB + Drag水平旋转 / 前后移动RMB + Drag旋转LMB + RMB + Drag上下移动Alt + LMB + Drag环绕Alt + RMB + Drag前后移动其他KeyActionCtrl + ALT + LMB + Drag框选Ctrl + LMB + DragX 轴 - 移动 / 旋转 / 缩放Ctrl + RMB + DragY 轴 -..

2022-02-18 17:20:53 457

原创 UE 函数/事件/宏区别

UE 函数,事件,宏的区别

2021-12-29 11:20:53 1133

原创 Git 基本命令

Git 基本命令

2021-12-24 16:39:34 190

原创 Editor Tips

自定义 UI Scaling通过启动参数,自定义缩放比例

2021-08-30 11:51:19 74

原创 ScriptableObjects Callbacks

鼠标输入问题不管使用老系统还是 new input system ,只要 mouse delta * Time.deltaTime 就会有卡顿感测试环境一:URP 默认的 template 项目,使用老输入系统,自带的 SampleCameraController.cs 脚本,使用右键控制鼠标时,明显卡顿var mouseMovement = GetInputLookRotation() * TIme.deltaTime * 5// 如果将 TIme.deltaTime 替换为常量则变得丝滑v

2021-06-27 22:12:56 199

原创 Unity VS Code Development

VS Code 官方参考文档Unity Development with VS Code开发环境需求VS Code 开发C#项目需要安装 .NET Core SDK安装 C# extension启动代码完成打开.cs文件没有代码完成功能并有如下提示:提示需要安装 .NET Framework 4.X Targeting Pack目前版本Unity只支持到4.7.1,可以通过报错信息或 Assembly-CSharp.csproj 文件查看...

2021-01-05 00:16:25 145

原创 类或接口使用时机

有时候这样使用接口public interface IAnimal{ void Prey();}public class Bird: IAnimal{ public void Prey() => Debug.Log("prey");}仔细想一想,使用抽象类或基类的方式更合适,还能定义属性和字段public abstract class Animal{ ...

2020-03-27 15:42:09 172

原创 释放非托管资源

使用 using 语法糖清理非托管资源using (var file = File.Open(path, FileMode.Open)){ ...}File 类型属于托管类型,它通过垃圾回收器分配堆内存并自动释放,但它访问的外部文件属于非托管资源,垃圾回收器不能跟踪并释放。上面 using 语句实际上将编译成:{ var file = File.Open(path, FileM...

2020-03-26 19:01:52 325

原创 C# 迭代器

IEnumerator实现 IEnumerator 接口的类才是真正的迭代器,它定义了各项元素被循环访问的逻辑。// 实现 IEnumeratorpublic class WeekEnumerator : IEnumerator{ string[] week = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" }; int...

2020-03-23 15:23:32 153

原创 画抛物线轨迹

使用 LineRenderer 画出轨迹,核心代码:// 设置 LineRenderer 顶点数量int pointCount = 30;Vector2[] points = new Vector2[pointCount];line.positionCount = pointCount;// 第一个顶点位置points[0] = transform.position;line.Se...

2020-01-05 21:13:22 542

原创 C# LINQ 查询与投影

定义数据源string[] fruits = { "apple", "banana", "mango", "orange", "passionfruit", "grape" };创建查询查询变量本身只存储查询命令。 查询的实际执行将推迟到在 foreach 语句中循环访问查询变量之后进行。// 查询语句语法var q1 = from f in...

2020-01-01 00:00:22 682

原创 导弹跟踪的简单实现逻辑

基本思想是,给导弹一个恒定方向的力,再不断的修改导弹本身的角度,简单的代码片:void FixedUpdate(){ // 给导弹一个始终向上(本地)的力 rbody.velocity = transform.up * speed; // 第一种修改角度的方法: Vector2 dir = (Vector2)target.position - rbody.position; // 叉...

2019-12-16 11:38:23 945

原创 在 Unity 中使用事件

委托 delegate 是一种对方法的引用,类似指针。实例委托时,可以与任何具有相同签名的方法关联。event 用于声明(发布服务器类中的)事件。使用 event 将委托声明为事件后,只能在该类中调用事件,且只能使用 += -= 订阅或取消该事件。using UnityEngine;// 事件发布类public class DelegateScript : MonoBehaviour{...

2019-08-08 17:32:58 2084

原创 Unity Auto Layout

简单的说,Auto Layout 自动布局的核心就是使用 Layout Controllers 控制 Layout ElementsLayout Elements具有 Layout Proerties 的 UI gameobject 都是 Layout Element上图显示当前 Layout Element 的布局属性,添加 Layout Element Component 可以修改这些...

2019-06-27 12:59:23 155

原创 Blender 2.8 with Unity

导出 Fbx 到 Unity,使 Blender 中 1 meters 与 Unity 中 1 Unit 尺寸相同勾选 “Apply Transform”,修改 Scale 为 0.5

2019-06-17 21:59:14 2266

原创 Unity Script 中一些方法和属性

Vector3.LerpUnclampedLerpUnclamped 的值不局限于 a ,b 之间Vector3 lerp = Vector3.Lerp(Vector3.zero, Vector3.one, 1.5f);Vector3 lerpUnclamped = Vector3.LerpUnclamped(Vector3.zero, Vector3.one, 1.5f);// lerp...

2019-05-10 17:26:04 1263

原创 Create Shader

UVsUsing MaskUVs几种常用的 MaskUVsTexture MaskUVsUV MaskUVsOrientation MaskUVsPosition MaskUVsVertex Color MaskUVs需要在 3D 软件中为顶点设置颜色

2018-10-07 16:13:58 457

原创 Lightmap 烘培注意事项

UVs通常烘培 Lightmap 需要用到单独的 UV 2 通道作为 Lightmap 的采样 UV。如果没有 UV 2 则将使用 UV 1。但是直接使用 UV 1 采样将可能得不到正确的光照信息。假设在这样一个场景中,Cube 没有 UV 2 ,它的 UV 1 信息如下图在 Lighting Window 窗口下查看 Cube 的 UV 信息,所有的面是重叠在一起的。让 Lightm...

2018-09-21 14:12:32 8774

原创 获取 RenderTexture 的几种方式

RenderTexture Constructorpublic class ExampleClass : MonoBehaviour { public RenderTexture rt; void Start() { rt = new RenderTexture(256, 256, 16, RenderTextureFormat.ARGB32); }}...

2018-09-18 18:09:32 4447

原创 Unity Culling 相关技术

在 Unity 中使用的 culling 相关技术:Frustum Culling剔除视锥体外的渲染物体,被剔除的物体不会发送给GPU渲染管线(这与 shader 中对顶点透视除法后进行的剔除不是一个东西),Unity 默认启用这项技术。Occlusion Culling剔除被其他物体遮挡的,摄像机不可见(但在视锥体内)的渲染物体。使用 Occlusion Culling 需要手动设置,...

2018-09-18 17:10:33 1622 1

原创 光照使用的简单总结

文档先看一遍官方文档最直接https://docs.unity3d.com/Manual/LightModes.htmlGlobal IlluminationGI 是表现间接光 (indirect light) 的光照技术,不开启 GI 意味着完全不会去处理间接光。GI 是通过 预计算后将间接光照信息 存储在 Lightmap 中,参与 GI 的游戏对象必须被标记为 Static...

2018-09-17 23:16:10 243

原创 简单的折射效果

通过 GrabPass 实现Shader "Unlit/Glass"{ Properties { _BumpAmt ("Distortion", Range (0,100)) = 10 _TintAmt ("Tint Amount", Range(0,1)) = 0.1 _BlurAmt ("Blur Amount", Ra...

2018-08-14 22:57:22 682

原创 Shader 常用函数

将法向量由模型变换到世界空间UnityObjectToWorldNormal(v.normal)// 相当于(使用顶点变换矩阵的逆转置矩阵对法线进行变换)normalize(mul(v.normal, (float3x3)unity_WorldToObject))将方向向量由模型变换到世界空间UnityObjectToWorldDir(float3 dir)// 相当于...

2018-08-07 18:18:09 6108 1

原创 图形技术之坐标转换

转换过程坐标剪裁在透视除法之前执行,剪裁坐标中的 x, y, z 将与 w 进行检测,在 [-w, w] 之外的顶点将被剪裁掉这个 w 来自何方:w 是由 PROJECTION Matrix 变换后添加的齐次坐标,它的值来等于摄像机坐标下的 -z 值 (摄像机坐标使用右手坐标系),且它的范围一定在 [near, far] 之间,否则就被剪裁掉了之后透视除法与视口变换将由 GP...

2018-07-10 12:59:04 634

原创 图形技术之管线概念

Pipeline:每一步骤的输出都将作为下一步骤的输入,渲染过程在 GPU 中是并行运算的,蓝色背景部分可通过 shader 代码控制1. Vertex Shader顶点变换;坐标转换2. Shape Assembly / 图元装配将顶点转换为图元(在这里就是三角形面),并裁剪掉视野外的图元数据3. Geometry Shader通过增减顶点生成其他图元4. Ras...

2018-06-20 14:22:33 884

原创 C# Lambda

定义:Lambda 表达式是一个匿名函数,是简化匿名方法的一种方式基本形式:x => x * x ,=> 是运算符,左边是参数,右边是表达式(或叫方法的实现代码)示例:void Start() { // Func 是预定义 delegate 泛型最后一个参数是返回值 Func<int, int, string> f = (x, y) ...

2018-05-10 23:44:02 765

原创 向量操作与坐标转换相关方法

Transform.InverseTransformPoint获得 position 的本地坐标, position 是一个世界坐标点最后获得 position 在本地坐标中的相对坐标举例:如 transform.positon = (1,0,0) 则下面是获取世界坐标 (2,0,0) 相对于本地位置 (1,0,0) 的坐标即 (1,0,0)Debug.Log(transform.InverseT...

2018-04-12 15:38:52 6850

原创 Unity 的序列化

经过 Serialize (序列化) 的 class 或 attribute 的值会被保存成二进制文件,在 Unity 中可序列化的 attribute 将在 Inspector 显示出来 继承 MonoBehavior 的情况下class 与 public attribute 都是被视为可序列化的private attribute 被视为不可序列化的,可通过 SerializeF...

2018-02-24 23:18:30 512

原创 Phonics

元音元音字母 a e i o u 有发短音与长音两种方式短元音:[æ] [ɛ] [ɪ] [a] [ʌ]长元音:[e] [i] [aɪ] [o] [ju]/[u]元音发音规则 (只记大规律,其他通过 kk 音标确认)注意:元音是元音字母的发音,一个元音可能包含一个或两个以上的元音字母短元音:单音节中只有一个元音字母a [æ]例外:跟 w 一起放字首时常发 [a] , want was waffle ...

2018-01-31 19:53:01 492

原创 Spring boot 使用外部配置文件

使用外部 application.propertiesSpringApplication 默认会从以下位置加载 application.properties 文件1.A /config subdirectory of the current directory : 当前目录的 config 目录下2.The current directory : 当前目录下3.A classpath /confi

2018-01-17 23:06:16 2588

原创 Linux top 命令

top 命令可以实时动态地查看系统的整体运行情况命令选项-b:以批处理模式操作-c:显示完整的治命令-d:屏幕刷新间隔时间-I:忽略失效过程-s:保密模式-S:累积模式-i:设置间隔时间-u:指定用户名-p:指定进程-n:循环显示的次数交互命令进入 top 交互视图后,可以执行以下命令h:显示帮助画面,给出一些简短的命令总

2018-01-17 15:32:04 263

原创 Spring boot 项目内存管理

内存相关的运行参数值为最低配置的参考-Xms16m \-Xmx48m \-XX:MaxMetaspaceSize=64m \-XX:CompressedClassSpaceSize=8m \-Xss256k \-Xmn8m \-XX:InitialCodeCacheSize=4m \-XX:ReservedCodeCacheSize=8m \-XX:MaxDirectMem

2018-01-08 20:50:10 4161

空空如也

空空如也

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

TA关注的人

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