• Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
  • Help Room /
avatar image
0
Question by Anthonyknowles · Nov 10, 2015 at 01:13 PM · c#getcomponentnull reference exception

Struggling with Unity 5 GetComponent: Null reference

Hi, I have read a lot of the posts here and none of them are facing my issue. usually this null reference is caused by either accessing a parent when you are not supposed to or the component simply is not attached...Let me start by explaining my hierarchy, specifically what i'm trying to access.

I have a cube with no mesh renderer or collider and it has a door mesh with colliders inside it. the point of the cube is to change the rotation axis of the door therefore the "Rotations script" called doorscript is on the parent of the mesh that I will be raycasting.

Everything works up until it tries to access the script and its function. although mono did suggest the script name when i wrote it.

Here is the problematic line that unity is complaining about

 hit.collider.transform.parent.GetComponent<doorscript>().changedoorstate();

and my code is :

 using UnityEngine;
 using System.Collections;
 
 public class interactScript : MonoBehaviour {
 
     public float interactdistance = 5f;
 
     void Update () {
     if (Input.GetKeyDown(KeyCode.E)){
             Ray ray = new Ray(transform.position,transform.forward);
             RaycastHit hit; 
 
             if(Physics.Raycast(ray, out hit, interactdistance)){
                 if(hit.collider.CompareTag("door")){
                     Debug.Log("Hit Door");
                     hit.collider.transform.parent.GetComponent<doorscript>().changedoorstate();
                 }
             }
         }
     }
 }

 

I have been having these issues non stop when using GetComponent in unity 5 so much that I'd rather just not use it at all :( please can someone help me understand why is is giving me a null reference exception like

NullReferenceException: Object reference not set to an instance of an object interactScript.Update () (at Assets/interactScript.cs:16)

Comment
Add comment · Show 2
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image ARKMs · Nov 10, 2015 at 02:05 PM 1
Share

¿Can you upload a screenshot of hierachy? And mark the GameObject with $$anonymous$$eshCollider and the GameObject with script 'doorscript'.

avatar image Anthonyknowles ARKMs · Nov 10, 2015 at 02:15 PM 0
Share

Your question made me second guess myself. So i checked the hierarchy again and the assets from the store that I am using had the mesh embedded in the child making the child "door" of my hinge object the actual parent. confusing but fixed! If anyone is reading - check your heirarchy!! Thanks @AR$$anonymous$$$$anonymous$$s

0 Replies

· Add your reply
  • Sort: 

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Welcome to Unity Answers

The best place to ask and answer questions about development with Unity.

To help users navigate the site we have posted a site navigation guide.

If you are a new user to Unity Answers, check out our FAQ for more information.

Make sure to check out our Knowledge Base for commonly asked Unity questions.

If you are a moderator, see our Moderator Guidelines page.

We are making improvements to UA, see the list of changes.



Follow this Question

Answers Answers and Comments

35 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

GetComponnent null reference C# 1 Answer

Using TextMeshProUGUI variable in a static function is returning a NullReferenceException 0 Answers

NullReferenceException when referencing to another class 2 Answers

Reading a var from variable parents 1 Answer

GameObject only spawning 60% of the time (c#) 1 Answer

  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges