笔记 【使用事件】制作3D自动开关门(附:3D人物移动和旋转,out输出参数,3D搭建使用的快捷键和Packages,泛型委托Action等)

【仍在施工ing】
小Joe视频链接传送门 使用事件制作3D自动开关门(附:3D人物移动和旋转,out输出参数,3D搭建使用的快捷键和Packages,泛型委托Action等)

上期视频
上期笔记

思考ing....
大家有没有想过,在3D项目中制作一款通用的「大门」,适用于其他很多项目中呢?(啊哦,没有捏) 如何使用Unity自带的【快捷键】和【Packages】,更有效的来进行场景的搭建,「事件」和「事件模型」在其中的运用过程当中,又是如何去进行实现的呢?
本期视频将会介绍:如何通过「事件」制作一个简单的【3D开关门】的功能。
具体步骤如下,首先,我们将会简单的搭建一个场景,完成一扇门的开与关这个功能,
第二步:克隆更多的组合、解决所有大门“同开同关”的问题。最后呢,小Joe会将整个的效果,应用在一个迷你场景中。将开关门应用到更复杂的3D项目当中。Let's go!

如果你想让【Game窗口】和你的【Scene窗口】相机拍摄角度保持一致,你需要在选中主相机Main Camera的前提下, 「CMD/CTRL+sHIFT+F」。 F:Focus焦距、聚焦的意思,很好记忆。
移动工具,W, 移动工具打开的状态下,按住【CMS/ctrl】的基础上,进行鼠标拖拽。 拖拽的单位可以再【Edit-Grid and Snap Setting 网格与对齐捕捉设置】中更改。

在选中【移动工具】的前提下,先保证我我们的鼠标已经点进了这个Scene窗口,
按下V键,选择某个点,然后移动你要选取的模型的顶点的位置。

检测区域不应该随着门的移动而发生变化,不然无法检测出,人物是否已经通过。

每扇门对应着它各自的检测区域,如果匹配上相同的ID的话,我们就能开启当前检测的这扇门了。

【取消订阅】

private void OnDisable()
{
EventSystem.instance.onDoorEnter -= DoorOpen;
EventSystem.instance.onDoorExit -= DoorClose;
}

输出参数 ,out
程序世界当中呢,方法就好比是一个数据加工厂,方法的参数列表,就是我们需要加工的这些原始的数据、原料,
而我们方法的返回值,就是加工后的产品,我们计算后的结果。
一般我们以前使用的方法,返回值都是有一个,或者是无返回值的,但是如果我们想通过一个方法,去产生多次数据 的结果。程序员前辈为我们准备了「输出参数」他还和「引用参数ref」有一点不同。
我们的「引用参数ref」它在传进来之前呢,必须有一个明确的赋值,而输出参数,是向外输出的。

章章去看了这个视频


![](https://img2022.cnblogs.com/blog/2178516/202208/2178516-20220814110210027-1693496866.png)


out 就是说 那个变量i 在函数里面进行初始化

posted @ 2022-08-14 10:29  专心Coding的程侠  阅读(235)  评论(1编辑  收藏  举报