(个人)VR实时交互的太极拳学习系统创新实训第四周(1)

因为这方面的教程比较少,因此先对其进行了学习。

通过抛物线定位让人物移动,相信很多做VIVE开发的开发者并不陌生,UE4作为VR开发引擎之一,那在UE4开发VIVE游戏是,如何通过抛物线定位进行移动呢,希望可以通过本篇文章的介绍帮到你。

UE4开发VIVE游戏-抛物线定位移动篇

Demonstration.gif

下方提供这套简单弧线检测工具蓝图下载:

UE4开发VIVE游戏-抛物线定位移动篇 

这样的


1.Floor_Target继承自Actor类挂载一个cube碰撞器
2.LaserTool继承自ActtorComponent类用以挂载到其他实例化对象上方便调用加载


实现思路:
抛物线位移分为三部分来说

1.抛物线射线检测
2.绘制抛物线
3.移动角色控制器

 


API提示【抛物线碰撞检测】

抛物线可以被分解成线段,即将连续的点用线段首尾相连表示,抛物线检测则使用多次的线段碰撞检测来完成

射线碰撞检测API
UE4开发VIVE游戏-抛物线定位移动篇
碰撞检测API

UE4开发VIVE游戏-抛物线定位移动篇
射线碰撞检测API


 


开始编写抛物线工具蓝图

1)创建一个继承自ActtorComponent的蓝图作为工具

UE4开发VIVE游戏-抛物线定位移动篇 
工具蓝图基类

 


2)创建一个Function作为基础算法函数;我们将通过这个基础算法获得轨迹点的列表信息及包含的碰撞检测结果

UE4开发VIVE游戏-抛物线定位移动篇
算法函数提供后续绘制和定位数据

输入

起点坐标,起点朝向,vector3类型变化量,每段线段长度,默认循环次数,
输出

碰撞检测所得Hit,检测结果,检测所经历的轨迹点列队


UE4开发VIVE游戏-抛物线定位移动篇
基础算法蓝图

 

3)接下来创建对外接口函数

UE4开发VIVE游戏-抛物线定位移动篇 
创建对外函数接口

 


将函数设置为公开函数

UE4开发VIVE游戏-抛物线定位移动篇
一般均为public

接口设置思路

输入

一般输入时不需要总改变检测弧线形状颜色等数据,故对外接口只接收起点坐标和朝向即可;
其他有关弧线检测所需的数据均在工具类内使用默认值,如需形状和检测长度理想可自行修改。

输出

返回本次弧线检测的检测结果和Hit信息,给调用者用来做处理


UE4开发VIVE游戏-抛物线定位移动篇
对外函数接口

工具使用方法

LaserTool的组件拖拽到之前准备好的角色控制器上

UE4开发VIVE游戏-抛物线定位移动篇 
LaserTool继承自ActtorComponent

UE4开发VIVE游戏-抛物线定位移动篇
角色控制器蓝图实现

 

Floor_Target拖拽到场景并改变其大小;也可多个拼接使用

UE4开发VIVE游戏-抛物线定位移动篇
拉伸拼接地面即可

UE4开发VIVE游戏-抛物线定位移动篇 
即可实现抛物线检测定位位移

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值