![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
unity
文章平均质量分 90
|Ringleader|
对游戏非常感兴趣的前Java后端程序员。
记录学习Unity过程,一步一个脚印成为游戏开发大佬,做出我心中的游戏,完成我的小说。
感兴趣的不妨关注一波。
展开
-
【Unity学习笔记】第二十 · 物理引擎脉络梳理(数值积分、碰撞检测、约束解决)
至此,本文用不小的篇幅系统梳理了整个物理引擎脉络。乍一看好像也没什么,不就是数值积分、碰撞检测和约束求解三部分吗?但就像史铁生说的 「**万事万物,你若预测它的未来,你就会说它有无数种可能,可你若回过头去看它的以往,你就会知道其实只有一条命定的路。**」这一路走过,需要学习和验证的东西太多太多。但好在这条路最终还是走下来了,也感谢物理引擎这段时间的陪伴。原创 2024-07-15 20:12:01 · 1185 阅读 · 0 评论 -
【Unity学习笔记】第十九 · 物理引擎约束求解解惑(LCP,最优,拉格朗日乘数法,SI,PGS,基于冲量法)
在学习物理引擎过程中,有几大问题一直困扰着我:1. 约束求解到底是LCP还是带约束最优问题?2. 约束求解过程中拉格朗日乘数法和带约束优化中的拉格朗日乘数法是一个东西吗?3. 基于力的约束求解、基于冲量、基于位置的约束求解区别?4. SI和PGS的区别?GS与PGS区别?原创 2024-07-12 03:03:51 · 887 阅读 · 0 评论 -
【Unity学习笔记】第十八 基于物理引擎的日月地系统简单实现
本文利用Unity的物理引擎实现简单的日地月三体系统原创 2024-06-15 19:24:48 · 847 阅读 · 0 评论 -
【Unity学习笔记】这段时间学习的几点小心得(scene结构、文件结构、学习方法)
这段时间学习的几点小心得(scene结构、文件结构、学习方法)原创 2024-05-16 17:16:09 · 367 阅读 · 2 评论 -
【Unity学习笔记】第十七 Quaternion 中 LookRotation、Lerp、Slerp、RotateTowards等方法辨析与验证
本文主要辨析Quaternion中Lerp、Slerp、RotateTowards等方法,并进行代码验证。至此,对Quaternion核心方法的理解已比较清晰,但其中的数学原理比如四元数、和欧拉角的关系、万向锁、逆和共轭等问题还是有待进一步学习。原创 2024-05-15 23:21:43 · 1221 阅读 · 0 评论 -
【Unity学习笔记】第十六 World space、Parent space和Self space及Quaternion左乘右乘辨析
Unity中的坐标系比较多,特别是local语义歧义问题,会对后面的学习造成困扰。为此本文详细辨析了World space、Parent space和Self space含义,并用三个坐标系下的移动进行示例。同时辨析了Quaternion左乘右乘的区别,展示了其与坐标空间的关联。本文论述有限,但提供了详细代码,读者需结合代码进行实验方能深刻体会。注意,文章内容不一定对,需自行辨别。原创 2024-05-15 14:57:04 · 1017 阅读 · 0 评论 -
【Unity学习笔记】第十五 Transform 查缺补漏 (TransformDirection / InverseTransformDirection解释,三种坐标系下的Translate())
本文对Transform类进行较详细的分析,分别从Transform层级关系相关属性和方法、 坐标系相关属性和方法以及`Translate`方法等结构进行清晰地梳理,特别是对`TransformDirection / InverseTransformDirection`这个坐标系变换方法进行解释,同时提到了Translate()方法可以在三种不同参考系中进行移动。通过上面的查缺补漏,我想未来再使用Transform将会变得更得心应手。原创 2024-05-06 01:09:20 · 1356 阅读 · 0 评论 -
【Unity学习笔记】第十四 Prefab 概念解惑
本文初步探究了关于prefab的一些疑惑,但并没有彻底弄清,不过至少比原先清晰了很多,后面可能还要研究AssetBundle和资源加载、序列化之类的才能更清楚些,等未来实战再遇到时再来研究吧。原创 2024-04-28 14:21:59 · 1782 阅读 · 3 评论 -
【Unity学习笔记】第十三 · tag与layer(运行时创建tag和layer)
本文主要搜集并验证运行时添加tag和layer的方法。(本来不准备写博客的,但又寻思都搜集了些,胡乱贴上就是了,也算一篇文章了,也正好许久没了。但一写上就需要负责,很多地方都需要仔细验证,不过也算值得,本来tag我试过可以后就以为layer也一样,没想到这么点小改动我都会忙碌许久,就像这小小的tag和layer,手册上一带而过,不动手试试还真不知道这么多问题。原创 2024-04-20 01:02:02 · 1362 阅读 · 0 评论 -
Unity中 root motion 与 Bake into pose本质的个人理解
如果对骨骼模型的父对象使用`apply root motion`,系统会将`未bake into pose`的`root transform`分量作用到父对象的`transform`中,然后**骨骼节点将跟随父对象移动**。所以这也是为什么在apply root motion和未bake into pose情况下,模型能连续运动的原因,其实这可以看作“被父节点的移动带动的原地动画”。转载 2024-01-25 11:39:23 · 258 阅读 · 0 评论 -
【Unity学习笔记】第十一 · 动画基础(Animation、状态机、root motion、bake into pose、blendTree、大量案例)
本章主要学习Unity动画基础知识,主要包含:动画片段、Animation编辑器、动画状态机、混合树 blendTree、Root Motion等内容,IK和Playable将在后续博客总结。本文主要是一些动画基础知识介绍和editor编辑器操作示范,包含较多的案例。值得一提的是对Root Motion和Bake into Pose进行了深入的剖析,感兴趣的可以直接看结论。原创 2024-01-24 14:42:32 · 2956 阅读 · 3 评论 -
New Input System PlayerInput三种Behavior辨析
对于Unity New Input System的PlayerInput三种Behavior,总的来说:sendMessage 最方便,但性能最差、灵活性不佳;UnityEvent最直观,性能一般;C#Event 最灵活、性能最好,但操作稍麻烦。根据需要选择适合的Behavior。转载 2024-01-22 13:39:40 · 132 阅读 · 0 评论 -
【Unity学习笔记】New Input System 部分源码和测试用例补充
【代码】【Unity学习笔记】New Input System 部分源码和测试用例补充。原创 2024-01-21 19:25:11 · 1154 阅读 · 0 评论 -
【Unity学习笔记】Unity TestRunner使用
点击Assembly文件的Inspector窗口,添加 nunit.framework.dll、UnityEngine.TestRunner、 UnityEditor.TestRunner, 测试Input System时额外添加 Unity.InputSystem 和Unity.InputSystem.TestFramework。添加测试文件夹,在此文件夹下添加assembly definition (菜单栏中: Create > Assembly Definition)原创 2024-01-21 19:21:53 · 856 阅读 · 0 评论 -
【Unity学习笔记·第十二】Unity New Input System 及其系统结构和源码浅析
Unity New Input System主要分为三大块:1. **设备与输入**:介绍layout、Device、Control三个重要的概念,包含设备生命周期和updateType等知识讲解。2. **Action与绑定**:包含Action、Binding、Interaction、processor等内容,这是开发者使用newInputSystem时最需要了解的部分。本文对其中不同ActionType以及Interaction触发ActionPhase的区别、不同Binding冲突解决...原创 2024-01-21 19:17:31 · 2751 阅读 · 0 评论 -
【学习笔记】Unity基础(十)【Unity界面之Scene窗口工具栏】
本节梳理了scene窗口常用工具栏的各种功能,像一些细微差别比如“alt+左键旋转和右键旋转的区别”之前遇到过但没仔细分析,这次都仔细过了一遍。但像draw mode涉及太多lighting、shade的东西,走马观花看了下,以后研究到的时候再看。下一节计划学习动画、模型相关知识。原创 2023-07-20 01:13:27 · 5358 阅读 · 0 评论 -
【学习笔记】Unity基础(九)【cinemachine基础(body、aim参数详解)】(多fig动图示范)
本篇用了很长的篇幅学习了cinemachine的基础知识,详细了解了虚拟相机的各个参数,包括body、aim、cinemachine brain等,着重学习了相机移动和旋转的各种算法(Do nothing、3rd Person Follow、Framing Transposer、Hard Lock To Target、Orbital Transposer、Tracked Dolly、Transposer),也了解了一些其他知识点如Binding Mode中的roll yaw pitch等。原创 2023-06-30 19:44:03 · 4762 阅读 · 1 评论 -
【学习笔记】Unity基础(八)【镜头camera组件属性(clear flag、target texture、occlusion culling、镜面效果、小地图等)】
本节主要学习camera组件的相关属性,介绍了投影方式、depth、clear flag等基础概念,详细学习了target texture、occlusion culling等知识。有关camera的其他高阶内容,诸如渲染管线、优化等内容暂不研究。下节计划学习Cinemachine插件、镜头脚本相关,涉及第一第三人称视角切换、镜头跟随、镜头抖动等案例。原创 2023-06-15 08:42:07 · 7114 阅读 · 0 评论 -
【学习笔记】Unity基础(七)【uGUI基础、利用render Texture实现小地图功能】
!!!学习C#的委托和事件机制可交互组件(继承Selectable类)和可视组件初步过了下uGUI,先前小地图也曾提过多次,这次花了点时间实现了下,还是有成就感的。接下来进入动画、纹理、特效、镜头等学习。原创 2023-05-30 15:48:40 · 2315 阅读 · 0 评论 -
【学习笔记】Rider调试unity【 联调、断点调试等】(决定弃用vscode了)
暂时就搜查这些内容了吧,后续再有什么需要再补充,基本目的已经达到。原创 2023-05-20 02:46:31 · 4986 阅读 · 2 评论 -
【学习笔记】unity脚本学习(六)【GUI发展历程、IMGUI控件、Layout自动布局】
Unity本身的功能已经很强大了,但是由于某些项目的特殊需求,需要拓展编辑器来提高工作效率,让程序去代替人工进行一些比较繁琐的操作,减少一些出错的可能性,比如我们可以写一些工具来定制更改动画曲线,也可以写工具来一键打包资源,压缩资源,检测资源冗余,统计资源信息等等。拓展编辑器也可以展示一些效果,比如人物模型的碰撞框可视化,地图网格AI的可视化等等,拓展编辑器也可以送入AssetStore进行售卖,获取经济收益。皮肤 (Skin) 的主要目的将样式应用于整个 UI,而不是应用于单独的控件本身。原创 2023-04-25 16:09:05 · 1288 阅读 · 0 评论 -
【学习笔记】unity脚本学习(五)【常用的方法函数Destroy、Instantiate 、SendMessage、invoke 、Coroutine】
这几个方法使用的是反射方式,类似监听者模式,是官方提供的方法,后续应该会有自己实现的更高效的使用监听者模式实现的方法(delegate +event方式)。:只要我们得到了一个类的引用,便可以向它的子类/类本身/父类传递某些消息,最终达到直接执行某个函数的目的,这样非常方便实现一个引用,简化开发复杂程度。调用此游戏对象中的每个 MonoBehaviour 上或此行为的每个父级上名为 methodName 的方法。调用此游戏对象中的每个 MonoBehaviour 上名为 methodName 的方法。原创 2023-04-20 19:20:44 · 2875 阅读 · 0 评论 -
【学习笔记】unity脚本学习(四)【inputManager、键盘输入、鼠标输入、Raycast】
对于键盘和游戏杆输入,该值将处于 -1…如下图所示,能实现鼠标enter变大 离开变小 over旋转,但并没有想要drag效果,因为Raycast也会见到到cube本身,所以可以添加mask,排除cube。该值的含义取决于输入控制的类型,例如,对于游戏杆的水平轴,值为 1 表示游戏杆向右推到底,值为 -1 表示游戏杆向左推到底;目标:物体自由降落,当距离地面一定距离时,打开降落伞(没学动画,用active代替),并减速,到达地面收起降落伞。耗时两天,中间两天没学习,忙着玩青藤,心有些浮躁,自我批评下。原创 2023-04-16 01:52:42 · 1908 阅读 · 0 评论 -
【学习笔记】unity脚本学习(三)(向量 Vector3)
两个投影和数学概念一致。原创 2023-04-11 18:48:40 · 2733 阅读 · 0 评论 -
【学习笔记】unity脚本学习(二)(Time时间体系、Random随机数、Mathf数学运算)
限位函数,value在最大最小值之间,返回原value,否则取最大或者最小值。如果此属性具有非零值,则无论实时时间和帧的持续时间如何,Time.Time都会以captureDeltaTime(按Time.timeScale缩放)的间隔增加。他们都有一个相似的功能:给定一个初始点,一个target终点,要我们输出的函数从起始点到target点移动,只不过他们实现方法是不同的,效果也有很大的不一样。运算符,但是它适用于浮点数。当 f 为正数或零时,返回值为 1,当 f 为负数时,返回值为 -1。原创 2023-04-09 18:21:44 · 847 阅读 · 0 评论 -
【学习笔记】unity脚本学习(一)(脚本生命周期与Transform)
这是官网的答案,我理解下,乘以deltaTime,利用s=v*t来理解,相当于方法参数接收的是移动距离,方法放在update()中就相当于每帧移动的距离,这个值会随着deltaTime不同存在差距,所以能让游戏独立于帧率。所以,一定要明确自己是热爱背后所蕴含的“创造”,可以是游戏、小说、图片、动画,可以是剧情、音乐、哲理,我爱的是这个,我最希望是用自己所擅长的东西去演绎去表达,一定不能忘记初心,本末倒置,加油,自己!up提到了申明和获得实例化的顺序,也就是脚本生命周期的问题,那个东西很多,慢慢学。原创 2023-04-06 17:41:46 · 588 阅读 · 0 评论 -
【学习笔记】.net安装 vscode安装 踩坑记录(win11)
我这里大概理解下,clr类似java虚拟机jvm,就像jvm有多个实现,clr有限定windows平台的.net framework和跨平台的mono,以及后面整合所有平台进行大一统的.net core(存疑),都是基于.net标准的不同实现,unity因为跨平台性选择了mono。我擦,怎么没人说阿,那我就按高版本的开发了,我看5以下的都不长期支持了,还有个8.0的,算了先用7.0,以后熟了再说。欸 我发现了,从unity打开cs文件就有F12了,单独打开就没有,估计需要项目空间?但报错问题依旧没解决!原创 2023-03-29 14:01:59 · 1724 阅读 · 0 评论 -
跳槽unity准备游戏开发
本人原先java开发两年,一月底被裁,过年到现在零零散散看了些教程,学了些基础操作,到现在接触到c#开发,结果第一步就卡住了,方法无法跳转,加上整个人也比较游混,每天无所事事的,前段时间还黑白颠倒,刚刚规律了作息和吃饭,逐渐找到了生活的节奏,但随着日子一天天过去,深感自己技能没有丝毫进步,焦虑逐渐蔓延,看到有博主记录自己学习贴,也决定拿出往日学习的劲记录下,看看自己需要多久才能入门。废话就不多说了吧,干!原创 2023-03-13 16:36:06 · 296 阅读 · 7 评论