Skip to content

CollisionTracker collisionValidity is this behaviour intended? #2046

@fight4dream

Description

@fight4dream

Environment

  • Source of VRTK (GitHub).
  • Version of VRTK (GitHub master 9e7ea2c).
  • Version of the Unity software (e.g. Unity 2019.2.0f1).
  • Hardware used (Vive).
  • SDK used (OpenVR).

Steps to reproduce

  1. Open Example Scene
  2. Search for RightInteractor, there is a CollisionTracker component
  3. the collision tracker has a ForwardingSourceValidity rule CollisionValidity
  4. look into CollisionValidity. it basically says: the game object should Not contain IgnoreInteractorCollisionTag
  5. Search for WellBase. It has IgnoreInteractorCollisionTag.
  6. Use visual studio debug mode attach to unity, and put break point in CollisionNotifier.CanEmit()
  7. Use right hand to touch WellBase. Find out that the ForwardSource game object is the RightInteractor and the rule accepted (returns true) because right hand has no IgnoreInteractorCollisionTag.
    image

Expected behavior

I expect the intention of the set up is to check whether the 'target' can be touched (emit collision event) rather than always check on the 'source'.

Current behavior

The source checking has very limited use.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions