I’m trying to translate a prefab to the point where mouse intersects a collider.
First, i get the coordinates the direction vector by ;
Ray mouseRay = Camera.main.ScreenPointToRay(Input.mousePosition); RaycastHit mouseHit; Physics.Raycast(mouseRay, out mouseHit); float endXPoint = mouseHit.point.x; float endYPoint = mouseHit.point.y; float endZPoint = mouseHit.point.z; returnVector = new Vector3(endXPoint, endYPoint, endZPoint);
i try to translate it by
transform.Translate(positionToFly*speedKoef); //here positionToFly is the vector that has been calculated before.
I have 2 different origin points which activates these prefabs at the same time ( like dual guns ).
Now, when i start instantiate these prefabs, they arrive at different points!.
It’s like they have some sort of offset.
I think, the line
is causing the problem. Since this is not a FPS game, the camera sits at a different position than guns,so the ray which was drawn calculates a wrong direction ( with some sort of offset ) .
If this is the problem ,how can i solve this? How can i get mouspoint to ray without using Camera.main stuff?
If this is not the problem, how can i solve :p.
Thanks for the assistance.