- Home /
Managing a Raycast so that it only interacts with one object when two objects are in a similar position
Hi everyone so Right now I am working on a project where we can move two objects around a scene by tapping the screen, triggering a raycast, and having them follow the finger presses position .
Everything works well except when I try to drag one object behind or in front of the other and then try to move them into the same position .
once my finger and therefore the raycast moves over the second object as I move the first, the second object "freaks out" as if it's responding to the touch for a short moment and kind of jumps away ......
my question is are there any methods I can use to make sure that my raycast doesn't hit both objects? I still need the user to be able to move each object individually , i just don't want the same individual touch to affect both objects .
Thanks so much !
Short answer: Use layers
Long answer: Use layers, and be careful you know what you're doing with them. You can set box_1 to one layer and box_2 to another layer, and while dragging around one box, exclude the other box's layer from your raycast
Can we see your code? Layers (as suggested by other posts) are an option, but I'll bet there are other solutions.
Answer by Java666 · May 08, 2014 at 09:17 PM
well i fixed something like that using if statements and bool's so that if it hits first to do that not other and seemed to work sort of ok jus have to get the logic for how you wish it to work out down took awhile for my stuff to work way i wished
Answer by Jeff-Kesselman · May 08, 2014 at 09:12 PM
As others have said, you can use layers to control what a ray hits...
BUT I think you may have a more fundamental problem. It sounds like you are casting the ray continuously as you drag.
Don't.
Instead, cast the ray when the touch starts and find the object. Then just move that object during the drag. That will allow you to move it anywhere after acquiring it, regardless of what is in the way.
It can also be a bit more efficient.
Your answer
![](https://koobas.hobune.stream/wayback/20220613144552im_/https://answers.unity.com/themes/thub/images/avi.jpg)
Follow this Question
Related Questions
Ignore Touch 2 Answers
When I touch one object all others react 0 Answers
Android touch 3d Object event 1 Answer
Make object block a raycast 1 Answer
Touch interface not working 1 Answer