For my school project, I am developing a warping system in virtual reality (VR) using the Oculus Quest 2 and Quest Pro devices, along with Unreal Engine 5.1.1. The objective of this project is to create an immersive experience where the main camera image is dynamically warped around a black dot that can be positioned at different locations on the user’s eye. I have already attempted an initial solution by adding an extra camera that captures a 2D scene and renders it onto a render target. This render target is then used as a material on a plane mesh, which has predefined morph targets to warp the image around a predefined position, such as the center.
However, I would like the warping system to be more dynamic, allowing easy adjustment of the black dot’s position for flexible warping around different spots on the user’s eye. I am looking for guidance or suggestions on how to achieve this dynamic warping effect within the given hardware and software setup. Are there any specific techniques, APIs, or Unreal Engine features that could help me accomplish this goal efficiently and effectively?
The mesh
Without warping
With warping