Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 12 Next capture
2021 2022 2023
1 capture
12 Jun 22 - 12 Jun 22
sparklines
Close Help
  • 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 /
This question was closed Feb 23, 2018 at 08:48 PM by jacobawesome8 for the following reason:

The question is answered, right answer was accepted

avatar image
0
Question by jacobawesome8 · Feb 23, 2018 at 05:42 PM · c#collisionerror

Object reference not set to an instance of an object

Hi, so I made it where when my player collides with an object with the tag collider it will disable the object to make it look like they picked it up, but it keeps giving me this error, NullReferenceException: Object reference not set to an instance of an object DuckController.OnTriggerEnter (UnityEngine.Collider other) (at Assets/world/DuckController.cs:47) DuckController.FixedUpdate () (at Assets/world/DuckController.cs:22), I have no idea why. Thanks for the help!

Code:

[SerializeField] float Speed = 3.5f;

 Rigidbody rigidbody;

 Collision collision;

 Collider other;
 // Use this for initialization
 void Start () {
     rigidbody = GetComponent<Rigidbody>();
 }

 // Update is called once per frame
 void FixedUpdate() {
     Invoke("Rotate", 2f);
     OnTriggerEnter(other);
 }

 void Rotate()
 {
     if (Input.GetKeyDown(KeyCode.LeftArrow))
     {
         transform.eulerAngles = new Vector3(0, 180, 0);
     }
     else if (Input.GetKeyDown(KeyCode.RightArrow))
     {
         transform.eulerAngles = new Vector3(0, 0, 0);
     }
     else if (Input.GetKeyDown(KeyCode.UpArrow))
     {
         transform.eulerAngles = new Vector3(0, -90, 0);
     }
     else if (Input.GetKeyDown(KeyCode.DownArrow))
     {
         transform.eulerAngles = new Vector3(0, 90, 0);
     }
     rigidbody.AddForce(transform.forward * Speed);
 }
 void OnTriggerEnter(Collider other)
 {
     if (other.gameObject.tag == ("collect"))
     {
         other.gameObject.SetActive(false);
     }
 }

}

Comment
Add comment
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

2 Replies

  • Sort: 
avatar image
1
Best Answer

Answer by pako · Feb 23, 2018 at 06:39 PM

OnTriggerEnter(Collider) is called automatically by Unity, with the correct Collider as parameter of the method.

In your case, you declare a private class variable Collider other, which you never set, so it's null, and you pass it as the parameter to the OnTriggerEnter(Collider) method, but since you never set the value of other, you just pass null.

This is wrong usage. Let Unity do it's job.

Remove the Collider other variable declaration, and don't call OnTriggerEnter(Collider) from anywhere in your code. Unity will call it, and you just need to declare the method (as you have already done).

Comment
Add comment · Show 2 · Share
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 jacobawesome8 · Feb 23, 2018 at 08:47 PM 1
Share

Thanks so much it fixed it

avatar image pako jacobawesome8 · Feb 23, 2018 at 08:58 PM 0
Share

You are welcome!

avatar image
3

Answer by Deathdefy · Feb 23, 2018 at 05:45 PM

OnTriggerEnter executes when a collider hits another collider that is marked trigger. You dont need to call it from FixedUpdate as well.

Use this.

  void FixedUpdate() {
      Invoke("Rotate", 2f);
  }

https://docs.unity3d.com/ScriptReference/Collider.OnTriggerEnter.html

Comment
Add comment · Show 3 · Share
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 jacobawesome8 · Feb 23, 2018 at 05:54 PM 0
Share

Thanks for the reply! What do you mean? I know that is what OnTriggerEnter does I want it to do this. I removed fixed update and put this under rotate and it still did not work.

avatar image Deathdefy jacobawesome8 · Feb 23, 2018 at 06:09 PM 0
Share

In the inspector on your Collider component, there is a property called IsTrigger. That must be checked for OnTriggerEnter to execute. If you dont have a collider that ISNT marked IsTrigger and one that IS marked IsTrigger, this method will never execute.

So, whatever object has this script on it needs to also have a Collider attached that has the property IsTrigger checked to True.

avatar image jacobawesome8 · Feb 23, 2018 at 08:47 PM 0
Share

I already had it as IsTrigger, thanks though it is fixed now.

Follow this Question

Answers Answers and Comments

482 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 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 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 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 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 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 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 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 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 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 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 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 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 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

OnTriggerEnter throws an error but code still works 1 Answer

Compiler error while trying to access a Collider's script. 1 Answer

Multiple Cars not working 1 Answer

Raycast doesn't collide as it should 1 Answer

Can you help me about a animation ? 1 Answer


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges