
Intro and Course goal.
Learning by practice, is the only way to succeed.
You could approach this course using either a top-down approach or a bottom-up approach.
The preferred way is using the top-down approach, where you start with Section 1 and proceed sequentially thru the course listening to lectures, and implementing the concepts taught, within your own project.
On the other hand, you may not be an absolute beginner to Virtual reality development and probably are looking at simply getting your hands on the VR framework and using it to build your very own game, app, or experience.
In this case I would suggest a reverse engineered, bottom-up approach, where you directly jump to Section 13 of the course and download the complete course Zip file and then launch it using Unity version 2019 dot 4 dot 20.
From here you can then just browse thru lectures that interest you and explore how the various prefabs have already been setup. This would help you quickly learn how to use the framework, and you could always revisit the lectures in sequence later, when you do find the time.
Check out the link below to learn how to side load apps onto your Oculus Quest using Side Quest.
https://uploadvr.com/sideloading-quest-how-to/
If you have purchased the course you have access to the entire project download within Section 13, so you won't need this 'VR_Framework.apk' file.
This 'VR_Framework.apk' download is provided for students who want to test the framework, prior to enrolling into the course.
Usage:
- Push the left controller thumbstick forward/back for sliding movement.
- Push the left controller thumbstick left/right for rotating.
- Touch the left or right thumbstick (do not press them down) and swing your arms to experience arm swinging locomotion.
- Press the grab buttons one either controller to grab an interactable object. Note the haptic pulse.
- Grab the ladder or any container and climb up, walk to the edge and drop down to the floor. Note the smoothness of your fall.
- Grab the Hammer or the Axe and drop them into the inventory slots.
- Press the left Thumbstick button to cast out a teleport Ray. Whilst pressed rotate the left thumbstick button to see the teleport rays arrow pointer rotate. Upon release you will be teleported to the specific location and will be facing the direction you had your arrow pointer pointing towards.
- Click the menu button on the left controller to have your spatial ray pointer display. Point it at any of your 3D spatial buttons and press the Trigger button to see the buttons change state. Press this menu button again to toggle off the spatial pointer.
- Approach the option buttons, toggle button, slider and interact with them directly using your hands.
- Activate the distance grab pointer by pressing the 'A' button on your right controller and point towards an interactable object i.e. either the drill machine, axe or hammer and as soon as you see a blue pulsating reticle show up against the object pointed at, press the grab button of the specific controller, to have that object move into your hand. You can even open the drawer this way. Pressing the 'A' button again will toggle off the distance pointer.
Compare VRTK 4 with other VR SDKs, highlighting Arctic's cross-platform, free and open-source framework. It bundles locomotion, object interaction, and UI controls to streamline VR development.
Install Unity 2019, import the Oculus Integration SDK and Open VR packages, configure VR in player settings, and set up the demo scene to test Oculus and Open VR integration.
Section_2_Lecture_7_ImportingVRTK4Packages.mp4
10:03Edit Content
Preview
Unpublish
Free Preview:
Downloadable:
The Unity project 'VR_Playground_Starter' provided within the VR_Playground_Starter.Zip file attached to this lectures resources needs to be opened with Unity LTS Version 2020.3.15f2. It is a starter project wherein after loading the project into Unity you can commence your learning from Lecture 8. Do NOT overwrite its 'manifest.json' file as it already contains an updated 'manifest.json' file. It also contains the Oculus Integration SDK, so you don't need to download that either from the Unity Asset Store.
Please note as I have added this as a new Lecture Section 3 now starts at Lecture 9.
Install the required SDK and import Telia packages, then prepare the demo scene. Learn to use Arctic and Oculus camera rig prefabs from the packages to configure in-scene cameras.
Set up a root MTV game object and a child camera rig, adjust transforms, and attach camera rig prefabs from runtime packages and oculus integration for editor testing with keyboard.
Set up the tracked alias to represent an active camera rig in Unity by listing three rigs—space shuttle simulator, Oculus integration, and Oculus camera rig—and select one active rig.
Configure the oculus ovr camera rig for spatial testing, set tracking origin to floor level, and activate a single camera rig; use oculus integration for hand animations with alternative controllers.
Use the object states prefab to switch between three camera rigs in your scene by assigning each rig to target slots and keeping only one active.
Map left and right control objects to Oculus controller transforms to mimic hand movements; start with cuboid hands, then switch to virtual animated hands and discuss cross platform input.
Explore how an interactor detects and grabs intractables, contrasting direct interaction with distance grab using a reticle, and preview grabbing mechanics in Unity VR development.
Set up Oculus controllers as cuboid avatars by attaching the interactions interactor prefab to both left and right controller aliases, then drag from the project to see cuboid hands.
Import vr hands package in Unity, set up left and right prefabs, mirror left hand, and map controller inputs to open, grab, release, and teleport animations for spatial simulator.
Learn to animate custom VR hands in Unity by consolidating action inputs from Oculus, Vive, Xbox, keyboard, and mouse into a common intermediary object to drive grab and release animations.
Learn to configure bidirectional grab in Unity VR without coding by wiring left and right interactor grab actions to intermediary hand objects, and enable velocity tracking for realistic throws.
Experience real interactions in Unity VR by setting up intractable objects. Build on the white cube demo to learn picking up objects, orientation handles, and second reactions.
Set up an interactable cube that you can grab with either hand, featuring primary and secondary grab actions and testable behavior in the space shuttle simulator.
Configure customized pickup orientation handles for interactable objects in a Unity VR setup, compare follow transform versus follow rigid body, and test left and right hand grab alignment.
Explore vr movement concepts, focusing on teleportation to reduce motion sickness, and examine Arctic's movement modes—from instantly teleport and dash to teleport targets, smooth and snap rotation, and arm swinging.
Implement instant and dash teleportation in Unity vr using a bezier pointer, with green valid targets and red invalid cues, and map controllers to trigger via display 3.0 teleport player.
Configure teleporter to work with the covid pointer, moving the play area to the target location with offset and rotation, and implement instant and dash teleportation driven by left-stick input.
Learn to set up teleport targets in Unity VR using teleport target point and area prefabs, configure spatial target dispatchers and events, and test restricted teleportation for large-scale navigation.
Learn to implement slide movements and rotations in Unity VR using thumb-stick axes and locomotor prefabs, including vertical/horizontal slide, smooth rotate, snap rotate, and warp snap rotate, with input actions.
Set up a pseudo body in Unity to prevent passing through objects by mapping headset movement to a following body with colliders and ignored game objects, rolling back on divergence.
Deactivate capsule colliders on each Oculus hand and adjust grab volumes to enable distance grab, then display a pulsating reticle when pointing to objects and add a toggle action.
Set up a vertical distance grabber in Unity VR by creating an empty child object and linking the distance grab prefab to a hand interactor, then test with play mode.
Set up telekinesis movement and a straight pointer to enable grabbing distant objects, adjust transition duration to 0.5 seconds, and enable visibility when the pointer activates.
Compare traditional heads-up displays with in-world UI, and learn to create 3D UI using a worldspace canvas and interactive 3D buttons controlled by a pointer.
Set up a straight spatial pointer for VR, configure inputs from Oculus, Vive, Xbox, and keyboard M, and activate it via a special pointer activator with a boolean action.
Set up a 3d spatial clickable button linked to a spatial targets dispatcher to dispatch events for buttons and teleport targets, and test with keyboard and VR controllers.
Set up a spatial button group in Unity VR to ensure the special point interacts only with three DUI buttons, via a spatial target processor and dispatcher workflow.
Explore how spatial buttons in Unity VR customize appearance using enabled and disabled style settings across inactive, hover, and active states, adjusting button text, font size, color, and mesh.
Set up the option buttons group within the special button group in Unity VR, connect it to the special target despatcher, and ensure only one option activates at a time.
Set up a slider in Unity VR using a linear transform drive, build a knob and bar, and show a visual tooltip with values 0–10 and step 1.
Learn an undocumented hack to have a straight pointer interact with the slider knob by using a UI layer rule, an interactor at the pointer end, and a toggle activation.
Learn to interact with three DUI spatial buttons using your hands for direct, pointer-free VR UI, set up each button's properties and interactor slots, and test with the VR headset.
Import and set up Unity's 2D UI elements for VR using VRTK, deploy a world-space canvas, then configure pointers and the event system to enable interaction.
Learn to create snap zones that snap and insert interactive objects using an interaction snap zone prefab, and build tool holders that display tool names with tool tips.
Import the tool holder UI as a Unity package, place the tool holder prefab in the environment, and prepare axe and hammer with proper tags and colliders to become interactable.
Convert the axe and hammer into interactive objects in Unity VR development using the interaction menu, then configure primary and secondary grab actions and test grabbing.
Set up snap zones in Unity with slapdown package, adjust mesh to a sphere, tune highlights and collision areas, enable smooth snapping via transition duration, and playtest in virtual reality.
Set up holsters that move with the player using the mutator follow prefab, enabling left and right holsters to carry tools, adjust offset, and follow the play area alias.
Explore angular and linear drive prefabs from Artic, creating a steering wheel, door, lever, and button; compare physics and non-physics controls and learn when to minimize joints for multiplayer VR.
Create a VR steering wheel in Unity using an angular transform drive that rotates around the y-axis with a -180 to 180 degree limit, then align the wheels accordingly.
Set up a VR push button that presses on touch and springs back on release using a linear transform drive and events.
Welcome to Udemy's first, No Coding Required, VR development course, using VRTK 4. Build once and deploy to both Oculus and Steam VR devices.
This course, teaches you everything you need to know to build your very own VR apps and games using the world class Unity Engine.
I am an Emeritus certified iDTech instructor and also the author of the book 'Unity® Virtual Reality Development with VRTK4: A No-Coding Approach to Developing Immersive VR Experiences, Games, & Apps' published by Apress and available World wide on the Amazon and Springer stores.
The entire completed advanced VR Framework, is available for download, within Section 13 of the course, once you enrol.
Unity is the top rated game engine, when it comes to developing VR apps and games. VRTK on the other hand is a battle-tested VR solution for Unity. Several block buster games have been made using Unity and VRTK 3.x.
VRTK 4 in conjunction with Unity, has changed the dynamics of VR development. No other game engine comes even close, to providing you with such advanced functionality for VR development, as does VRTK 4 with Unity.
From a toolkit standpoint, there are several free, as well as paid toolkits out there, for VR development, including Unity's very own XR interaction toolkit. However, none of these toolkits, provide you with the advanced functionality that VRTK 4 provides, out of the box. There is currently no toolkit out there, that would allow you to create such advanced VR mechanics, without the need to write a single line of code.
The 2 most prominent VR Toolkits on the Unity Asset Store cost approximately $60 and you don't get the Arm swinging mechanic, different gliding locomotion styles, a rotatable teleport arrow head pointer, a 3D spatial hand interactable UI, a spatial simulator that works with a X Box Controller and a no coding approach.
For one of these toolkits, for the climbing mechanic alone, you have to shell out an extra $60, resulting in a whopping amount of $120, for a VR toolkit. Over and above this, the learning curve is not easy, as tutorials do not exist or are scarce, and the manuals are poorly written, calling on you to rely on forums and community members, to help you out.
Try to rebuild the mini game in this course, without writing a single line of code, using any other VR framework or toolkit currently available on the Asset store, even Unity's very own XR Interaction toolkit. It wont be possible.
In this course, you will not be called upon to launch Visual Studio, even once. No programming skills are required!
There's a popular English saying, "Give a person a fish and you feed him/her for a day. Teach a person to fish and you feed him/her for a lifetime." In this course I give you the lifetime lesson.
Using Unity and VRTK 4, you will build a complete framework from scratch, that can be used as the foundation, for building any VR game or experience. Towards the end of this course, you will utilize the framework you have built, to create your very own mini game.
This course makes understanding VRTK 4, super easy, and the framework you develop, will be one massive cohesive, lean, mean machine.
At the end of this course, you will have an advanced VR framework, that you could even publish!
You can even, enhance the mini game further, using the ideas provided within this course, and publish your game to both Oculus, and Steam.
This course is aimed at beginner to intermediate Unity users who need to know their way about the Unity editor, for basic scene editing. A basic knowledge on how Unity Prefabs function and a basic understanding of how events work in general, would be helpful. You don't need to know how to write any event code.
This course will take you through everything, step by step and give you plenty of practice.
You will need to have access to a 6 DOF (degrees of freedom) headset for Steam VR, or Oculus only. This course cannot be taken using a 3 DOF headset, as you need to be able to move around within your world.
You could use a Steam VR headset like the HTC Vive, or an Oculus Rift, or an Oculus Quest (both 1 and 2 will work fine), which are some of the more popular, 6 DOF headsets available, and the ones this course has been tested against.
If using the Oculus Quest, it would be advisable to have a link cable, as deploying a build to the headset, each time you test is not very practical, and would be time consuming.
Please use Udemy's Q & A, for any explanations you seek from my end, related to this course.
This course will continue to be updated, as VRTK evolves.
Become a VR pioneer now, and create the future!
- Chris Coutinho