NEW HVR 2.9.1f

This commit is contained in:
2023-03-25 03:17:58 +03:00
parent f0bf64ed45
commit 91acc4d728
243 changed files with 16657 additions and 11137 deletions
@@ -1,82 +1,71 @@
2.8.4
2.9.1f
Fixed an issue with the version update check logic that was refreshing the asset database after compiles.
Fixed HVRStringSocketFilter / HVRStringSocketable filtering pair.
Fixed shoulder socket not working when moving forward.
Distance Grab Updates:
Force Pull logic re-worked using kinematics that takes into account mass, gravity, and hand velocity.
Force Pull Settings updated with Max Acceleration Force, Max Speed, Damping speed parameters to control behaviour.
2.9.1e
New:
HVRGrabbable: new overridable function CanHandGrab for grab filtering.
HVRHandGrabFilter - abstract base class for modular hand grab filtering
HVRGrabHandFilter - new component for hvrgrabbable to limit which hand can grab
Example scene updated for grab hand filter
2.9.1d
Fix Oculus and WMR menu button bindings for OpenXR
Fix HVRCockingHandle to handle initial grab offset better
2.9.1c - Fixed two hand strength overrides not resetting on release.
2.9.1b - Small bug fix in new editor script.
2.91
Fixed bug where the grab joint might end up on the wrong game object if the grabbable was a child of the rigidbody.
Fixed player controller to take into account the angle of the surface the player is standing on.
Fixed bug where child grabbables could be grabbed if their MasterGrabbable was socketed.
Added backpack rigs to hexabody integration.
Hand Strength Updates:
JointSettings on the hand and grabbable components are now deprecated, they will continue to work but will be removed in a future update.
PDStrength scriptable object is the replacement containing only the fields that are pertinent to the PD Controlled hands.
Fields that reference an existing PDStrength asset will display the editor in place for quick editing.
The following fields are added to replace the old ones:
HVRJointHand.Strength
HVRHexaBodyHands.Strength|OneHandedClimbStrength|TwoHandedClimbStrength
HVRGrabbable.OneHandStrength|TwoHandStrength
Included rig and hand prefabs are updated.
Teleporter: Momentum is now maintained for the hands and held objects when teleporting.
Physics hands now account for teleporter jumping large distances.
HVRSocketLink:
Permanently links a grabbable to a socket with optional return time lerping.
Replaces the now deprecated grabbable fields StartingSocket/LinkStartingSocket.
Filter setup is not required as the socket will only accept the linked object.
Example scene updated with socket example. Backpack on rig prefab updated.
Hand Grab "Pull" sequence is improved and should be smoother, especially after a distance grab is executed.
HVRSocket: all rb properties restored when RemoveRigidbody mode is used.
HVRPlayerInputs: ForceGrabber activated options updated with GripAndTrigger, Trigger, GripOrTrigger.
HVRHandImpactHaptics: MaxForce used in haptic amplitude calculation will default to the hand's max force value.
HVRGunBase: added hit collider, rigidbody, and distance to the arguments passed to the Hit event.
HVRStringSocketFilter and HVRStringSocketable updated to hash it's string value for performance.
HVRPlayerController:
- Added GroundedRadiusFactor which will multiply with the player capsules radius for the grounded sphere cast check.
- Horizontal ground movement will take into consideration the angle of the ground the player is on.
2.9
HVRGrabbable : Added 'BreakDistanceSource' [NoDistanceCheck, Hand, Controller] to control the distance check against the object, or to prevent dropping from distance altogether.
Fixed grab indicators showing up even if they were marked disabled on the HVRGrabbable.
Fixed issue where CockingHandle would not lock forward if the controller was too far forward of the grab point.
2.8.3.1
OpenXR - added package check and update helper if 1.3 and higher version isn't detected.
VRIK Setup - fix IK solve at setup end when avatar spine isn't using normal forward / right vectors.
Adjust force grab default max force (was too strong for hexabody)
2.8.3
Fixed GC alloc in the socket detection
HVRControllerOffset will smoothly move / rotate to the grab points offset value instead of immediately snapping.
Tweaked force grabber to bring the object closer to the hand before the hand takes over.
Updated Hand Setup Wizard instructions to be more clear.
2.8.2
HurricaneVR extra dll's have been collapsed into a single final dll 'HurricaneVR.Framework'
Fix HVRStabber when the tip / base transforms aren't directly a child of the stabber
Fix HVRTeleporter capsule overlap check math that was failing at small capsule sizes.
Fix grabbing when the hand was set to toggle grab mode but the grabbable was set to Active mode.
Improved post teleport hand / held object positioning if the user rotated the player to a new direction.
HVRSocket - scale grabbable defaulted to false
Added basic EmeraldAI (v3) integration scene
HVRSettings - new DisableHaptics toggle
HVRPhysicsDial - fixed anchor to start at 0,0,0
2.8
Fixed socket container grabber (example scene chest uses this)
Fixed impact component when rigidbody is missing
Fixed socket hover scale not completely hitting it's target scale size.
Fixed post teleport grabbable dropping due to the break distance check triggering
Fixed hand rotation post manual teleport
Fixed hand animator bug where finger curls were not properly applied to secondary poses.
Fixed hand animator to respect individual blend pose speeds.
Fixed gravity gloves adding Y force after a auto catch.
Fixed bug in custom hand setup wizard if hand didn't have tip transforms already.
Greatly improved post teleport collision handling
Improved post collision sweep after hand max distance reached
HandPoser blends with Speed of 0 will immediately lerp and not use smoothing to the target pose.
Demo SMG and Pistol trigger poses updated with speed of 0.
Suggested default MaxAngularSpeed reduced to 30.
HVRStabber Optimized GC allocation by caching stabbable colliders on start for reuse
HVRHandGrabber
Pusher [Box Collider] & PushoutTime [float] : optional box collider (generated automatically if not supplied) that will grow from zero to max size over PushoutTime.
Used when Hand goes to retrieve an object to ensure the hand doesn't get stuck in collision geometry.
Used after overlap clearance with a dropped object times out and is still overlapping to push the stuck object out of the hand.
Used after release if collisions were disabled on the hand while holding an object.
Users can start the push sequence by calling StartPushing if desired.
Pull Sequence Changes:
If pulling a grabbed object to the hand times out while trying to orient to the pose position, the hand will go retrieve
the object if the remaining angle difference is greater than "Move Threshold". This should help prevent objects getting stuck
when the fixed joint is created with the hand.
HVRGrabbable:
OverrideMaxDistanceBehaviour & MaxDistanceBehaviour to override what happens after the hand gets to far from the controller.
LinkedGrabbables: additional grabbables that might be on the same rigidbody to consider it a two hand grab.
InstantHandPose: If true, the removed object will instantly be orienated based on it's pose. Large sockets in demo scene enabled.
GrabBehaviour: override the Hand's "Pull or Hand Grab's" behaviour. (Default, PullToHand, HandRetrieves)
FinalJointMaxAngle defaulted to 15.
FinalJointTimeout defaulted to .25 seconds.
HVRSocket
DisableCollision: If false socketed objects maintain their collision, used only for static or kinematic rb sockets.
InstantHandPose: If true, the removed object will instantly be orienated based on it's pose. Large sockets in demo scene enabled.
Added HVRPoseZone: Uses a provided HVRHandPoser to pose the hand when the hand enters the overlap zone.
Demo KeyPad updated with a pose zone example.
HVRSocket: New 'PoseTag' field which links with HVRSocketable Poses field for saving orientation when socketed.
HVRSocketable: New Poses field with inspector interface to help save orientations for different socket types.
HVRGunBase: Added Hit event which passes the gun, hitpoint, normal, and direction variables.
HVRHandAnimator: Added 'HandOverride' transform field, allows HVRPosableHand component to be on a different component. VRIK IK targets is one example.
Bow: Fixed hand collision being re-enabled to early with the arrow.
Hand Prefabs: Added trigger collider with HVRHandTrigger component for easy hand detection by other components (HVRPoseZone).
Example Shotgun: modified two hand hold strengths to prevent forehand from moving the shotgun backward to easily.
@@ -18,6 +18,9 @@ MonoBehaviour:
WMR:
Position: {x: 0, y: 0, z: 0}
Rotation: {x: 40, y: 0, z: 0}
Pico:
Position: {x: 0.01, y: 0.01, z: 0.01}
Rotation: {x: 10, y: 0, z: 0}
OculusSteamVR:
Position: {x: -0.001, y: -0.005, z: -0.05}
Rotation: {x: 40, y: 0, z: 0}
@@ -0,0 +1,21 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 595f9e32dd154ba28dcd9b9fb86e85eb, type: 3}
m_Name: HVR_DefaultHandStrength
m_EditorClassIdentifier:
Mode: 0
Spring: 3000
Damper: 300
MaxForce: 300
TorqueSpring: 500
TorqueDamper: 50
MaxTorque: 75
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 1482e8b1adffac04e8efc4fbd58275a6
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,21 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 595f9e32dd154ba28dcd9b9fb86e85eb, type: 3}
m_Name: HVR_LargeWeapon_TwoHanded_Strength
m_EditorClassIdentifier:
Mode: 0
Spring: 3000
Damper: 300
MaxForce: 300
TorqueSpring: 200
TorqueDamper: 10
MaxTorque: 50
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: b12c3f7f37233934f96dd9eaf0878672
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,21 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 595f9e32dd154ba28dcd9b9fb86e85eb, type: 3}
m_Name: HVR_Pistol_Stabilizer_TwoHanded_Strength
m_EditorClassIdentifier:
Mode: 0
Spring: 0
Damper: 0
MaxForce: 0
TorqueSpring: 0
TorqueDamper: 0
MaxTorque: 0
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: d743713d642f47b47b16425271dc9e35
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,87 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e581938f8c0341839ae0a0294479b8d3, type: 3}
m_Name: HVR_ShotgunPump_TwoHanded
m_EditorClassIdentifier:
XMaster: 1
XDrive:
Spring: 1000
Damper: 100
MaxForce: 100
SlerpDrive:
Spring: 0
Damper: 0
MaxForce: 0
ApplyMode: 0
EnableCollision: 0
EnablePreprocessing: 1
BreakForce: Infinity
BreakTorque: Infinity
MassScale: 1
ConnectedMassScale: 1
ProjectionMode: 0
ProjectionDistance: 0.1
ProjectionAngle: 180
CriticalDampPosition: 0
DampConnectedBody: 0
RotationDriveMode: 1
YDrive:
Spring: 0
Damper: 0
MaxForce: 0
ZDrive:
Spring: 0
Damper: 0
MaxForce: 0
AngularXDrive:
Spring: 0
Damper: 0
MaxForce: 0
AngularYZDrive:
Spring: 0
Damper: 0
MaxForce: 0
LinearLimit:
Limit: 0
Bounciness: 0
ContactDistance: 0
LinearLimitSpring:
Spring: 0
Damper: 0
XMotion: 2
YMotion: 2
ZMotion: 2
AngularXMotion: 2
AngularYMotion: 2
AngularZMotion: 2
LowAngularXLimit:
Limit: 0
Bounciness: 0
ContactDistance: 0
HighAngularXLimit:
Limit: 0
Bounciness: 0
ContactDistance: 0
AngularXLimitSpring:
Spring: 0
Damper: 0
AngularYLimit:
Limit: 0
Bounciness: 0
ContactDistance: 0
AngularZLimit:
Limit: 0
Bounciness: 0
ContactDistance: 0
AngularYZLimitSpring:
Spring: 0
Damper: 0
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: f4fc40462bb4bb041b5964be99f85368
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,21 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 595f9e32dd154ba28dcd9b9fb86e85eb, type: 3}
m_Name: HVR_ShotgunPump_TwoHanded_Strength
m_EditorClassIdentifier:
Mode: 0
Spring: 1000
Damper: 100
MaxForce: 100
TorqueSpring: 0
TorqueDamper: 0
MaxTorque: 0
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: e0cd6b1a451e3854ba6e54d82005a0e2
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,87 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e581938f8c0341839ae0a0294479b8d3, type: 3}
m_Name: HVR_Shotgun_TwoHanded
m_EditorClassIdentifier:
XMaster: 1
XDrive:
Spring: 3000
Damper: 300
MaxForce: 300
SlerpDrive:
Spring: 100
Damper: 10
MaxForce: 25
ApplyMode: 2
EnableCollision: 0
EnablePreprocessing: 0
BreakForce: Infinity
BreakTorque: Infinity
MassScale: 1
ConnectedMassScale: 1
ProjectionMode: 0
ProjectionDistance: 0.1
ProjectionAngle: 180
CriticalDampPosition: 0
DampConnectedBody: 0
RotationDriveMode: 1
YDrive:
Spring: 0
Damper: 0
MaxForce: 0
ZDrive:
Spring: 0
Damper: 0
MaxForce: 0
AngularXDrive:
Spring: 0
Damper: 0
MaxForce: 0
AngularYZDrive:
Spring: 0
Damper: 0
MaxForce: 0
LinearLimit:
Limit: 0
Bounciness: 0
ContactDistance: 0
LinearLimitSpring:
Spring: 0
Damper: 0
XMotion: 2
YMotion: 2
ZMotion: 2
AngularXMotion: 2
AngularYMotion: 2
AngularZMotion: 2
LowAngularXLimit:
Limit: 0
Bounciness: 0
ContactDistance: 0
HighAngularXLimit:
Limit: 0
Bounciness: 0
ContactDistance: 0
AngularXLimitSpring:
Spring: 0
Damper: 0
AngularYLimit:
Limit: 0
Bounciness: 0
ContactDistance: 0
AngularZLimit:
Limit: 0
Bounciness: 0
ContactDistance: 0
AngularYZLimitSpring:
Spring: 0
Damper: 0
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 561dfd33fe0af7e408e6ac5f5e30a3f1
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,21 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 595f9e32dd154ba28dcd9b9fb86e85eb, type: 3}
m_Name: HVR_Shotgun_TwoHanded_Strength
m_EditorClassIdentifier:
Mode: 2
Spring: 3000
Damper: 300
MaxForce: 300
TorqueSpring: 100
TorqueDamper: 10
MaxTorque: 25
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 263b353c0100fed4cb7bd21bc56f0620
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,21 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 595f9e32dd154ba28dcd9b9fb86e85eb, type: 3}
m_Name: HVR_Stabilizer_TwoHanded_Strength
m_EditorClassIdentifier:
Mode: 2
Spring: 3000
Damper: 300
MaxForce: 750
TorqueSpring: 0
TorqueDamper: 0
MaxTorque: 0
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: bfff0207f648e9b4d9f1868798fb5efe
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -14,13 +14,13 @@ MonoBehaviour:
m_EditorClassIdentifier: HurricaneVR.Framework:HurricaneVR.Framework.Components:ImpactHaptics
Timeout: 0.3
SqrMagThreshold: 0.65
MaxForce: 700
MaxForce: 300
AmpCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0.45
value: 0.15
inSlope: 0
outSlope: 0
tangentMode: 0
@@ -27,9 +27,9 @@ MonoBehaviour:
MaxUpForce: 5
UseTwoHandMaxUpforce: 0
UseTwoHandMaxSideForce: 0
MaxBackForce: 200
TwoHandMaxUpForce: 100
MaxSideForce: 100
MaxBackForce: 2000
TwoHandMaxUpForce: 200
MaxSideForce: 200
TwoHandMaxSideForce: 0
RecoveryDelay: 0
TwoHandedRecoveryDelay: 0.15