Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Interactable Objects (e.g. Pickups) #105

Closed
wants to merge 14 commits into from

Conversation

mriise
Copy link

@mriise mriise commented Jan 12, 2025

supersedes #73

Adds:

  • Layer Interactable
  • class PlayerInteract
    • Line Renderer
    • Sphere Collider
    • Raycast
  • abstract class InteractableObject
  • class PickupInteractableObject
    • collider approximation highlight on hover
    • Parent constraint movement
  • Example Prefabs
    • Personal Mirror
    • ExampleButton (+example script)
    • Pickup (just a cube)

TODO:

  • input triggered abstract into target object & override on equip
  • retained list of Unique Interactables (instead of for looping so much)
  • multi-target equip (hold multiple items at once)
  • Configurable Joint Pickup
  • Throwing

Does NOT add:

  • network sync of objects
  • multi-point grabbing
  • IK re-targeting
  • outline RenderFeature
    all of which would be cool- but later.

WIP do not merge.

itsKatVR and others added 12 commits January 12, 2025 10:52
- cast rays from device transform
- line renderer for highlighting
- keep track of per-device targets
- partial class of Interactable object for Implementing scripts to define how they want to be interacted with
- Util function in BasisInput IsDesktopCenterEye
- Keep a list of InputDevices and their target object (hovered or held)
- Line Renderer for pickup hits
- use on inputChanged instead of looping through list
- draw gizmos
- add seperate child object for interact components
- WIP child mesh of interact collider
- Squiggle highlight line shader (WIP)
- Different Capsule Mesh gen
- Rename main classes for better clarity on use
- Examples (Personal Mirror, Interact Button)
- Use TryGetComponent where possible (sorry dooly)
- Use Collider's nearest point for range check, fall back to object transform when no collider
- Re-Wip PickupJoint
- Wip UniqueCounterList for retaining a list of active Interactable Objects
- Interactable Collision layer! yey...
- Temp home in assets folder
@dooly123 dooly123 deleted the branch BasisVR:doolys-branch January 15, 2025 14:49
@dooly123 dooly123 closed this Jan 15, 2025
@mriise mriise mentioned this pull request Jan 24, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants