UE4 - C++ 射线捕捉
#include "Runtime/Engine/Classes/Kismet/KismetMathLibrary.h" //省略大部分代码
void AMyFPS_Character::OnMoveingOrRot()
{
GetActorLocation();
//LineTraceSingle_NEW();
if (GEngine != nullptr)
{
FHitResult hit;
auto temp_startPos = GetActorLocation();
auto temp_rota = GetActorRotation(); auto temp_endPos = FRotationMatrix(temp_rota).GetScaledAxis(EAxis::X) * 500.0f; // +
//hit.
m_bodyInstance.LineTrace(hit, temp_startPos, temp_endPos, false, false);
if (hit.Actor != nullptr && hit.Actor != this)
{
m_operaTarget = hit.Actor;
}
}
} //Exa 2
//In player controller class
//location the PC is focused on
const FVector Start = GetFocalLocation();
//256 units in facing direction of PC (256 units in front of the camera)
const FVector End = Start + GetControlRotation().Vector() * 256;
//The trace data is stored here
FHitResult HitData(ForceInit);
//If Trace Hits anything
if( UMyStaticFunctionLibrary::Trace(GetWorld(),GetPawn(),Start,End,HitData) )
{
//Print out the name of the traced actor
if(HitData.GetActor())
{
ClientMessage(HitData.GetActor()->GetName());
//Print out distance from start of trace to impact point
ClientMessage("Trace Distance: " + FString::SanitizeFloat(HitData.Distance));
}
}
UE4 - C++ 射线捕捉的更多相关文章
- UE4 射线拾取&三维画线
虽然有人建议UE4使用C++创建VR项目,能避免一些坑爹的错误,但是我用C++创建,竟然问题更多,还存在创建不了的情况,也不知道是不是我的操作问题,快疯了. 于是我还是选择了蓝图创建VR项目,但是.. ...
- [UE4]手柄显示射线
1.实时动态从手柄处发出一条射线 2.可以在Event Tick事件中使用LineTraceByChannel方法.注意Draw Debug Type(射线生命周期)要选择For One Frame. ...
- UE4射线的碰撞与绘制
http://blog.csdn.net/qq992817263/article/details/51800657 //起点 终点 FHitResult RayGetHitResult(FVector ...
- ue4 射线Trace Responses(踪迹响应)
关于 Visibility和Camera区别 就是两个预定义通道 可以通过Character和pawn的Collider设置看出为什么要有这两个的区别,预制值设置成Pawn也是跟下图一致 所以Visi ...
- 【UE4 C++】 射线检测 LineTrace 及 BoxTrace、SphereTrace、CapsuleTrace API
World.h 库里的 Trace API Trace模式 TraceSingle 单个结果 TraceMulti 多个结果 Trace 的检测依据 ByChanne ByObjectType ByP ...
- 初探UE4中的Profiling【转】
http://blog.ch-wind.com/ue4-profiling-preview/ Profililng是成品制作过程中非常重要的一个步骤,通过Profiling才能提高运行效率使得作品达到 ...
- UE4开发神秘海域类游戏原型 初阶(二):动画资源的整合
前一篇已经确定神海类游戏原型的目标,首先要做的就是3C's(Character, Controls, Camera)的开发. UE4的3C's的程序部分开发主要也就是基于他的GamePlay Fr ...
- 【UE4+Vive】学习笔记1
16.9.10为了做房产项目,这两天开始学习Unreal Engine 4.之前一直用unity,但是视觉效果一直不满意,听说虚幻4的效果更好,就来试一试水. 1.安装UE4 参考资料一: http: ...
- 移植UE4的模型操作到Unity中
最近在Unity上要写一个东东,功能差不多就是在Unity编辑器上的旋转,移动这些,在手机上也能比较容易操作最好,原来用Axiom3D写过一个类似的,有许多位置并不好用,刚好在研究UE4的源码,在模型 ...
随机推荐
- Sprint第二个冲刺(第八天)
一.Sprint介绍 任务进度: 二.Sprint周期 看板: 燃尽图:
- Java 菜鸟学习之 script脚本语句
脚本语句 一般分为 顺序语句 分支语句 循环语句 顺序语句 就是从上到下依次读取 分支语句 是if语句 if(判断条件) { 满足条件执行的语句 } else { 不满足条件执行的语句 ...
- Team Queue (uva540 队列模拟)
Team Queue Queues and Priority Queues are data structures which are known to most computer scientist ...
- linux定时执行任务
(1)Linux下如何定时执行php脚本?(2)Linux下如何设置定时任务?(3)Crontab定时执行程序 核心提示:键入 crontab -e 编辑crontab服务文件 分为两种情况:(还有一 ...
- Java Code Examples for PhantomJSDriverService
Example 1 Project: thucydides File: PhantomJSCapabilityEnhancer.java View source code Vote up 6 vo ...
- 【Unity3D游戏开发】之常用代码 (十二)
//创建一个名为"Player"的游戏物体 //并给他添加刚体和立方体碰撞器. player=new GameObject("Player"); player. ...
- XAF应用开发教程(八) 汉化与多国语言支持
使用了XAF开发时,汉化是一个比较常的问题. 要实现汉化很简单: 1.在这里下载汉化资源文件.这里演示的版本是15.1.X的 2.文件下载后将:文件解压到目录 <你的项目>\BIN\ ...
- 01-C语言概述
本文目录 一.C语言简史 二.C语言的特点 三.C语言能做什么? 四.C语言的版本问题 五.C语言语法预览 回到顶部 一.C语言简史 C语言于1972年发明,首次使用是用于重写UINX操作系统(UNI ...
- c#入门笔记(2)控件
1.控件是可以从工具栏直接拖动到窗体,具有确定功能的函数.大部分控件属于control类的派生类.通用属性name(名称),location(具体的位置),top,left(位置) 2.form窗体类 ...
- lamp centos虚拟主机配置
1.基于不同端口的虚拟主机配置 [root@lamp~]# vi /etc/httpd/conf/httpd.conf Listen 80 #设置监听不同的虚拟主机需要使用的端口 Liste ...