Debug Poly Spatial Game Object Link do not create collider when i create 3d model at runtime

In my project, I use:

  • Unity-2022-3-LTS.20f1
  • Apple visionOS XR Plugin
  • PolySpatial 1.0.3
  • PolySpatial visionOS 1.0.3
  • PolySpatial, PolySpatial XR

I want to control transform in GameObject for movement and scaling with collider and EnhancedSpatialPointerSupport, EnhandedTouch.Touch.activeTouches

when i check my spatial ui button, there is Debug Poly Spatial Object Link component, and if i check Loinked To parameter, i can find PolySpatial iid ----- in DontDestroyOnLoad

There is Box Collider component, but when i check 3D Model GameObject Debug Poly Spatial GameObject Link loaded with trilib do not create collider

i think is why i cannot get touch data with EnhancedTouch.Touch.aciveTouches.

How can is fix it?

it is my test code for detect touch
i got no data in var activeTouches = Touch.activeTouches;

using UnityEngine;
using UnityEngine.InputSystem;
using UnityEngine.InputSystem.EnhancedTouch;
using UnityEngine.InputSystem.LowLevel;
using TouchPhase = UnityEngine.InputSystem.TouchPhase;
using Touch = UnityEngine.InputSystem.EnhancedTouch.Touch;
using Unity.PolySpatial.InputDevices;
using System.Linq;
public class SpatialUIInputManager : MonoBehaviour
{
    GameObject m_SelectedObject;
    void OnEnable()
    {
        EnhancedTouchSupport.Enable();
    }
    void Update()
    {
        var activeTouches = Touch.activeTouches;
        Touch.activeTouches.ToList().ForEach((t) => Debug.Log(t));
        if (activeTouches.Count > 0)
        {
            var primaryTouchData = EnhancedSpatialPointerSupport.GetPointerState(activeTouches[0]);
            var touchPhase = activeTouches[0].phase;
            Debug.Log(primaryTouchData);
            Debug.Log(touchPhase);
            if (touchPhase == TouchPhase.Began && primaryTouchData.Kind == SpatialPointerKind.IndirectPinch || primaryTouchData.Kind == SpatialPointerKind.DirectPinch)
            {
                var buttonObject = primaryTouchData.targetObject;
                if (buttonObject != null)
                {
                    if (buttonObject.TryGetComponent(out SpatialUI uiElement))
                    {
                        uiElement.PressStart();
                    }
                }
                // if the targetObject is not null, set it to the selected object
                m_SelectedObject = primaryTouchData.targetObject != null ? primaryTouchData.targetObject : null;
            }
            if (activeTouches[0].phase == TouchPhase.Moved)
            {
                if (m_SelectedObject != null)
                {
                    m_SelectedObject.transform.SetPositionAndRotation(primaryTouchData.interactionPosition, primaryTouchData.inputDeviceRotation);
                    m_SelectedObject.transform.rotation = new Quaternion(0, 0, 0, 0);
                }
            }
            if (touchPhase == TouchPhase.Ended || touchPhase == TouchPhase.Canceled)
            {
                var buttonObject = primaryTouchData.targetObject;
                if (buttonObject != null)
                {
                    if (buttonObject.TryGetComponent(out SpatialUI uiElement))
                    {
                        uiElement.PressEnd();
                    }
                }
                m_SelectedObject = null;
            }
        }
    }
}