- Home /
iphone touch, only working in one scene
I have the following script:
function Update () {
for (var t = 0; t < Input.touchCount; ++t) {
if (Input.GetTouch(t).phase == TouchPhase.Stationary) {
var ray1 : Ray = Camera.main.ScreenPointToRay (Input.GetTouch(t).position);
var hit1 : RaycastHit;
if (Physics.Raycast (ray1,hit1)) {
if(hit1.collider.gameObject.tag == "Untagged"){
Debug.Log("done");
}
}
}
}
}
in two scene's one scene it works fine, i tap on any object with the tag 'Untagged' and it Logs it 'done' as i want, but in another scene, same project, same script, when i tap an object tagged with 'Untagged, same as the other scene, it comes up with 'NullReferanceException' every time of the line
var ray1 : Ray = Camera.main.ScreenPointToRay (Input.GetTouch(t).position);
i've put the script on different objects and everything, not that i can see that making a difference... doesn't work! as you might think... this is really annoying me! What's new with scripting?!
look forward to getting this sorted! thanks in advance for your help.
Answer by idunlop_oefun · Jan 05, 2014 at 11:13 PM
I'm guessing Camera.main is the object returning null?
If so, check the unity docs on Camera.main:
The first enabled camera tagged "MainCamera" (Read Only). Returns null if there is no such camera in the scene.
Are you missing the tag on the 2nd scene?
i do have it set to $$anonymous$$ainCamera but had forgotten that i had another script changing the tag when entering the vehicle, thanks for making me realise that! feel a bit stupid now!
Your answer
Follow this Question
Related Questions
unity touch is not working properly 1 Answer
Raycast Hit not working 0 Answers
Finding a RaycastHit tag (Null Reference Exception) 2 Answers
Instantiate, null reference and Raycasting problem. 2D 1 Answer
Multiple hit detection with Raycasting? 2 Answers