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 26, 2018 at 11:58 PM by thunderbuns for the following reason:

Problem was solved

avatar image
0
Question by thunderbuns · Feb 21, 2018 at 12:01 AM · c#variablesaccessconfused

can't reference variable in script

I am trying to get access to the 'localRotation' variable inside script 'CameraRotater'. This should be easy but when I type Vector3 rot = GameObject.Find("[CameraRig]").GetComponent<CameraRotater>().localRotation; I get an error saying that 'CameraRotater could not be found'. However when I type Vector3 rot = GameObject.Find("[CameraRig]").GetComponent("CameraRotater").localRotation; I get a different error saying that 'localRotation could not be found'. Here is the code for 'CameraRotater' public class CameraRotater : MonoBehaviour { public Vector3 localRotation; }. I have looked at other peoples answer to this very question but none of their solutions have worked for me. Any help would be greatly appreciated.

Comment
Add comment · Show 4
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 nathanvj · Feb 21, 2018 at 12:16 AM 0
Share

Can you try making the CameraRotator public and just dragging and dropping in inspector?

I still don't understand why people keep using performance-heavy & inconvenient functions like Find(), but that's just an aside.

avatar image thunderbuns nathanvj · Feb 21, 2018 at 03:39 AM 0
Share

@nathanvj I tried to use something better like a SerializedField, but I wanted to get this working before I worried about performance enhancements.

avatar image meat5000 ♦ · Feb 21, 2018 at 09:08 AM 0
Share

Whats with the square brackets around CameraRig? Is it actually called "[CameraRig]"?

CameraRotater is a script, not a gameobject. It wont have a localRotation. If its a variable you've created yourself call it something else for safety.


Would you want

CameraRig.transform.localRotation ins$$anonymous$$d?

avatar image RobAnthem · Feb 21, 2018 at 09:23 AM 0
Share

How about you create rock solid references to things ins$$anonymous$$d of using this terrible "find object, find script" method. I know a lot of tutorials promote this kind of garbage coding, but seriously, even if you fix your problem, this is the worst possible way to do this.

I WILL NOT suggest a solution to your problem. Ins$$anonymous$$d, I suggest adding a singleton reference to your CameraRotator like this.

 public static CameraRotator Instance
 {
     get
     {
         if (instance == null)
         {
            instance = FindObjectOfType<CameraRotator>();
         }
         return instance;
     }
     private set
     {
         instance = value;
     }
 }
 private static CameraRotator instance;
 void Awake()
 {
     Instance = this;
 }


Then your other code can just do this

 CameraRotator.Instance.localRotation = blahRotation;

2 Replies

  • Sort: 
avatar image
0

Answer by Nazirzadeh · Feb 21, 2018 at 04:56 AM

For C# look at this: referencing an object

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

Answer by Positive7 · Feb 21, 2018 at 05:11 AM

You got the 'CameraRotater could not be found' error because the CameraRotater is not in the same directory as the one you're looking from it lets say GetCameraRotater.cs.

If GetCameraRotater.cs is inside Scipts folder or namespace but CameraRotater.cs is inside BlaBla folderor namespace you have to add a using to GetCameraRotater using BlaBla;

GetCameraRotater .cs :

  using BlaBla;
     using UnityEngine;
     
     public class GetCameraRotater : MonoBehaviour
     {
         private void Start()
         {
             var rot = GameObject.Find("[CameraRig]").GetComponent<CameraRotater>().localRotation;
             Debug.Log(rot);
         }
     }

CameraRotater.cs

 namespace BlaBla
 {
     using UnityEngine;
 
     public class CameraRotater : MonoBehaviour
     {
         public Vector3 localRotation;
 
         private void Awake()
         {
             localRotation = transform.localEulerAngles;
         }
     }
 }




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

Follow this Question

Answers Answers and Comments

454 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

Related Questions

Multiple Cars not working 1 Answer

Distribute terrain in zones 3 Answers

access instantiated object variable 0 Answers

How Do I Access and Change Items in a List on Another Script? 2 Answers

How to access variables from another script on collision ? 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