Adding Motion Controllers, Navigation and Teleportation to Unreal level
@Hiloni
Install Unreal and make a level ion Unreal Engine before following the below steps-
Rendering and Antialiasing-
Always a good idea to deicde Rendering when you start the project(You might run into bugs if you decide to change this later)
Go to Project Settings -> Select Rendering subsection
Forward Rendering and MSAA Aliasing-
In forward Renderer- Click Forward Shading(allows you to enable MSAA)
Forward shading allows things to go much faster in Virtual Reality
Go to default Settings-
Choose Antialiasing Method - MSAA
Advantages- Run smoothly and maximum Frame rate
Deferred Rendering and Temporal Aliasing-
In forward Renderer- Untick the Forward Shading
Go to default Settings-
Choose Antialiasing Method- Temporal Aliasing
Frame rate drops, Runs smoothly not as sharp as Forward Rendering
For faster and smooth VR, Forward Rendering and MSAA Aliasing is preferred
Import Motion Contoller Mapping(If your proje ct is not already in VR mode and you want to import it)-
If your project is already in VR, skip these steps-
In Content Browser, Select 'Add new' and choose Blueprint Feature -> Click on Virtual Reality and Click 'Add to Project'
This will Add Virtual Reality and Virtual Reality BP folder in your content
Nav Mesh-
Adding navMesh in the scene-
In Modes, type Nav Mesh and drag it into your level
Reshape the navmesh so it covers your entire scene
To view NavMesh- Press Control + P to see the region covered by Nav Mesh(it will be seen in green)
Importance of NavMesh-
It avoids collision and creates boundry around all the objects. This will allow you to teleport anywhere in the scene except on the objects.
Adding Motion Controller BluePrint in the scene-
Go to Content -> Virtual Reality BP Floder -> BluePrints -> Motion Controller Pawn
Bring that in scene and place it wherever you want in the scene
AutoPosess Player- Set it on Player0, for second Pawn set it to Player1 and so on
You should be able to teleport in navMesh area avoiding collision with any objects in the scene.
Choose BP Pickup Cube from Blueprints and drag it into the scene
Go into the scene and move the cubes.
Allow user to Move other objects in the scene-
Select Object -> Blueprint -> Add script
Choose Path - Virtual BP and Click Create
Go to Class Settings-> Click Interfaces Add Pickup Actor Interface
Go to ViewPort -> Choose Movable, Simulate Physics, Enable Gravity, Collision -> Click Simulation Generates Hit and Generates Overlap Events
Go to the Event Graph of Pickable Cube from Virtual BP and copy the graph. Paste it into the object's Evenet Graph
You should be able to move the object in Virtual Reality Mode :)