近期封装输入相关逻辑,简单归纳下。

蓝图实现

内容界面右键Miscellaneous->Force Feedback Effect,创建力反馈对象并填写相关参数:

然后在蓝图中用Spawn Force Feedback at Location调用这个力反馈配置文件,

或是创建Force Feedback组件,根据角色是否进入手柄震动区域来进行力反馈响应。

C++实现

C++部分的手柄力反馈,包括PS手柄的亮灯颜色等,都可以在PlayerController中直接设置。

//#include "GameFramework/ForceFeedbackEffect.h"
//#include "Kismet/GameplayStatics.h" APlayerController* PC = UGameplayStatics::GetPlayerController(this, 0);
if (PC) {
FString Path = "/Game/ThirdPersonCPP/NewForceFeedbackEffect.NewForceFeedbackEffect";
UForceFeedbackEffect* Obj = LoadObject<UForceFeedbackEffect>(nullptr, *Path);
PC->ClientPlayForceFeedback(Obj);
}

获取到玩家控制器然后传入力反馈配置文件路径即可。

顺带看了下PlayerController内部的调用逻辑,其内部好像走的是InputInterface:

IInputInterface* InputInterface = FSlateApplication::Get().GetInputInterface();

通过FSlateApplication拿到对应平台的InputInterface,若想直接使用该接口配置震动,需加入Slate模块的依赖。

UE4 C++调用手柄震动的更多相关文章

  1. SteamVR手柄震动控制实现

    SteamVR手柄震动控制实现 public class handCtrl : MonoBehaviour { public SteamVR_TrackedObject _TrackedObject; ...

  2. HTC Vive开发笔记之手柄震动

    手柄震动的代码SteamVR_Controller脚本的最上面的注释里面就有说明,其实也很简单 // Example usage: //这个栗子是左手柄震动 右手震动只需把Leftmost换成Righ ...

  3. html5调用手机震动

    在h5里面里面,浏览器对象有个vibrate属性.顾名思义,翻译过来就是震动的意思,这个api属性方法如下: 要调用的例子 if (window.navigator.vibrate) window.n ...

  4. Unity3d之音效播放和调用手机震动

    http://blog.csdn.net/sunshine_1984/article/details/12943979 今天研究了下Unity3d音效播放相关内容,整理下实现细节. 1,添加音效文件到 ...

  5. Delphi XE5 Android 调用手机震动

    uses Androidapi.JNI.Os, Androidapi.JNIBridge; function GetVibratorArray(const AIntArr: array of Int6 ...

  6. [UE4]C++调用蓝图函数:BlueprintImplementableEvent函数说明符用法

    用BlueprintImplementableEvent标明的函数在C++代码中不需要有方法体,方法体在蓝图中实现. 用法: 1,现在C++头文件中定义函数名 UFUNCTION(BlueprintI ...

  7. Delphi XE5 Android 调用手机震动(通过JObject测试是否支持震动)

    源码如下: uses Androidapi.JNI.Os, Androidapi.JNIBridge; function GetVibratorArray(const AIntArr: array o ...

  8. Android(java)学习笔记113:Android编写代码调用Vibrator震动功能(Bug:按下按钮button始终没有震动)

    1.之前我编写的代码是如下: package com.himi.vibrate; import android.app.Activity; import android.app.Service; im ...

  9. html5的navigator调用手机震动

    navigator.vibrate(s) 或 navigator.webkitVibrate(s),不过该属性只在安卓系统有效.

  10. Android(java)学习笔记54:Android 调用Vibrator震动功能

    1. 之前我编写的代码是如下: package com.himi.vibrate; import android.app.Activity; import android.app.Service; i ...

随机推荐

  1. 程序员必备上传服务器Xftp及连接服务器工具Xshell

    1.下面截图为破解工具,点击执行就可以用了 压缩包放云盘了,私信我即可 (不知道咋上传,有点尴尬Q.Q)

  2. #位运算#CF959E Mahmoud and Ehab and the xor-MST

    题目 \(n\)个点的完全图标号为\([0,n-1]\),\(i\)和\(j\)连边权值为\(i\: xor\:j\),求MST的值 分析 考虑MST有两种解法一种是Prim一种是Kruskal,Pr ...

  3. OpenHarmony 4.0 Beta2新版本发布,邀您体验

     2023年8月3日,OpenAtom OpenHarmony(简称"OpenHarmony")发布了Beta2版本,相较于历史版本我们持续完善ArkUI.文件管理.媒体.窗口.安 ...

  4. POJ2251 基础bfs

    题目: 你进入了一个3D的宝藏地宫中探寻宝藏到了宝藏,你可以找到走出地宫的路带出宝藏,或者使用炉石空手回家. 地宫由立方体单位构成,立方体中不定会充满岩石.向上下前后左右移动一个单位需要一分钟.你不能 ...

  5. caidao qsnctfwp

    进入网页发现如下内容 直接使用蚁剑连接 连接并进入后,在根目录下发现名为 flag 的文件,即可获取 flag -End-

  6. mysql 必知必会整理—sql 简单语句[二]

    前言 简单整理一下sql 排序与过滤. 正文 在这里需要创建一下一个数据库实例. 为了方便直接用docker 创建一下啊,方便简洁. https://hub.docker.com/_/mysql 按照 ...

  7. vscode 编写node的c++ 扩展

    前言 在此介绍一下node的c++扩展在vscode 上的编译环境,在此不多说,比较完善,看了肯定明白. 正文 c++ 环境搭建 下载mingw,然后配置好环境.下载地址为,官网,可以自己百度一下. ...

  8. 【cef编译包】下载地址

    http://opensource.spotify.com/cefbuilds/index.html

  9. golang开发 深入理解 context

    context的历史 context包在Go 1.7版本正式加入Go标准库.在加入之前我们看看Go团队核心成员Sameer Ajmani在2014年发表的一篇关于context介绍博客,地址:http ...

  10. JavaServlet类

    "感谢您阅读本篇博客!如果您觉得本文对您有所帮助或启发,请不吝点赞和分享给更多的朋友.您的支持是我持续创作的动力,也欢迎留言交流,让我们一起探讨技术,共同成长!谢谢!" 介绍Ser ...