Jump to content
Unity Insider Forum
  • Announcements

    • Lars

      Allgemeine Forenregeln   03/13/2017

      Forenregeln Nimm dir bitte einen Moment um die nachfolgenden Regeln durchzulesen. Wenn du diese Regeln akzeptierst und die Registration fortsetzen willst, klick einfach auf den "Mit der Registrierung fortfahren"-Button. Um diese Registration abzubrechen, klick bitte einfach auf den "Zurück" Button deines Browsers. Wir garantieren nicht für die Richtigkeit, Vollständigkeit und Brauchbarkeit der Nachrichten und sind auch nicht dafür verantwortlich. Die Beiträge drücken die Meinung des Autors des Beitrags aus, nicht zwangsläufig das, wofür die Forensoftware steht. Jeder Nutzer, der denkt, dass ein veröffentlichter Beitrag unzulässig bzw. störend ist, ist aufgefordert uns unverzüglich per E-Mail zu kontaktieren. Wir haben das Recht störende Beiträge zu löschen und bemühen uns, das in einem realistischem Zeitraum zu erledigen (sofern wir beschlossen haben, dass die Löschung notwendig ist). Du akzeptierst, durchgehend während der Nutzung dieses Services, dass du dieses Forum nicht dazu missbrauchen wirst, Inhalte zu veröffentlichen, welche bewusst falsch und/oder verleumderisch, ungenau, beleidigend, vulgär, hasserfüllt, belästigend, obszön, sexuell belästigend, bedrohlich, die Privatsphäre einer Person verletzend oder in irgend einer Art und Weise das Gesetz verletzen. Des Weiteren akzeptierst du, dass du keine urheberrechtlich geschützte Inhalte ohne Erlaubnis des Besitzers in diesem Forum veröffentlichst. Mit dem Klick auf den "Mit der Registrierung fortfahren"-Button, akzeptierst du zudem unsere Datenschutzerklärung und stimmst der Speicherung deiner IP-Adresse und personenbezogenen Daten zu, die dafür benötigt werden, um dich im Falle einer rechtswidrigen Tat zurückverfolgen zu können bzw. permanent oder temporär aus dem Forum ausschließen zu können. Es besteht keine Pflicht zur Abgabe der Einwilligung, dies erfolgt alles auf freiwilliger Basis.   Zusatzinformationen Der Forenbetreiber hat das Recht, Nutzer ohne Angabe von Gründen permanent aus dem Forum auszuschließen. Des Weiteren hat er das Recht, Beiträge, Dateianhänge, Umfrage, Blogeinträge, Galleriebilder oder Signaturen ohne Angabe von Gründen zu entfernen. Mit der Registrierung verzichtest du auf alle Rechte an den von dir erstellten Inhalten, bzw. treten diese an das Unity-Insider.de und Unity-Community.de ab. Dies bedeutet im Klartext, dass das Unity-Insider.de und Unity-Community.de frei über deine Texte verfügen kann, sofern diese nicht wiederum die Rechte anderer verletzen. Es besteht weiterhin kein Anspruch von registrierten Nutzern bzw. ehemaligen registrierten Nutzern darauf, dass erstellte Inhalte und/oder die Mitgliedschaft (User) wieder gelöscht werden (Erhaltung der Konsistenz dieses Forums).   Einwilligungserklärung Wenn du mit der Speicherung deiner personenbezogenen Daten sowie den vorstehenden Regeln und Bestimmungen einverstanden bist, kannst du mit einem Klick auf den Mit der Registrierung fortfahren-Button unten fortfahren. Ansonsten drücke bitte Zurück. Stand: 07.03.2011

Recommended Posts

MichaelPeter    22

Keine Ahnung was los ist, Unity hat auf einmal dieses Error angezeigt und jetzt kann ich nicht mehr den Playmode starten:

 

Internal compiler error. See the console log for more information. output was:Assets/Plugins/whydoidoit.com/Radical/System/Radical.cs(428,31): warning CS0618: `UnityEngine.GameObject.SetActiveRecursively(bool)' is obsolete: `gameObject.SetActiveRecursively() is obsolete. Use GameObject.SetActive(), which is now inherited by children.'

Assets/Plugins/whydoidoit.com/Radical/System/Radical.cs(558,38): warning CS0618: `UnityEngine.GameObject.active' is obsolete: `GameObject.active is obsolete. Use GameObject.SetActive(), GameObject.activeSelf or GameObject.activeInHierarchy.'

Assets/Plugins/whydoidoit.com/Serialization/UniqueIdentifier.cs(88,105): warning CS0618: `UnityEngine.GameObject.active' is obsolete: `GameObject.active is obsolete. Use GameObject.SetActive(), GameObject.activeSelf or GameObject.activeInHierarchy.'

Assets/Plugins/whydoidoit.com/Serialization/JSONLevelLoader.cs(135,12): warning CS0618: `UnityEngine.GameObject.active' is obsolete: `GameObject.active is obsolete. Use GameObject.SetActive(), GameObject.activeSelf or GameObject.activeInHierarchy.'

Assets/Plugins/whydoidoit.com/Serialization/JSONLevelSerializer.cs(900,77): warning CS0618: `UnityEngine.GameObject.active' is obsolete: `GameObject.active is obsolete. Use GameObject.SetActive(), GameObject.activeSelf or GameObject.activeInHierarchy.'

Assets/Plugins/whydoidoit.com/Serialization/LevelLoader.cs(89,12): warning CS0618: `UnityEngine.GameObject.active' is obsolete: `GameObject.active is obsolete. Use GameObject.SetActive(), GameObject.activeSelf or GameObject.activeInHierarchy.'

Assets/Plugins/whydoidoit.com/Serialization/LevelSerializer.cs(942,69): warning CS0618: `UnityEngine.GameObject.active' is obsolete: `GameObject.active is obsolete. Use GameObject.SetActive(), GameObject.activeSelf or GameObject.activeInHierarchy.'

Assets/Plugins/whydoidoit.com/Serialization/SaveGameManager.cs(212,54): warning CS0618: `UnityEngine.GameObject.active' is obsolete: `GameObject.active is obsolete. Use GameObject.SetActive(), GameObject.activeSelf or GameObject.activeInHierarchy.'

Assets/Plugins/whydoidoit.com/Serialization/UnitySerializer.cs(1697,144): warning CS0618: `UnityEngine.GameObject.active' is obsolete: `GameObject.active is obsolete. Use GameObject.SetActive(), GameObject.activeSelf or GameObject.activeInHierarchy.'

Assets/Standard Assets/Scripts/General Scripts/ActivateTrigger.cs(43,58): warning CS0618: `UnityEngine.GameObject.active' is obsolete: `GameObject.active is obsolete. Use GameObject.SetActive(), GameObject.activeSelf or GameObject.activeInHierarchy.'

Assets/Standard Assets/Scripts/General Scripts/ActivateTrigger.cs(53,58): warning CS0618: `UnityEngine.GameObject.active' is obsolete: `GameObject.active is obsolete. Use GameObject.SetActive(), GameObject.activeSelf or GameObject.activeInHierarchy.'

Assets/Standard Assets/Scripts/Utility Scripts/MeshCombineUtility.cs(27,74): warning CS0618: `UnityEngine.Mesh.GetTriangleStrip(int)' is obsolete: `Use GetTriangles instead. Internally this function converts a list of triangles to a strip, so it might be slow, it might be a mess.'

Assets/Standard Assets/Scripts/Utility Scripts/MeshCombineUtility.cs(130,73): warning CS0618: `UnityEngine.Mesh.GetTriangleStrip(int)' is obsolete: `Use GetTriangles instead. Internally this function converts a list of triangles to a strip, so it might be slow, it might be a mess.'

Assets/Standard Assets/Scripts/Utility Scripts/MeshCombineUtility.cs(177,30): warning CS0618: `UnityEngine.Mesh.SetTriangleStrip(int[], int)' is obsolete: `Use SetTriangles instead. Internally this function will convert the triangle strip to a list of triangles anyway.'

 

Unhandled Exception: System.UnauthorizedAccessException: Access to the path "C:\Users\Michael Peter\Documents\New Unity Project\Temp\Assembly-CSharp-firstpass.dll.mdb" is denied.

 

at System.IO.FileStream..ctor (System.String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, Boolean anonymous, FileOptions options) [0x00000] in <filename unknown>:0

 

at System.IO.FileStream..ctor (System.String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, Boolean isAsync, Boolean anonymous) [0x00000] in <filename unknown>:0

 

at System.IO.FileStream..ctor (System.String path, FileMode mode, FileAccess access) [0x00000] in <filename unknown>:0

 

at Mono.CompilerServices.SymbolWriter.MonoSymbolWriter.WriteSymbolFile (Guid guid) [0x00000] in <filename unknown>:0

 

at Mono.CSharp.SymbolWriter+SymbolWriterImpl.WriteSymbolFile () [0x00000] in <filename unknown>:0

 

at Mono.CSharp.SymbolWriter.WriteSymbolFile () [0x00000] in <filename unknown>:0

 

at Mono.CSharp.CodeGen.Save (System.String name, Boolean saveDebugInfo, Mono.CSharp.Report Report) [0x00000] in <filename unknown>:0

 

at Mono.CSharp.Driver.Compile () [0x00000] in <filename unknown>:0

 

at Mono.CSharp.Driver.Main (System.String[] args) [0x00000] in <filename unknown>:0

Share this post


Link to post
Share on other sites
Schlumpf    162

output was:Assets/Plugins/whydoidoit.com/Radical/System/Radical.cs(428,31): warning CS0618: `UnityEngine.GameObject.SetActiveRecursively(bool)' is obsolete:

 

das script rennt so nich die funktion hat sich geändert

 

 

From the Unity 4 release notes:

We have changed how the active state of GameObjects is handled. GameObjects active state will now affect child GameObjects, so setting a GameObject to inactive will now turn the entire sub-hierarchy inactive. This may change the behavior of your projects. GameObject.active and GameObject.SetActiveRecursively() have been deprecated. Instead, you should now use the GameObject.activeSelf and GameObject.activeInHierarchy getters and the GameObject.SetActive() method.

 

btw "auf einmal" nich wirklich das kam nach dem importieren von was auch immer

 

whydoidoit.com/Radical warscheinlich :D

Edited by Schlumpf

Share this post


Link to post
Share on other sites
MichaelPeter    22

Ich war ein Script am schreiben (bin nicht fertig geworden):

var Wagon : Transform;
var speed = 10;

function Start()
{
Wagon = transform;
}

function Update()
{
if (Input.GetButton("Back"))
{
Wagon.position == Wagon.up * speed * Time.deltaTime;
}
if (Input.GetButton("Vertical"))
{
Wagon.position += Wagon.up * speed * Time.deltaTime;
}
}

Share this post


Link to post
Share on other sites
malzbie    1,331

Die Obsolete Meldungen sind Warnmeldungen, keine Fehlermeldungen. Die müssten eigentlich Gelb sein.

Ja und die hast du schon seitdem du da irgendetwas importiert hast.

 

Diese meldung hier:

Unhandled Exception: System.UnauthorizedAccessException: Access to the path "C:\Users\Michael Peter\Documents\New Unity Project\Temp\Assembly-CSharp-firstpass.dll.mdb" is denied.

 

Ist wohl dein Problem. Da gibt es ein Zugriffsberechtigungsfehler. Warum das so ist, kann ich dir nicht sagen.

Das hat aber sicher nichts mit dem Script, was du hier zeigst, zu tun.

Share this post


Link to post
Share on other sites
Helishcoffe    115

`gameObject.SetActiveRecursively() is obsolete. Use GameObject.SetActive(), which is now inherited by children

 

Sprich: benutze statt SetActiveRecursively() die Funktion SetActive()

Share this post


Link to post
Share on other sites
Mauri    252

Bevor ihm hier jetzt dazu geraten wird, die obsolete-Warnungen zurecht zu bügeln:

Nur weil gewarnt wird heißt es nicht, dass es schlecht ist.

 

Sein Hauptproblem ist immer noch folgendes:

Unhandled Exception: System.UnauthorizedAccessException: Access to the path "C:\Users\Michael Peter\Documents\New Unity Project\Temp\Assembly-CSharp-firstpass.dll.mdb" is denied.

Darum sollte er sich erstmal primär kümmern. Sprich: Unity ggf. mal neustarten oder mal als Administrator ausführen.

Share this post


Link to post
Share on other sites
malzbie    1,331

Genau Mauri.

Keine Ahnung warum alle Anderen meinen, dass die Obsolete "Warnungen" wichtig seien. Nur wei MP sie gepostet hat, ;)

Share this post


Link to post
Share on other sites
Helishcoffe    115

Genau Mauri.

Keine Ahnung warum alle Anderen meinen, dass die Obsolete "Warnungen" wichtig seien. Nur wei MP sie gepostet hat, ;)

 

Weil man sie auch nicht ignorieren sollte ;) Außerdem haben wir/du ihm die Lösung ja schon gesagt. Und zwar, dass Unity auf die Datei kein Zugriff hat. Da können wir ja auch schlecht eine Lösung für finden, was auf seinem Rechner abgeht.

Eine Idee wäre aber noch von mir, dass die Datei vllt. von einem anderen Programm oder so geöffnet ist.

Trotzdem sollte man eine Warnung nicht einfach Ignorieren. Sie steht ja nicht ohne Grund dort ;)

Share this post


Link to post
Share on other sites
malzbie    1,331

Warnungen sind Warnungen und haben natürlich eine Bedeutung.

Trotzdem habe sie eine andere Farbe. Sie sind Gelb und das bedeutet noch ist alles gut! Rot dagegen ist schlecht und erst dann will Unity nicht mehr.

Das sieht MP nicht so. Sonst würde er gewisse Sachen selbst erkennen.

 

Natürlich werden die Befehle, die jetzt obsolete (veraltet) sind, irgendwann ganicht mehr funktionieren. Vielleicht ab der Version 5, vielleicht auch erst später. Da muss man ran, ganz klar! Aber bei einem Asset, welches MP irgendwann einmal dazu geladen hat und welches diese Meldungen bringt, brauchen wir uns keine Sorgen machen. Er hat sie garnicht bemerkt, bis seit heute gar nichts mehr geht, was natürlich mit diesen Meldungen garnichts zu tun hat. Für ihn ist das aber jetzt, wo er erkannt hat dass da ja Meldungen kommen, total verwirrend. Da gehört alles zusammen! Farbe? Egal!

Ich mache mir keine Hoffnung,dass er weiß, was zu tun ist. Selbst wo wir ihm das jetzt ein paar mal geschrieben haben.

Morgen kommt wieder so ein Thread: Hilfe! Dringend! Ihr müsst mir helfen!

Dann hilfst du ihm und gut. Keine Antwort oder nur sowas wie "ich habe den Fehler gefunden, jetzt geht's" ohne weitere Info. Also unbrauchbar für andere, die auch so einen Fehler hatten und vielleicht aus dem Thread etwas lernen könnten. Und dann ist Ruhe... bis morgen... dann gehts wieder von vorne los.

  • Like 2

Share this post


Link to post
Share on other sites
Helishcoffe    115

Da geb ich dir auch vollkommen Recht. Trotzdem ist mir jetzt nicht 100% klar was du damit zum Ausdruck bringen möchtest, kann es mir aber denken. Abgesehen davon bist du sehr Poetisch malzbie ;)

Egal das ist Offtopic.

Share this post


Link to post
Share on other sites
Sascha    1,981

Trotzdem habe sie eine andere Farbe. Sie sind Gelb und das bedeutet noch ist alles gut!

Da muss ich aber widersprechen!

Obsolete-Warnungen sind da zwar schon fast eine Ausnahme, aber Warnungen bedeuten fast immer, dass der Code nicht das tut, was er eigentlich soll.

Und Ich sehe nicht, was daran besser sein soll, als daran, dass er gar nicht erst kompiliert ;)

 

(Und ja, eigentlich ist das offtopic, aber man hat so das Gefühl, dass das dem Thread kaum schadet :P)

  • Like 2

Share this post


Link to post
Share on other sites
malzbie    1,331

Du hast aber schon meinen ganzen Text gelesen und worauf ich hinaus wollte, oder etwa nicht?

Wenn in der Console gelbe Warnungen ausgegeben werden, dann ist das natürlich ein Hinweis auf etwas, was geändert werden soll.

Trotzdem läuft das System jetzt erstmal. Das ist bei obsolete Meldungen so und das ist auch so, wenn ich eine private Variable deklariere sie aber noch gar nicht in dem Code nutze.

Und das ist auch so wenn Unity mir erzählt dass ich ein 64 Bit System nutze aber einen gewissen Patch noch nicht installiert habe. In diesem Fall ist die Meldung sogar irreführend weil Unity es auch bei Win8 macht, wo es diesen Patch garnicht mehr gibt.

 

All diese Meldungen sind gelb und ich kann auf Play drücken. Das Spiel läuft in dieser Unityversion einwandfrei und so wie ich es Programmiert habe (was ja Bugs nicht ausschließt).

In einer späteren Version werden die jetzt noch obsolete Befehle nicht mehr funktionieren und deswegen sollte man da ran.

Noch gehen sie aber.

Rote Meldungen sind jedoch echte Fehler die gefixt werden müssen, damit der Code Compiliert werden kann. Da läuft nix mehr.

Und diese Meldungen muss ich als erstes beachten, denn ohne das geht gar nichts!

 

Also ich sehe da ganz klar einen Unterschied. Nicht nur in der Priorität der Meldung sondern auch im Verhalten.

 

Und wenn jemand eine DIN A4 Seite mit obsolete Meldungen postet und ganz unten versteckt sich dann auch noch ein echter Fehler, dann hat er nicht verstanden was das bedeutet und erkennt auch nicht warum die Meldungen in unterschiedlichen Farben ausgeworfen werden. Darauf wollte ich einfach mal hin weisen.

Rot ist entscheidend! Gelb ist wichtig, aber nicht Ursache des Problems.

 

So und jetzt zeig mir eine gelbe Meldung wo nicht mehr alles gut ist und der Code deswegen etwas falsches macht. :)

  • Like 1

Share this post


Link to post
Share on other sites
Mark    867

Nur um dich ein wenig zu necken:

 

warning CS0108: `Foo.bar' hides inherited member `NameSpace.BaseClass.bar'. Use the new keyword if hiding was intended"

 

Sehr gefährlich dieser Fehler und der Code macht unter Umständen (sehr wahrscheinlich) wirklich etwas falsches.

  • Like 1

Share this post


Link to post
Share on other sites
Sascha    1,981

Ich finde noch mehr:

  • unreachable code (sofern nicht absicht beim debuggen, versteht sich)
  • local variable not used
  • private variable not used
  • shadowing im Allgemeinen, auch local variable <> instance variable

Hier unter Punkt 10 ist noch was nettes darüber geschrieben.

 

Und ja, zwischen lauter (obsolete-)Warnungen hat ein Compiler Error natürlich Vorrang, trotzdem wollte ich der Aussage einzeln widersprechen.

Share this post


Link to post
Share on other sites
malzbie    1,331

Ja, leuchtet ein. Aus der Warnung kann sich ein Fehler erzeugen, der nicht kommen würde, wenn man die Warnung beachtet hätte.

Aber die Warnung an sich ist ja erstmal nicht der Fehler! ;)

Du weißt eh, dass ich weiß was du sagen willst. Und du weißt ja auch, dass ich hier in diesem speziellen Thread auf etwas ganz bestimmtes hinaus wollte. ;)

Share this post


Link to post
Share on other sites
Tiwaz    229

(...)

Natürlich werden die Befehle, die jetzt obsolete (veraltet) sind, irgendwann ganicht mehr funktionieren.

(...)

 

Wirklich?

Müssen die nicht aus Gründen der Rückwärtskompatibiltät auf jeden Fall drin bleiben? Gibt's doch bei anderen Programmiersprachen auch ^^

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


×