在上一篇(10-控制Pawn类移动)基础上增加镜头摇臂功能

在MyPawn.h中增加如下代码:

UPROPERTY(VisibleAnywhere)
class USphereComponent* SphereComp;  //定义一个球形组件UPROPERTY(VisibleAnywhere)
class USpringArmComponent* SprintArmComp;  //定义一个弹簧臂

在MyPawn.cpp中增加如下代码:

#include "UObject/ConstructorHelpers.h"
#include "Components/SphereComponent.h"
#include "GameFramework/SpringArmComponent.h"

    SphereComp = CreateDefaultSubobject<USphereComponent>(TEXT("Sphere"));SphereComp->SetSphereRadius(80);  //设置球形组件的半径SphereComp->SetCollisionProfileName(TEXT("BlockAll"));  //设置碰撞轮廓名称SphereComp->SetHiddenInGame(false);  //不让球形组件隐藏SetRootComponent(SphereComp);  //将球形组件设为根组件//RootComponent = CreateDefaultSubobject<USceneComponent>(TEXT("RootComponent"));  //创建一个根组件MeshComponent = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("MeshComponent"));  //创建一个Mesh组件MeshComponent->SetupAttachment(GetRootComponent());  //将Mesh组件绑定在根组件下面//指定网格资源static ConstructorHelpers::FClassFinder<UStaticMesh> MeshComponentAsset(TEXT("StaticMesh'/Game/StarterContent/Shapes/Shape_Sphere.Shape_Sphere'"));if (MeshComponentAsset.Succeeded())  //资源是否找到{//MeshComponent->SetStaticMesh(MeshComponentAsset.Object);MeshComponent->SetRelativeLocation(FVector(0.f,0,-50));}SprintArmComp = CreateDefaultSubobject<USpringArmComponent>(TEXT("SprintArmComp"));  //创建一个弹簧臂组件SprintArmComp->SetupAttachment(RootComponent);SprintArmComp->TargetArmLength = 400;  //设置弹簧臂的长度为400SprintArmComp->SetRelativeRotation(FRotator(-45.f, 0, 0));  //设置弹簧臂的相对位置SprintArmComp->bEnableCameraLag = true;  //让弹簧臂变得有韧性SprintArmComp->CameraLagSpeed = 3;Camera = CreateDefaultSubobject<UCameraComponent>(TEXT("Camera"));  //创建一个摄像机组件Camera->SetupAttachment(SprintArmComp, USpringArmComponent::SocketName);

打开BP_MyPawn,如果位置有偏差,可以调节一下:

运行效果,可以看到移动停止后,镜头有一个惯性效果:

11-控制Pawn类移动增加镜头摇臂 UE4 C++相关推荐

  1. Unity3D类英雄联盟镜头控制(平移和缩放)

    Unity3D类英雄联盟镜头控制(平移和缩放) using System.Collections; using System.Collections.Generic; using UnityEngin ...

  2. [unreal4入门系列之七] UE4中的Actor类和Pawn类

    现在我们开始进入UE4的代码开发工作.首先,UE4的类框架是非常庞大的,看起来有点让人措手不及.不过正因为UE4的类框架很完善,有很多常用的代码(函数和类)是已经提供给我们了,我们只需要简单地调用来完 ...

  3. SAP PS 第11节 收入类项目结果分析及结算

    SAP PS 第11节 收入类项目结果分析 1 收入类项目结果分析 1.1 OKG1定义结果分析码 1.2 OKG2定义版本信息,成本控制范围+RA版本 1.2.1 定义结果RA成本要素 1.2.2 ...

  4. 先设计一个基本账户类,再通过继承基本账户类设计一个储蓄账户类,储蓄账户 类中增加密码、地址、最小余额和利率等成员变量,并增加一些银行账户经常用到的成员函数。 要求: (1)类

    先设计一个基本账户类,再通过继承基本账户类设计一个储蓄账户类,储蓄账户 类中增加密码.地址.最小余额和利率等成员变量,并增加一些银行账户经常用到的成员函数. 要求: (1)类中的成员函数具有输入.输出 ...

  5. C#用户权限控制架构,可以控制到类【重发】

    这篇文章是在我的"园龄"不到三天的时候写的,原文地址是:http://www.cnblogs.com/fantong/archive/2012/09/14/2684856.html ...

  6. Python---已知Person类,继承Person类生成Teacher类(增加参数:科目)和Student类(增加参数:专业)。

    题目:已知Person类,继承Person类生成Teacher类(增加参数:科目)和Student类(增加参数:专业). 已知Person类如下: class Person(object):# Per ...

  7. Java 11:String类中的新方法

    Java 11:String类中的新方法 Java 11没有很多特定于语言的功能.因此,令人惊讶的是,在Java String Class中引入了6种新方法. Java 11 String类新方法 让 ...

  8. Android快速开发不可或缺的11个工具类(下载)

    Android快速开发不可或缺的11个工具类(下载) 源码简介 Android快速开发不可或缺的11个辅助类,其中10个来自张鸿洋的博客,1个是我平时积攒的,复制粘贴到你的项目里,添加上包名就可以直接 ...

  9. Spring:@AutoConfigurexxx注解-控制配置类的加载顺序

    1.美图 2.概述 控制配置类的加载顺序(@AutoConfigureAfter.@AutoConfigureBefore.@AutoConfigureOrder) AutoConfigureAfte ...

最新文章

  1. SAP PM 初级系列12 – 为维修工单关联Task List
  2. 推荐八款来自极客标签的超棒前端特效[第八期]
  3. GitLab+Jenkins+Ansible
  4. mysql report参数_mysqlreport 使用说明
  5. beoplay耳机序列号查询_BO Beoplay E8评测:真正无线耳机,可自定义EQ设置和透明模式!...
  6. 美国域名总量增至8023万个:1月净增5.9万个
  7. Leetcode 863.二叉树中所有距离为K的结点
  8. 少样本学习系列(四)【元学习与少样本深层理解】
  9. Linux复习-进程及其管理
  10. 编程基本功:典型的柳氏风格命名一例
  11. 常见B/S系统架构设计
  12. maya mentray_新手快速掌握Maya Mental ray
  13. 了解新型计算机ppt,第1章计算机系统基础ppt课件.ppt
  14. 一些可以使用的网上图片地址
  15. 微信小程序:高德地图搜索周边poi接口实践
  16. 140种Python标准库、第三方库和外部工具
  17. 上项线体表位置_人体体表定位标志
  18. 3U8633——雷达对民航的贡献
  19. 模拟电子技术-模拟集成电路
  20. 短视频剪辑自学小技巧,掌握并运用,让你的短视频火起来

热门文章

  1. java thumbnails 中心点_JavaDemo——java使用Thumbnails处理图片
  2. 通过TOP命令查找达梦数据库CPU使用率高的会话
  3. Minecraft开服教程,Windows搭建 我的世界(mc) 1.18.2 服务器教程
  4. 复习File类和递归方法使用
  5. 公司发年终奖了,老王坐不住了
  6. 2021-08-30王道 数据结构 第5章 树与二叉树 p185 第10题
  7. 《lwip学习3》-- 内存管理
  8. 基于STM32 STC15和SU-03T离线语音模块的智能语音自拍器设计
  9. 配置redis缓存实例出现报错 及解决方法
  10. 【总结一下|PTA】浙大版《Python 程序设计》题目集