• 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

Helishcoffe

Members
  • Content count

    835
  • Joined

  • Last visited

  • Days Won

    17

Helishcoffe last won the day on June 15

Helishcoffe had the most liked content!

Community Reputation

114 Excellent

1 Follower

About Helishcoffe

  • Rank
    Advanced Member
  • Birthday 05/16/1998

Profile Information

  • Gender
    Male
  • Location
    Ruhrgebiet :)

Recent Profile Visitors

4,729 profile views
  1. Du musst einfach nur bei der Kollision die Textur ändern. Also du erstellst einfach 2 Glastexturen. Eine normale und eine von dem zerbrochenen Glas. Dann machst du ein Script mit OnCollisionEnter und weißt dem Renderer dein Materiel mit der Zerbrochen Textur zu. Bei dem Zerbrechen ersetzt du dein Glas objekt mit mehreren kleinen Glassplittern und gibts denen ein Rigidbody mit Force.
  2. So sehen nun meine Fotschritte zu meinem Terraingenerator aus:
  3. Ja genau das wird das Problem gewesen sein. Da ich aber nur 32x32 große Texturen verwende und alle sowiso eher in Pixeloptik gehalten wird, wollte ich sowiso keine Midmaps verwenden
  4. Ich rate dir die Sprache C# zu lernen und dir die Basics anzuschauen und vor allem wie man in Listen umgeht. Da du ja schon bisschen Pascal kannst, sollte dir der Einstieg eigentlich nicht allzu schwer fallen. Dein Code kann nicht funktionieren, da "leben" kein Feld von einem Int ist. Du deklarierst nämlich in deinem Code ein Array, welches nur Integer's beinhaltet. Wenn du nun auf einen Arrayeintrag zugreifst, dann kriegst du auch nur ein int zurück. Du musst einen Array erzeugen welches Objekte eines Typs aufnimmt. Dieser Typ bzw. diese Klasse muss das Feld "leben" enthalten. "leben" ist dann widerum der Int-Wert den du editieren möchtest. EDIT: @Zer0Cool war schneller
  5. Der Unterschied ist, dass du bei einer Liste die Länge nicht angeben musst und somit dynamisch Elemente hinzufügen und entfernen kannst. In Unity (in C#) wird ein Array so deklariert: int[] arrayName = new int[4] // 4 ist die Länge des Arrays arrayName[1] = 45 // setzen eines Wertes am Index 1 Das ganze geht natürlich auch mit Objekten und nicht nur mit Integern oder anderen primitiven DatenTypen. Bei Listen sieht das dann so aus: List<int> listenName = new List<int>(); listenName.Add(34); // 34 wird zu Liste hinzugefügt listenName.Add(29); // 29 wird zur Liste hinzugefügt listenName[1] = 45; // setzen eines Wertes am Index 1 Auch hier kannst du statt primitive Datentypen Objekte verwenden
  6. Dachte auch, dass es am Repeating liegt jedoch ist dem nicht so. Nach mehrmaligem herumprobieren habe ich nun die MipMaps als den Verursacher gefunden. Wenn ich keine MipMaps generieren lasse, wird alles perfekt angezeigt auch mit allen Texturen im Texturatlas. Perfekt
  7. Sooo... ich habe mich jetzt nochmal dran gesetzt und scheinbar hat es gar nichts mit meinem Mesh selbst zutun. Ich benutze nämlich einen Texturatlas, den ich zur Laufzeit aus mehreren 32x32 Pixel großen einzelnen Texturen generiere. Die brauenen stellen scheinen daher zu kommen, dass neben der benutzten Grass Textur eine Steintextur und eine Eisenerz Textur benachtbart ist. Wenn ich nun beide Texturen entferne, sodass mein Texturatlas nur noch aus meiner Grass-Textur besteht, so sind die braunen Stellen komplett weg und alles sieht so aus wie es aussehen soll. Doch wie kann ich es einrichten, dass diese braunen Stellen auch mit den anderen Texturen im Texturatlas nicht zu sehen sind? FilterMode ist auf Point gestellt, sodass die Kanten der einzelnen Texturen auch exakt übereinstimmen. Habe auch schon bisschen mit ansioLevel rumgespielt aber keine Veränderung. Jemand Ideen?
  8. Soweit ich weiß wird Awake ja unmittelbar nach dem Instanziieren aufgerufen. Also bei der Methode Instantate wird z.B. direkt die Awake Methode aufgerufen. Start erst viel später.
  9. Vielleicht sollte man erstmal eim C# Tutorial in Erwägung ziehen und ein bisschen lernen. Dann klappt das mit dem Verständnis für deine Fehler in deinem Array auch besser. Habe mir jetzt nur kurz überflogen aber es macht auf mich den Eindruck, dass es besser ist sich intensiver mit den Basics von C# und Unity zu befassen oder sich andere Projekte anzuschauen und diese versuchen zu verstehen. Ich denke mal wenn dir hier jede Zeile vorgegakelt wird, weißt du am Ende des Tages wahrscheinlich immernoch nicht was du da genau gemacht hast.
  10. Klassiker, aber immer wieder total witzig :D

     

    1. Thanatos

      Thanatos

      haha das kannte ich noch garnicht. ist ja mega

    2. Zer0Cool

      Zer0Cool

      Aber .net hat die schöneren Frisuren! :D

    3. Helishcoffe

      Helishcoffe

      Da ist was dran :D

  11. Wenn du "richtige" Authoritative Server laufen lassen willst, ist das Multiplayersystsm von Unity da glaube ich sowiso nicht die aller Beste Wahl. Je nach dem wieviel Erfahrung man da mitbringt, könnte man auch eigene Implementationen schreiben (Direkt auf Sockets gehen)
  12. Zu 1.: Hier bieten sich die PlayerPrefs am besten an. Die sind genau für solche Zwecke gedacht. Einfach mal nach "Unity PlayPrefs" googlen und dann mal in der Scripting Reference einlesen. Zu 2.: Ich denke mal je nach dem wieviele Variablen du da hast, bist du besser bedient, wenn du das alles in eine externe Datei speicherst. C# bringt da ganz gute Implementationen mit zum Speichern und Laden von z.B. XML-Dateien. XML (oder auch andere Markup Sprachen) eignen sich zum Speichern größerer Datenmengen für deine Anforderungen sehr gut. Wenn man es übertreiben will kann man natürlich auch auf SQL zurückgreifen aber das wäre glaube ich mit Kanonen auf Spatzen schießen
  13. Die einfachste Methode ist die position wo du etwas hinbauen kannst, in eine Art Raster zu legen. Du kannst z.B. einfach die position deiner Wand oder was auch immer auf einen Wert runden und hast somit automatisch eine Art Raster. Natürlich müssen deine Objekte auch die Größe einer Einheit im Raster annehmen damit sie direkt aneinander passen
  14. Nein eben nicht. Du erstellst einfach einen Build, der als Server fungiert in dem du beim NetworkManager StartServer() aufrufst. Im Prinzip sind Client und Server build fast genau gleich.
  15. Der Rigidbody hat eine eigenschaft die sich centerOfMass nennt. Diese setzt du z.B. einfach mal um 0.5 nach unten. also: GetComponent<Rigidbody>().centerOfMass = new Vector3(0,-0.5F, 0) das schreibst du einfach in die Start methode. Somit wird der Schwerpunkt des Autos einfach um 0.5 Einheiten nach unten verschoben damit es nicht so schnell umkippt