From 96b189e610c2e6e1dcbf3a70d3f9bbd8c198cb82 Mon Sep 17 00:00:00 2001
From: Jonathan Wendt <wendt@vr.rwth-aachen.de>
Date: Thu, 5 Dec 2019 09:09:25 +0100
Subject: [PATCH] add first test for an interaction ray

---
 .../Private/VRWidgetInteractionComponent.cpp          | 11 ++++++++++-
 .../Public/VRWidgetInteractionComponent.h             |  4 ++++
 2 files changed, 14 insertions(+), 1 deletion(-)

diff --git a/Source/WidgetInteraction/Private/VRWidgetInteractionComponent.cpp b/Source/WidgetInteraction/Private/VRWidgetInteractionComponent.cpp
index 8ad9ac7..dc71de2 100644
--- a/Source/WidgetInteraction/Private/VRWidgetInteractionComponent.cpp
+++ b/Source/WidgetInteraction/Private/VRWidgetInteractionComponent.cpp
@@ -4,9 +4,18 @@
 
 #include "Runtime/InputCore/Classes/InputCoreTypes.h"
 #include "Runtime/Engine/Classes/Components/InputComponent.h"
+#include "ConstructorHelpers.h"
 #include "VirtualRealityPawn.h"
 
-UVRWidgetInteractionComponent::UVRWidgetInteractionComponent() {}
+
+UVRWidgetInteractionComponent::UVRWidgetInteractionComponent() {
+	InteractionRay = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Interaction Ray"));
+	auto MeshAsset = ConstructorHelpers::FObjectFinder<UStaticMesh>(TEXT("StaticMesh'/Engine/BasicShapes/Cone.Cone'"));
+	if (MeshAsset.Object != nullptr)
+	{
+		InteractionRay->SetStaticMesh(MeshAsset.Object);
+	}
+}
 
 void UVRWidgetInteractionComponent::Init()
 {
diff --git a/Source/WidgetInteraction/Public/VRWidgetInteractionComponent.h b/Source/WidgetInteraction/Public/VRWidgetInteractionComponent.h
index 76360f2..74f9395 100644
--- a/Source/WidgetInteraction/Public/VRWidgetInteractionComponent.h
+++ b/Source/WidgetInteraction/Public/VRWidgetInteractionComponent.h
@@ -4,6 +4,8 @@
 
 #include "CoreMinimal.h"
 #include "Components/WidgetInteractionComponent.h"
+#include "Components/StaticMeshComponent.h"
+
 #include "VRWidgetInteractionComponent.generated.h"
 
 /**
@@ -23,5 +25,7 @@ public:
 protected:
 	void OnFire(bool val);
 
+	UPROPERTY(VisibleAnywhere) UStaticMeshComponent* InteractionRay;
+
 	DECLARE_DELEGATE_OneParam(FFireDelegate, bool);
 };
-- 
GitLab