Keep same screen size for Stereo Layers

I am using Stereo Layer as a cursor for VR UI, to indicate where I am pointing. I am doing raytracing in tick in order to identify the location for placing the cursor. Stereo Layer is of type “World Locked”. Cursor’s screen size is varying according to the distance from the camera, which is normal behavior. But I want it to be of fixed size, I don’t want the cursor to be huge when it points to near objects and very small when it points to distant places. Screenshots below demonstrate the problem:


You can also see my cursor settings below:
image

I tried to multiply the stereo layer’s scale with a value proportionate to the distance from controller to the hit location, but there is always variation of scale. Perhaps I did something wrong, or perhaps it is not a linear correlation.

Can you suggest a method to achieve fixed screen size for the cursor?

Hi Rafig,

I saw a few of your posts on the topic, in one of them you ask if it feels OK without the laser beams. I just tested it and yes, it does feel fine, pretty much the same feeling as when you are presenting IRL using laser pointer, the beam is not seen but the hit point is.
Secondly, in my implementation I bypass the size issue by only showing hit point when it hits the widget of the menu. That also feels fine. IDK if you use blueprints or c++, my c++ is

void
UUIInteractionComponent::TickComponent(float DeltaTime, ELevelTick TickType, FActorComponentTickFunction * ThisTickFunction)
{
	Super::TickComponent(DeltaTime, TickType, ThisTickFunction);
	if (HoveredWidgetComponent)
	{
		cursor->SetWorldLocation(LastHitResult.ImpactPoint);
		auto rotation = HoveredWidgetComponent->GetComponentRotation();
		rotation.Yaw += 180;
		cursor->SetWorldRotation(rotation);
		cursor->SetVisibility(true, true);
	}
	else
	{
		cursor->SetVisibility(false, true);
	}
}