![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Unity
文章平均质量分 71
行秋
这一生想成为神,下一世想变成石头。
展开
-
Unity——八叉树的原理与实现
这个类主要用于在启动时创建八叉树对象,并在运行时通过 OnDrawGizmos 方法绘制八叉树的根节点的包围盒。在 Start 方法中,创建了一个 Octree 对象(otree),并通过传入的世界游戏对象数组和最小节点大小进行初始化。在 OnDrawGizmos 方法中,如果应用程序正在运行,则调用八叉树的根节点的 Draw 方法来绘制八叉树的结构。八叉树的每个节点都有八个子节点,这八个子节点所表示的体积元素加在一起就等于父节点的体积。在最近邻搜索中,八叉树可以帮助我们快速找到给定点附近的最近邻点。原创 2024-01-25 21:18:18 · 2352 阅读 · 1 评论 -
Unity报错:[SteamVR] Not Initialized (109)的解决方法
使用HTC vive 头像进行SteamVR插件的示例场景进行测试,发现头显场景无法跳转到运行场景(Unity 项目可以运行,仅出现警告)。点击Edit->Project Settings,查看XR Plug-in Management中的OpenVR Loader是否勾选。2. 在通过Package Manager中的My Assets导入SteamVR时,请确保自己已登录账号,且网络流畅。2.无法勾选,可尝试关闭项目重新打开进行尝试,或新建项目重新导入steamVR。1.能勾选,就勾选后重新运行即可。原创 2024-01-10 11:39:41 · 2971 阅读 · 0 评论 -
Unity报错:InvalidOperationException: Insecure connection not allowed的解决方法
选中Player,在Other Settings中找到Allow downloads over HTTP*,修改其访问权限为Always allowed即可。备注:如果你是用的接口地址使用的都是Https,建议选择第二个,仅仅在开发环境使用http。如果你的接口地址存在Http协议,建议选择Always allowed,否则在发布后,接口可能会不通。(释义:纯文本HTTP连接不安全,可能会使您的应用程序容易受到攻击。该错误是由于新版本的Unity默认是不允许HTTP请求的。原创 2024-01-03 17:24:08 · 2717 阅读 · 0 评论 -
unity——Rigidbody(刚体)
刚体 (Rigidbody)使__游戏对象__的行为方式受物理控制。刚体可以接受力和扭矩,使对象以逼真的方式移动。任何游戏对象都必须包含受重力影响的刚体,行为方式基于施加的作用力(通过脚本),或通过 NVIDIA PhysX 物理引擎与其他对象交互。原创 2023-07-21 17:22:38 · 779 阅读 · 0 评论 -
碰撞检测算法详述
算法的分类。原创 2023-06-24 11:27:02 · 5540 阅读 · 2 评论 -
Unity——在C#中调用C++动态链接库(DLL)
Unity——在C#中调用C++动态链接库(DLL)。打开VS,新建一个C++空项目,自命名项目名称与位置。如果Unity已经在运行并且Dll已经存在,那么新的Dll写入生成会失败,此时需要关掉Unity再重新生成。原创 2023-05-31 22:53:51 · 5499 阅读 · 0 评论 -
Unity ——使用贝塞尔曲线对三维管状物体进行弯曲
在三维游戏引擎中,需要对一些三维的物体进行弯曲,以达到游戏操作中实时模拟物体弯曲。说到弯曲,自然而然想到曲线,从曲线的角度出发,那么关键就是如何生成曲线,以及如何根据曲线修改物体形状,从而达到弯曲的效果。 生成曲线的话,可以直接想到用贝塞尔曲线,传统的贝塞尔曲线算法被用 于各类图形制作软件中,如 Photoshop 等软件,但多限于二维线条的应用,在三维物体上的应用较少。 通过贝塞尔曲线算法结合三维物体的网格顶点,可以实现对条形三维物体进行弯曲变化。原创 2023-04-14 20:17:16 · 3057 阅读 · 0 评论 -
Unity——网格变形(制作一个压力球)
实际上,这个力首先通过以下方式转换为一个加速度--------------- 那么速度的变化可以通过以下方式找到------为了简单起见,我们将忽略质量,就像每个顶点都是一个一样。因此,我们最终会得到------------只要用原力除以距离的平方就可以了、 -------实际上,我除以1再加上距离的平方------------、这就保证了当距离为零时,力是全开的。就这样,你拥有了它。它是一个简单的因素,随着时间的推移,速度会降低、-------然而,对于一个没有被缩放的物体,我们的速度现在是正确的。原创 2023-04-12 10:27:03 · 2323 阅读 · 0 评论 -
Unity——制作简易红绿灯
我们日常的红绿灯,是变红,3秒黄灯,变绿,3秒黄灯,变红……分别赋给灯就行啦,如何在规定时间完成一个操作,这就要用到了Invoke()函数。这里涉及一个难点,就是黄灯的问题,因为不管是红灯过后还是绿灯过后一定是黄灯,但怎么确定黄灯后是红灯还是绿灯?为了解决这个问题,设计了一个标记,flag=1代表黄灯上一个是红灯,flag=0代表黄灯上一个是绿灯。创建四个材质球,基础色分别赋为灰色,红色,黄色,绿色。首先在场景中,创建一个正方体(灯座),球体(作为灯),把其放置成红绿灯结构。2. 点击运行即可。原创 2023-02-28 21:03:15 · 1424 阅读 · 0 评论 -
Unity——使用铰链关节制作悬挂物体效果
什么是铰链关节?铰链关节 将两个刚体(Rigid body)组会在一起,从而将其约束为如同通过铰链连接一样进行移动。它十分适合门、链条、钟摆等模拟效果。原创 2023-02-24 16:42:10 · 4096 阅读 · 5 评论 -
Unity——常见的API
在Unity中有一些常见的API,是Unity中的必然事件(Certain Events),相当于C语言的Main函数(这些函数在一定条件下会被自动调用)。Start函数和Update函数是Unity最常用的两个事件,因此新建脚本时Unity会自动创建这两个函数。用于更新游戏场景与状态。注意:与物理状态有关的更新放在FixedUpdate函数中。用于游戏对象的初始化。注意:Awake函数的执行早于所有脚本的Start函数。注意:与相机有关的更新一般放在这里。每帧调用一次(在Update函数调用后)原创 2023-02-15 11:41:05 · 531 阅读 · 0 评论 -
Unity——通过点击鼠标进行场景切换
通过点击按钮进行场景切换请参考:unity——通过点击按钮进行场景切换_行秋的博客-CSDN博客1.准备两个示例场景 2.点击File—>Build Settings...,将场景添加到视图中,点击Build。选择文件夹进行保存。(建议将文件打包到空的文件夹)3.为场景添加Button(UI)在Hierarchy视图中空白处右键,选择UI—>Button - TextMeshPro。 添加完成后修改合适的位置。 4. 编写代码。新建一个C# Script文件,编写代码如下:可编写不同语句选择是否在切换场景后原创 2022-12-06 21:11:34 · 2999 阅读 · 0 评论 -
unity——通过点击按钮进行场景切换
1.准备两个示例场景 2.点击File—>Build Settings...,将场景添加到视图中,点击Build。选择文件夹进行保存。(建议将文件打包到空的文件夹)3.为场景添加Button(UI)在Hierarchy视图中空白处右键,选择UI—>Button - TextMeshPro。 添加完成后修改合适的位置。 4. 编写代码。新建一个C# Script文件,编写代码如下:可编写不同语句选择是否在切换场景后销毁前场景。(1)切换场景后销毁前场景SceneManager.LoadScene(这里填场景的原创 2022-12-06 17:01:10 · 9057 阅读 · 2 评论 -
Unity中用Natrue Renderer做自己的地形Terrain.
Nature Renrderer是个强大的插件,它本身就可以作为地形编辑的工具取代Unity的地形细节和树木的渲染系统。原创 2022-12-02 10:02:54 · 2979 阅读 · 0 评论 -
Unity3D中实现Player的第一人称视角
2.将Main Camera拖拽到到player内作为子对象,重置一下Main Camera的transform,并且再调整一下它在player中的位置。3. 在project视图中右键创建一个文件夹,命名为Player用来存放脚本,进入文件夹右键创建一个C#脚本并且命名为Camrea Controller。1.在Hierarchy视图中右键创建一个胶囊体(Capsule)作为Player,添加好后重置胶囊体的位置,并且调整胶囊体在一个合适的位置。0创建地形,当然可以先简单的创建一个空白的Terrain。原创 2022-11-30 11:46:59 · 6211 阅读 · 4 评论 -
unity 中模型的中心点与移动轴中心点偏移问题解决方法
在Secne视图中,切换工具手柄位置。,将Pivot切换成Center即可。模型的中心点与实际中心点有很大偏移。原创 2022-11-25 11:43:46 · 3210 阅读 · 0 评论 -
Unity报错:Assertion failed on expression: ‘IsMatrixValid(matrix)‘...的解决办法
我在运行steam VR的Interaction_Example时报错,且为运行画面为黑屏,其中unity为2021.3.6f1c1,steam VR(2.7.3),steamvrSDK(1.23.7),头显为HTC Vive pro2。点击Edit->Project Settings...->XR Plug-in Management->OpenVR 或者OpenXR 把Stereo Rendering Mode设置为Multi Pass.原创 2022-09-15 22:45:51 · 3465 阅读 · 7 评论 -
Unity报错:InvalidOperationException:You are tring to read lnput using the UnityEngine. ……的解决办法
我在运行steam VR的Interaction_Example时报错,其中unity为2021.3.6f1c1,steam VR(2.7.3),头显为HTC Vive pro2。点击Edit->Project Settings...->Player->Other settings,将active lnput handling选项设置为Both。原创 2022-09-15 17:56:29 · 6339 阅读 · 5 评论 -
Unity 重要概念
这意味着,如果更改生命值药水预制件的对象值,则场景中该预制件的每个副本都会改变以匹配该值。当创建新的游戏对象时,这个游戏对象便附带了一个变换组件。这种组件可以控制游戏对象在 3D(或 2D)游戏空间中的位置属性。游戏世界中的每个对象都在 Unity 中作为游戏对象存在。通过为游戏对象提供适当的组件,可以赋予游戏对象特定的功能,因为这些组件提供了广泛的不同功能。预制件是配置和存储游戏对象以便在游戏中进行复用的好方法。预制件用作模板,可以存储特定游戏对象的组件和属性,并允许在场景中创建预制件的多个实例。...原创 2022-08-30 11:37:48 · 1002 阅读 · 0 评论 -
学习unity的第二个游戏-Creator kit FPS
创建场景:在顶部菜单栏中,选择 FPSKIT > Create new Scene。注意:FPSKIT 菜单并非是 unity 中的默认菜单,而是通过代码,新增如 Unity 编辑器的自定义功能。原创 2022-08-21 14:35:43 · 722 阅读 · 0 评论 -
学习unity的第一个游戏-Playground
Unity Playground 提供了一系列易于使用和整合的单任务组件,因此不要求具有编码技能。通过将这些组件整合在一起,便可以创作出多种游戏风格的 2D 物理游戏。还可以使用 Playground 来了解游戏设计或关卡设计。注意:官方文档中,使用的是 Unity 2017 ,版本比较旧,跟新的 Unity 界面有所区别,建议用新版本的同学,还是按此文档来操作,避免出现问题。......原创 2022-08-18 09:52:09 · 1581 阅读 · 2 评论 -
Unity界面总体介绍
unity中2个视图区域(Scene视图、Game视图)+3个窗口(Hierachy窗口、project窗口,Inspector窗口)都可以自由布局,可根据自己的使用习惯,设置不同的布局,并且存储下来,随时可以还原。由于不同类型的GameObjects具有不同的属性集,因此每次选择不同的GameObject时,Inspector窗口的布局和内容都会发生变化。场景中的每个项目在层次结构中都有一个条目,因此这两个窗口本质上是链接的。通过情景模拟最终渲染的游戏的外观效果。......原创 2022-07-28 16:37:58 · 3892 阅读 · 0 评论 -
Unity报错:multiplayer-hlap 包有问题,无法升级的解决方案
方法一更新multiplayer-hlapi,点击“Windows”----“PackageManager”,在Packages中下拉选择“InProject",找到”MultiplayerHLAPI",点击版本后面的向上的箭头进行更新,直到版本后面是绿色对号。所以,直接remove删掉就行。方法二针对multiplayer-hlapi不能跟新,就选择”Remove“,然后看项目能否运行,不过不能的话,可以选择安装低版本的unity(unity2020及以下版本)。...原创 2022-07-28 15:58:32 · 2884 阅读 · 0 评论 -
Unity 安装个人免费版
1.打开unity官网点击”下载Unity".2.下拉,会有各种版本,进入Unity的下载页面,找到对应的版本,点击“从Hub下载”3.弹出账户登录界面,如果已有账户直接登录即可,没有账户进行注册后登录。原创 2022-07-25 19:39:32 · 5777 阅读 · 0 评论