2016-07-21 15 views
2

Ich arbeite mit dem Google Cardboard-Plugin in Unity 3D (Version 5.3.2). Ich habe ein C# -Skript eingerichtet, das von dem Skript "GvrHead.cs" auf die Variable "target" zugreifen soll. Dies ist der Teil des Skripts (es "CrystalDrop.cs" genannt wird):So legen Sie ein Ziel für GVRHead fest GoogleVR

 12. public Transform target2; 
     13. private GameObject HeadObj; 
     14. private GvrHead myScript; 
     15. 
     16. 
     17. void Start() { 
     18.  HeadObj = GameObject.Find ("GvrHeadObj"); 
     19.  myScript = HeadObj.GetComponent(GvrHead); 
     20.  myScript.target = target2; 
     21. } 

Aber wenn ich laufe das Projekt in Unity, bekomme ich diesen Fehler:

Aktiva/CrystalDrop.cs (19 , 49): Fehler CS0119: Ausdruck bezeichnet einen type, wobei ein variable, value oder method group erwartet wurde.

Weiß jemand, was vor sich geht?

Antwort

3

Verwendung:

12. public Transform target2; 
    13. private GameObject HeadObj; 
    14. private GvrHead myScript; 
    15. 
    16. 
    17. void Start() { 
    18.  GvrHead.target = target2; 
    21. } 
+0

Die Antwort, die Sie hatten, bevor Sie es bearbeitet haben, funktionierte eigentlich. Wenn es heißt: GvrHead.target = target2 ;. Wenn Sie es zurück ändern, werde ich als akzeptierte Antwort markieren. –

+0

@HenryV Ich habe es jetzt geändert. Ich war mir nicht sicher, ob die Zielvariable statisch ist oder nicht. Ich habe gerade die Dokumentation von GVR überprüft und es ist nicht statisch, weshalb ich es zurückgenommen habe. Viel Spaß :) –

+0

Danke, ich habe es manuell auf statisch geändert. Akzeptiert und Upvoted! :) –

1

Ändern Sie einfach myScript = HeadObj.GetComponent(GvrHead); zu myScript = HeadObj.GetComponent<GvrHead>();. So erhalten Sie eine Komponente mit C# in Unity. diese

+0

Ich tat das, und jetzt sagt es: Assets/CrystalDrop.cs (19,17): Fehler CS0428: Kann Methodengruppe GetComponent nicht konvertieren zu Nicht-Delegate-Typ 'GvrHead'. Betrachten Sie Klammern, um die Methode aufzurufen –

+0

So möchte ich Klammern wieder verwenden, die mir diesen Fehler wieder geben würde. –

+0

Sie müssen die spitzen Klammern und Klammern am Ende (leer) verwenden - genau wie von @Programmer – neopickaze

1

Machen privaten GvrHead myScript; zum öffentlichen GvrHead myScript; dann das Drag-and-Drop das Spielobjekt mit GvrHead script.that