OnMouse* not working, IPointer* not working - Unity 6 - troubleshooting

This is probably something I did but I can’t for the life of me figure out what.

I can’t get any of the input functions to work on Unity 6. I have created a very simple scene (camera and one cube) with a very simple test script (just the OnMouse* methods) and nothing. The methods just have Debug.Log statements, but my console remains entirely empty. They are never triggered, no matter what I do.

I’ve tried changing the collider to trigger and back. I have added and removed the event system. I have added and removed a physicsraycaster to the camera. I think I’ve tried everything that can possibly be tried in any combination and there’s just absolutely nothing.

What could cause this weird behaviour and how can I troubleshoot it? I’m out of ideas. (and no, it’s not something stupid like having messages disabled in the console. I double-checked.)

Input in general works. I can click buttons, for example, and UI elements react to the mouse, and in another test scene, a movement script listening to input (Rewired in my case, not Unity’s built-in system) works.

This also seems to be project-specific. A different project

The differences between these two projects are: The old project was started before Unity 6 and recently converted (which worked surprisingly smooth, cool!) and the old project uses the built-in RP while the new one is URP.

Hi @Tom163,
Probably you checked this too, but just to make sure: did you set the active input handler in the Project settings to the (old) InputManager or Both? The InputSystem does not support the OnMouse functions.
That is the only thing I can think of now that changed towards U6 that could cause this (where the InputSystem is the default input handling system).

Yes, I checked that it’s still set to Both (I think that’s the Unity 6 default).

I see. Could you please submit a bug via the Editor Help->Submit bug? It would be very handy to have your (simplified) project attached to it to reproduce the issue.

No need. I found the problem.

I don’t know why, but the Physics setting was set to “none” instead of “PhysX”, so essentially all Physics were turned off (I think). Since my games uses no Physics, I didn’t notice. But obviously, Physics.Raycast requires Physics to be on.

Interestingly, the NavMeshAgents don’t seem to care about Physics, because they were colliding/blocking each other just fine.

Awesome. Which template did you use to create the project? It would be beneficial to track this down to avoid confusions in future.

The standard 3D URP template.

1 Like