\

In the cone of light, all is fate

学习UE4 - 将视角设置到相机

在公司做了三个月前端,帮忙做c#去了,刚做1周,负责人出差,这事就落我头上,大半年过去了,项目也差不多了,老板让我学UE4,刚学1周,唯一会UE4的人被劝退了,项目又落我头上,我好难。。。

学的时候发现学了就忘,所以写博客主要是加深自己的理解,有的地方可能有错误,不过我应该写不了几篇,因为老板有让我再去搞前端的苗头,不管怎么样,我希望自己能有一样拿得出手的技术,废话结束。

第一篇先从设置相机视角开始,我是针对项目中会用到的功能学习的,一些基本操作不做说明,比如如何创建蓝图。现在我从最简单的设置相机视角方法讲起。

我以Actor为父类创建了一个蓝图类,也可以以Pawn为父类,随意, 命名为BP_MainCamera。双击进入蓝图,点击Add Component加一个Camera进去,然后视图中就可以看到有一个相机,记得随时编译。

 

 

我们将这个蓝图类拖动到关卡的场景中,就创建了一个实例,随意调整下这个相机的位置,试着运行一下,会发现视角并不在相机上,因为我们还没有将视角绑定在相机上。

进入关卡蓝图,我要将视角设置在相机上,就要先获得这个相机,方法也不止一种,最简单的是去关卡场景中选中那个相机实例,然后回到关卡蓝图右键,会出如下列表:

 

 点Create a Reference to BP_MainCamera,就会创建此相机的引用,获得相机后我们就要把视角设置在它身上,用下图中的方法:

 

 然后这么一连:

 

 就好了吗?

编译之后发现报错了

 

 其实乍一看我也不明白,但是不用怕,试着理解一下它说了什么,看到了关键词 (self)is not a PlyerController,这一下就懂了,Target引脚还缺少一个节点连过去,我们点击Target引脚,然后拖动一点距离然后松开,搜索PlyerController

 

应该就是它了,点击后连上试试

 

 

不报错了,说明蒙对了,那么我们要理解一下为什么这样,这个Target应该是一个有视角的类,比如第一人称和第三人称,还有空项目里的默认视角都是有视角的,如果不连的话就是self,即它自身,这些节点在关卡蓝图中,关卡是没有视角的,所以会报错。我们要改变视角到相机位置,说白了这个视角是给玩家看的,显示屏中显示的一切都是玩家控制的视角,所以改变视角就是把玩家的视角设定到相机上。

之后我会在相机上增加相机臂,远点之类,以后另外再讲。

posted @ 2020-12-03 13:50  Ymrt  阅读(10506)  评论(0编辑  收藏  举报