Pickable object is freezing while holding

Godot Version

4.3

Question

I was following this guide, tried to recreate a pickable bottle with my model and Godot XR Tools. When I’m holding the bottle, i can’t move the hand and it stays frozen with the bottle, while i can move around. I copied the collision of the bottle to the Pickable Object collision, also added Grab Points. Not sure what’s causing the freeze.

Pickable Bottle Scene


Player Scene

same problem, if i find a solution i will tell you my guy

This is hard to say without having a copy of the project to play with but I think this has to do with how you’re using the asset itself.

Two possibilities spring to mind.

  1. In XR Tools for pickable objects, you need to inherit the pickable.tscn scene and add your bits to the scene. It’s not enough to assign the pickable.gd script to an scene. This is one weakness in Godot where we can’t alter defaults properties of the node type we’re inheriting so the pickable scene sets up a bunch of things required for things to work correctly.
    It’s not impossible to use the pickable script directly on an imported asset that you’ve setup as a rigidbody, but you then need to be careful to manually set all the correct physics layers etcetera by copying them over from the pickable scene.

  2. If you are inheriting from pickable.tscn and the asset is a child in this scene, a clue may be in your screenshot of your import settings. Here it shows you’re importing it as a static physics object. This would result in a static collider on top of the rigidbody and they may be interfering with each other. Though seeing how the bottle behaves correctly when you let it go, I doubt this is the issue.

All in all, I haven’t seen this behaviour myself so I could be completely wrong with either suggestions. If you can create a simple example project that you are willing to share, I’d love to take a look at it for you.

1 Like