- 博客(18)
- 收藏
- 关注
原创 Input Button Submit is not setup 问题
出现这个问题会让你的gui控件失效,一般方法会让你点击Hierarchy面板中的EventSystem,在Inspector面板中,取消勾选Standalone Input Module。但其实没有什么屁用,新建一个button还是点击不了。因为导入了模板插件更改了输入的设置,不在乎模板插件还能不能正常运行的话在Input manager 那里右上角的三个点的按钮点reset 即可。
2025-07-15 11:22:58
78
原创 UNITY 物理引擎流程简单总结
上面的GJK算法,我们算出了当两个物体不相交时的最近距离.当两个几何体相交时,GJK算法会终止退出.而在处理碰撞的时候,我们不仅要知道两个几何体是否相交,还要知道相交的穿透深度(penetration depth).当GJK的算法退出后,我们在GJK得到的单纯形的基础上使用EPA算法,就可以算出两个几何体的穿透深度。如果在一个几何体内任意两点组成的线段必定落在几何体内,就称这个几何体为凸几何体.与之对应的是凹几何体,计算凹几何体的碰撞往往要复杂的多,几乎所有的碰撞算法都默认以凸几何体为基础。
2025-07-04 10:54:12
957
原创 动画状态机通过与运算判断是否在某个状态
在游戏开发中,按位与运算(&)常用于检查一个对象是否处于某种状态组合中的特定状态。这种技术利用了二进制位的特性,允许我们用一个整数表示多个布尔值(状态)。按位与运算会比较两个数的二进制表示,并返回一个新数,其中每个位都是两个操作数对应位的逻辑与结果。每个枚举值对应一个唯一的 2 的幂,这样它们的二进制表示中只有一位是 1,其余为 0。判断是否是Walking | Running中的一个状态。1 通过二进制运算组合多个状态。
2025-05-30 23:26:12
151
原创 Emerald AI 初始化使用注意事项
Emerald AI 作为unity的一款ai插件 可以满足基本人物ai要求 即插即用非常舒服。打开Shooter AI Demo这个场景。首先先随便拖入一个人物模型,拖入Setup Manager中第一项就可以完成初始化。Animation profile选一个 fist example ai。注意人物模型一定要带有动画控制器组件。初始化后,EmeraldDetection组件 和EmeraldCombat组件是需要设置的,找到场景里面的fist ai对象,照着设置就可以。layer要注意,与敌
2025-05-28 11:29:38
152
原创 【unity】钓鱼游戏 鱼竿算法解析
做拟真钓鱼游戏,鱼竿效果是核心。鱼竿效果分为两个部分,一个是鱼竿的弯曲效果,一个是鱼线的效果。代码源自unity Fishing Game Tool插件上的FishingRod.cs。鱼线的效果一个是未上钩时的重力弯曲状态,和上钩时紧绷状态,核心是贝塞尔曲线算法。鱼线渲染时的linerenderer组件上的节点信息。鱼竿动画系统由五种不同状态的鱼竿动画的混合树构成。代码演示了颜色了鱼竿和鱼线的算法。
2025-05-10 13:59:12
275
原创 unity 做加入愿望单功能
Application.OpenURL("steam://store/你的游戏id");看来steam api 半天没看出来怎么才能通过unity打开steam客户端。搜了很久,找到了方法,很简单,就一句话。
2024-08-12 23:08:34
404
原创 unity 2d urp 2d精灵遮挡轮廓
由于我使用的是urp渲染管线不是内置管线(使用shader gragh都要变更为urp渲染管线),上述shader会失效,因为内置管线使用的是GC语言,urp渲染管线使用的是HLSL语言,所以要将上述shader更改为HLSL版本。原理比较简单,就是使用怪物作为遮罩,怪物图片的模板测试永远通过,怪物图片所在的像素点的模板缓冲值永远为100。第二个pass渲染与怪物相交区域,参考值为100,像素点与所在的像素点的模板缓冲值相等可以通过模板测试,而与怪物不相交区域的模板缓冲值不为100,所以不渲染。
2024-04-11 16:51:45
1196
原创 记录一下unityc#的一些常识性小坑
使用[Serializable]序列化类以后,在脚本开头声明一个该类的引用,该引用不为null。结构体是值类型不能直接引用,可以通过ref或者out关键字引用。
2023-11-30 07:58:09
402
原创 Unity根据类名去添加组件的方法
有时候我们需要根据类名动态添加组件,比如在编辑模式下自动生成对象 GameObject g=new GameObject(); Assembly asmb = System.Reflection.Assembly.Load("Assembly-CSharp"); Type t = asmb.GetType("命名空间." + "类名");//有命名空间一定要包括命名空间 g.AddComponent(t);...
2022-05-06 23:50:04
1195
原创 波恩大学癫痫数据集特征提取
介绍不多说了,这篇文章里有波恩癫痫数据集下载以及数据预处理程序接下来讲一下怎么将单通道EEG信号的特征提取,提取后可以通过机器学习方法分类具体原理是使用离散小波变换(db4)将单个样本EEG信号分解,取D3,4,5,6和A6,代表delta(A6),theta(D6) , alpha(D5) ,beta(D4),gamma(D3) .然后计算五个子信号的各种的总体标准差,组成特征向量,就提取出单个样本的特征了。之后计算集合A和集合E中的共200个样本,保存下来复制到excel做一张表就能通过机器学.
2022-05-02 16:28:01
3999
10
原创 【unity】canvas的render mode改为camera后 scale变化的问题
canvas的render mode改为camera后 scale会变化,生成的ui prefab的scale也会变化,是因为camera是正交相机size没有设置好,Size是当前正交摄像机高的一半的值,这值是按照unity的单位长度来计算的。如果是1920*1080的分辨率,就把size改为540,canvas的scale就会为1...
2022-02-21 16:51:15
4259
原创 blender 顶点清除权重的方法
这里写自定义目录标题在模型的不断修改中,顶点难免会附加上一些莫名其妙的顶点组的权重,比如调整腿部的骨骼时手部会发生形变,这是因为手部的某些顶点附加上了腿部骨骼的顶点组权重。这时候我们需要选择手部进入编辑模式下,选择形变部位的顶点,会在右边条目栏看到该点附加上的顶点组,按a选择全部顶点,然后把多余的顶点组移除就行了注意一下,被选择的顶点可能不会含有全部影响该物体的顶点组,所以要多选择几个顶点看...
2020-03-26 13:41:36
10727
1
原创 Unity C#使用反射,利用字符串作为泛型参数调用泛型方法
参考https://gameinstitute.qq.com/community/detail/122847本身想做个通过字符串名字添加组件的功能,但是实现不了,参考了文章写了下面的代码是通过MakeGenericMethod方法,将type转换为泛型参数,然后通过反射直接调用AddComponentMethodInfo mi = typeof(GameObject).GetMethod(“...
2019-12-07 00:51:29
961
原创 基于光谱通量的节拍检测算法
前段时间在研究节拍检测,网上的都解释得不怎么详细,但是都有原文链接,靠着划词翻译勉强看懂了,下面写一些自己的理解。所谓节拍检测其实就是峰值判断,原理是设定一个时间范围(假设是1ms),用当前1ms内的“音量值”与前后1ms的“音量值”做比较(暂时叫音量值比较好理解),如果比前后都要大很多(实际不是那么简单),那么这1ms就可以标记为节拍。比如鼓点听起来是不是比较大声。时间范围(窗口):我们知...
2019-07-04 00:02:48
2108
4
原创 fps摄像机的笔记:矩阵空间的变换流程
以下为这篇文章的一些思考和笔记https://www.jianshu.com/p/bc09f44e0856先定义一个点为相机位置,然后定义一个想要观察的点,两者相减为光线方向,(为什么叫光线方向,因为现在设定是相机只能接受到跟光线方向平行的光,所以屏幕成像是没有聚焦的感觉,人的眼睛有晶状体所以可以接受到更大范围的光,这跟转移到裁减空间的矩阵是有关系的),然后可以叉乘出right,up轴,得到观...
2019-05-02 21:03:25
471
原创 unity3d屏幕后处理-音浪效果
如图所示,可以做出类似音浪滤镜的效果,原理比较简单,是rbg颜色通道的偏移Shader "Custom/MusicWave" { Properties{ _BOfY("BofY", Float) = 1.0 _BOfX("BofX", Float) = 1.0 _GOfY("GofY", Float) = 1.0 _GOfX("GofX", Float) = 1.0 ...
2019-03-10 22:04:44
1026
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人