[RELEASED] VR Interaction Framework

Oh sweet Ya get the ragdoll stuff done first please. Anything ragdolls is always so cool. Slow motion and ragdolls. I’ll purchase the system today and start messing with it on the quest. Thx.

Ok, thats fine. I’ll continue using in this way.

I see. On Oculus home, even have two pointers, but only one works at time (when clicks any button in that controller)

Thats would be great!

By the way, how to add exclude zones to teleporter? I dont want move the player to the top of table or below of it.
Thanks for your support.

You have a couple of options. One would be to create a new Layer and call it something like “ExcludeTeleport”. Then you can just make sure that layer isn’t selected under “Valid Layers” in the “PlayerTeleport” component. If you don’t want to use Layers, there is also an “InvalidTeleportArea” component you can add to any gameobject / collider that you don’t want to be able to teleport on.

How do melee weapons work in terms of inflicting damage and setting them up to use in game on quest?

There is a component called a “Damage Collider” that you can attach to any collider that has a Rigidbody. Here you can specify how much damage to apply on contact, as well as the minimum amount of force required to apply damage. So with the breakable example shown, you can touch them with the hammer, but you’ll need to apply a bit of force to actually break them.

It’s pretty basic, but you can customize it or write your own script to work with the damage system. The only thing I’d really like to add on is the ability to check swing distance, in order to prevent “wiggly weapons”. That would encourage wider swings as opposed to fast wrist motions.

1 Like

Hi, any plans to add 0 gravity movements?

The handjets currently use zero gravity to fly around. There isn’t any momentum when you stop, though. Is there anything in particular you have in mind?

something like this, but without handjets

1 Like

No plans for anything quite like that at the moment. That does look interesting, though. I’ll have to give Lone Echo a try and see how that movement mechanic feels in person.

1 Like

Version 1.2 has been submitted and should be available to download within the next few days!

This update includes :

1. Custom Hand Pose Support - Grabbables now have a drop down field “Custom Hand Pose” where you can choose a pose to be used when holding the object. Hand Poses can be created using the Unity Animation Window, but really any animation will work.

If you are using a custom hand asset that has it’s own animations, you can specify which “Pose” id to set the current Hand Animator to. Since this uses the Animator component you can easily blend between different animations as well. Try picking up the Ping Pong ball in the demo, or the Grapple Gun to see a new pose I created. I plan on creating a short Youtube video on how to create your own Hand Poses, but generally speaking this uses the same setup Oculus uses, so if you’re familiar with that process you should be good to go.


2. Hands / Fingers now animate instead of instantly rotating into position. You can customize the speed by changing the “Hand Animation Speed” property in HandController.cs

3. UI Tooltips - New prefab with customizable offset and view distance.

4. Added Grabbable Ragdoll Example. The demo scene now contains a ragdoll example that allows you to grab it’s appendages and move it around. I’ve also included an example script that allows you to pull off joints / limbs… Try pulling on the head a bit… you monster! :stuck_out_tongue:

5. Collision sounds now scale based on velocity. This feels much more immersive - try throwing / bouncing the ball around and notice how the volume changes based on distance and velocity of impact.

6. Added Drawer example with open / close sounds. The demo now has a drawer you can slide open with a couple of random objects inside.

7. Grabbables can now be individually excluded from Snap Zones via new “Can Be Snapped to Snap Zone” property. Use this if you know you’ll never want to be able to snap this object. For example, the ragdoll consists of multiple grabbable objects, but you probably wouldn’t ever want to snap them to any zones.

  1. Increased Text Quality / resolution in Demo Scene. I simply upped the “Dynamic Pixels Per Unit” property on the Canvas Scaler, but the text looks much sharper now.

Fixes / Improvements :

  1. Fixed Crash to Desktop issue with Hand Tracking when using Oculus Link / Rift. This fix is really just a bandaid that disable hand tracking in the editor (can be disabled on the component) until Oculus releases a fix.
  2. Fixed issue with swapping hands functionality.
  3. Only enabling hand collision slightly after dropping an item. This prevents the finger colliders from colliding with an object you just threw.

I will be updating the online documentation and creating a tutorial video for the Hand Poses over the next couple of days, so stay tuned!

7 Likes

Amazing Update! Solid work, although I added my own drawer interaction, I wanna ask does yours have physics interaction like when you apply force of pulling it towards you the objects inside the drawer move around?

Great! I was trying make a drawer by myself, but i faced a bug. When i trying open the drawer in front of me, I jump into the drawer. You update came at a good time.

Weeellll… Maybe I spoke too soon. The momentum seems to be working fine - try adding a Physics Material that has friction to your colliders to make the objects move along with the drawer. I also made the bottom collider of the drawer a little thicker to make sure items don’t fall through.

Unfortunately I’m seeing some weird issues on the Quest now, so I’ve disabled the drawer in the demo for now. It’s still there in the scene, but the GameObject is disabled. If I pull up on the drawer handle, the items inside appear to have a force added to them, even though they aren’t parented to the drawer. It’s quite odd, and only happens on the Quest - Rift and S behave differently.

https://www.youtube.com/watch?v=ImaaVqSJxAY

@joz_nascimento to fix this, put the drawer on the “Grabbable” Layer, and make sure the Player and Grabbable Layers have collision disabled (Project Settings → Physics → Layer Collision Matrix). You generally don’t want Grabbables to collide with the Player’s Capsule Collider.

Greetings,
We have a problem with the teleportation system.
When the player teleports there’s a very annoying bounce effect. The camera goes up and down slightly and the experience becomes uncomfortable. The error is also in the demo scene and I can’t find the solution.

I hope you can help me correct the problem, thank you.

I had similar issues before as you mentioned but with creating a custom joint helper script for the drawer I actually got it to work :slight_smile:

Worked fine. Thanks.

Hi, nice Framework, possible to have “grab and move” (not climbing) functionality ?

Unfortunately no plans for that movement type at the moment.

Ah, I see what you mean. I have a fix in place now and will get a new version submitted. Send me an email if you need a patch sooner.

Awesome update! Thank you.

1 Like