Jump to content
Unity Insider Forum

Rogan

Members
  • Content Count

    12
  • Joined

  • Last visited

Community Reputation

0 Neutral

About Rogan

  • Rank
    Member

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Danke für den Artikel, Sascha. Das ist schon sehr interessant und hilfreich, was da so drin steht. In irgendein Forum Eintrag hattest du ja mal erwähnt, dass es nicht gut ist, mit Tags zu arbeiten, jetzt habe ich verstanden, warum. Wenn ich aber mit FindObjectOfType<> arbeite, dann habe ich auch das Problem, dass er sich irgendein beliebiges heraussucht, wenn mehr als 1. vorhanden ist. Allerdings sucht er sich dann sowohl im Build als auch im Editor das selbe heraus, während das beim FindGameObjectWithTag im Build sich ein anderes heraussucht, als beim Editor. Das habe ich gerade getestet. @malzbie: Was ich meinte: Wenn man mit sowas wie FindGameObjectWithTag oder FindObjectOfType<> arbeitet, dann macht man das ja eig. deswegen, weil man davon ausgeht, dass nur eins davon in der Scene ist. Deswegen wäre es meiner Meinung gut, wenn Unity in den Fall untersucht, ob mehr als eins davon vorhanden ist und wenn das der Fall ist, dann eine Warnung ausgibt. Das macht er ja auch z.B. dann, wenn man mehr als 1. AudioListener in der Scene hat. Man könnte das ja so verhindern, dass sowas passiert. if (GameObject.FindGameObjectsWithTag("Player").Length == 1) player = GameObject.FindGameObjectWithTag("Player"); else Debug.LogWarning("Entweder existiert kein GameObject mit diesen Tag in der Scene, oder es ist mehr als 1. vorhanden"); // Will ich beides nicht, erst recht nicht den 2.Fall
  2. Ja, das muss ich zukünftig unbedingt öfters machen, weil ich mir der Fehlermeldung im Build nicht so viel anfangen konnte. Danke für die Antworten. Der Fehler hat mich richtig frustriert, da ich erstmal überhaupt nicht wusste, wie ich vorgehen soll, um den zu finden.
  3. ok, ich habe den Fehler endlich gefunden Ich habe in verschiedenen Scripts mein Spieler über den Befehl: GameObject.FindGameObjectWithTag mit den Tag "Player" gesucht. Leider habe ich wohl irgendwann mal versehentlich ein GameObject, was ein Kind Object vom Spieler ist, auch den Tag "Player" gegeben. Also gab es 2 Objekte mit dem selben Tag. Er hat aber im Editor immer das GameObject mit dem Tag herausgesucht, was ich haben wollte, während der im Build immer das andere Gameobjekt mit dem selben Tag herausgesucht hatte, welche ich nicht wollte. Das erklärt dann die Fehlermeldungen bzw. die unterschiedlichen Verhalten im Build im Vergleich zum Editor. Leider habe ich lange gebraucht, um diesen Fehler zu finden, aber besser jetzt als nie. Nur schade, dass Unity keine Warnung ausgibt, wenn man nach nur einen Objekt mit dem Tag sucht, aber mehrere Objekte mit diesen Tag in der Scene sind.
  4. Wenn ich etwas builde, dann müsste doch alles im Ordner, wo das Projekt "gebaut" wird, vom heutigen Datum sein, oder? Bei mir ist es, auch wenn ich einen neuen Ordner mache, die Daten zum teil von heute, aber auch zum teil vom 11.04 zu verschiedenen Uhrzeiten. Wenn ich das mit einen anderes Projekt mache, passiert das selbe.
  5. Ich habe Windows 10. Das GameObject mit dem Script, was ich gepostet hatte, habe ich mal zum testen deaktiviert. Ich habe eine neue Scene erstellt und nur den Spieler, den Feind und ein paar Cubes ohne Scripts hinzugefügt. Der Feind verhält sich, wenn er eine direkte Sichtline hat so, dass er nur schießt und ein Hindernis im Weg ist, schießt er Granaten über das Hindernis. Wenn ich auf den Play Mode drücke, dann kommt keine Fehlermeldung in der Konsole und da ich direkt vor ihm stehe, schießt er nur seine normalen Geschosse. Wenn ich das Spiel builde, dann schießt er komischerweise aber die Granaten und er dreht sich teilweise komisch oder gar nicht richtig. Allein, dass er sich nach dem build anders verhält, finde ich komisch.
  6. Könnte es sein, dass irgendeine Datei im Projekt beschädigt ist oder dass irgendein Import von einen Asset vom Assetstore sowas verursachen könnte? Ich verstehe halt nicht, wie so was passieren kann, dass etwas im Play Mode funktioniert, aber nach dem Build nicht mehr. Der Play Mode ist doch eig. dafür da, um zu testen, ob das Spiel bis dorthin funktioniert. Was sollte man generell vermeiden, damit zukünftig in einen anderen Projekt so ein Problem nicht mehr auftaucht?
  7. dann muss ich wirklich in Zukunft mehrere Scripts machen. Was mir aufgefallen ist: Egal, welchen unterschiedlichen feindlichen Panzer ich in die Scene stecke, er findet das entsprechende Script, was ich den zugewiesen habe, dafür nicht. Ich gehe jetzt aber erstmal off, bis morgen dann.
  8. Ich verstehe leider nicht ganz, was du meinst, sry. Könnte es aber irgendwie damit zusammenhängen, dass ich das GameObject, an was ich das gehangen habe, Don't Destroy on Load gesetzt habe und das irgendwelche Probleme verursacht?
  9. Habe übersehen, dass ihr schon geantwortet habt. Ich habe gedacht, man bekommt eine E-Mail, wenn jemand Antwortet Unter meinen Text hatte ich doch die output_log.txt angehängt, merkwürdig. Ich schreibe es hier mal rein: // edit: ne danke das wiederholt sich eig. nur etliche mal der selbe Fehler.
  10. Hallo, Ich habe folgendes Problem. Wenn ich mein Spiel in Unity direkt starte, dann taucht keine Fehlermeldung auf, aber wenn ich das Spiel builde und die exe starte, dann taucht folgender Fehler im output_log auf: NullReferenceException: Object reference not set to an instance of an object at GameController.StartNewLevel () [0x000cc] in C:\Users\Daniel\Documents\tanks 3\Assets\Own Assets\Scripts\GameController.cs:303 at GameController.Update () [0x00081] in C:\Users\Daniel\Documents\tanks 3\Assets\Own Assets\Scripts\GameController.cs:631 output_log.txt vielen Dank in voraus für eure Hilfe.
  11. Schade, dass das Tutorial nicht zu Ende gemacht wurde.
×
×
  • Create New...