UE4学习笔记2nd:玩家输入和Pawns

来源:互联网 发布:mysql导入数据表 覆盖 编辑:程序博客网 时间:2024/05/21 03:17
在这篇文章中,我会继续跟随官方文档进行虚幻4的C++编程练习,处理玩家的输入

首先,新建C++项目,附带初学者内容,命名为HowTo_PlayerInput
这里写图片描述

在内容浏览器中右键选择新建C++类,以Pawn为父类,命名为MyPawn
这里写图片描述
在打开的MyPawn.cpp中,在AMyPawn::AMyPawn()函数中添加一段代码,使之能够在游戏开始时能够响应玩家的输入
AutoPossesPlayer = EAutoReceiveInput::Player0;//设置为玩家控制
这里写图片描述

接着,添加一些基础组建,在MyPawn.h中添加
UPROPERTY(EditAnywhere)
USceneComponent* OurVisibleComponent;
添加在类定义的最后
这里写图片描述

这里写图片描述

这段话是说:UPROPERTY使它在引擎中可以被看到,它可以防止游戏启动时或项目的关闭和重新载入时的变量重置。
回到MyPawn.cpp,添加以下代码到AMyPawn::AMyPawn()中

//添加一个可以添加对象的空根组件
RootComponent = CreateDefaultSubobject(TEXT(“RootComponent”));
//创建相机和可见项目
UCameraComponent* OurCamera = CreateDefaultSubobject(TEXT(“OurCamera”));
OurVisibleComponent = CreateDefaultSubobject(TEXT(“OurVisibleComponent”));
//附加相机和可见对象到根组建,偏移并旋转相机。
OurCamera->AttachTo(RootComponent);
OurCamera->SetRelativeLocation(FVector(-250.0f, 0.0f, 250.0f));
OurCamera->SetRelativeRotation(FRotator(-45.0f, 0.0f, 0.0f));
OurVisibleComponent->AttachTo(RootComponent);
这里写图片描述

关闭MyPawn.cpp与MyPawn.h,右键选择HowTO_PlayerInput中进行编译
这里写图片描述

如果代码没有错误,输出栏会显示以下信息
这里写图片描述

即为编译成功

这一章的内容先进行到这里,剩余部分明天继续。

使用函数总结:

1,绑定输入需要继承Pawn,同时实现方法SetupPlayerInputComponent;

2,代码创建组件,CreateDefaultSubobject;

3,组件依赖,AttachTo;

4,设置位置,SetActorRotation
官方文档链接:https://docs.unrealengine.com/latest/INT/Programming/Tutorials/PlayerInput/1/index.html

原创粉丝点击