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

Buttermilch

Members
  • Content count

    11
  • Joined

  • Last visited

Community Reputation

0 Neutral

About Buttermilch

  • Rank
    Member

Profile Information

  • Gender
    Male
  1. C# Tilemaps Problem

    Hallo zusammen, ich arbeite derzeit an einem Bomberman-Game in Unity. Dafür benutze ich Tilemaps. Mein Problem ist nun beim zerstören der Tiles, also wenn eine Bombe explodiert, dass das nachfolgende Tile ebenfalls zerstört wird. Wenn meine Explosion-Size = 1 ist, klappt alles wunderbar. Hier mal ein Beispiel: Rot = Bombe Gelb = Bereich der zerstört werden soll Blau = Bereich der nicht zerstört werden soll Wenn jetzt die Explosion-Size = 3 oder so ist, dann sieht das so aus: Rot = Bombe Gelb = Bereich der zerstört werden soll Grün = Bereich der nicht zerstört werden soll, aber trotzdem zerstört wird Leider kann ich das Problem nicht selber lösen. Hier nun mein Code den ich zum zerstören der Tiles benutze: public void Explode(Vector2 worldPos) { Vector3Int originCell = tilemap.WorldToCell(worldPos); ExplodeCell(originCell); if (ExplodeCell(originCell + new Vector3Int(1, 0, 0))) { for (int i = 0; i < explosionSize; i++) { ExplodeCell(originCell + new Vector3Int(i + 1, 0, 0)); } } if (ExplodeCell(originCell + new Vector3Int(0, 1, 0))) { for (int i = 0; i < explosionSize; i++) { ExplodeCell(originCell + new Vector3Int(0, i + 1, 0)); } } if (ExplodeCell(originCell + new Vector3Int(-1, 0, 0))) { for (int i = 0; i < explosionSize; i++) { ExplodeCell(originCell + new Vector3Int(-1 * (i + 1), 0, 0)); } } if (ExplodeCell(originCell + new Vector3Int(0, -1, 0))) { for (int i = 0; i < explosionSize; i++) { ExplodeCell(originCell + new Vector3Int(0, -1 * (i + 1), 0)); } } } bool ExplodeCell(Vector3Int cellPos) { Tile tile = tilemap.GetTile<Tile>(cellPos); for (int i = 0; i < wallTile.Length; i++) { if (tile == wallTile[i]) { return false; } } if (tile == destructibleTile) { // remove the tile tilemap.SetTile(cellPos, null); PlayerController.Highscore++; } if (tile == exitTile) { return false; } // create an explosion Vector3 pos = tilemap.GetCellCenterWorld(cellPos); Instantiate(explosionPrefab, pos, Quaternion.identity); explosionPlayer.GetComponent<AudioSource>().clip = explosion; explosionPlayer.GetComponent<AudioSource>().Play(); return true; }
  2. Rotation vom Objekt am Pfad orientieren

    Funktioniert, danke!
  3. Ahoi zusammen! Ich habe ein Problem mit der Rotation eines Objekts auf einem Pfad. Die Bewegung entlang des Pfades ist kein Problem, allerdings konnte ich für die Rotation nichts hilfreiches im Internet finden. So sieht die Bewegung auf dem Pfad aus: //toMove = GameObject, wird auf dem Pfad Bewegt //TargetTrackPoint = Vector3, dort soll das Objekt hin toMove.transform.position = Vector3.MoveTowards(toMove.transform.position, TargetTrackPoint, speed * Time.deltaTime* 20); Hier mein Versuch das Objekt zu Drehen: Quaternion targetRot = TrackPieces[CurrentTrackPoint].transform.rotation; toMove.gameObject.transform.rotation = Quaternion.RotateTowards(toMove.transform.rotation, targetRot , speed * 20f*Time.deltaTime); Vielleicht kann mir ja jemand von euch helfen. So sieht das Objekt auf dem Pfad bis jetzt aus: Und so soll es aussehen:
  4. Collider funktioniert nur einmal im Spiel

    Das war tatsächlich der Fehler... und ich hab wie ein Verrückter nach irgendwas anderem Gesucht. Jedenfalls danke ich euch @Kojote, @malzbie
  5. Guten Abend zusammen, mein Problem ist, dass wenn ich mein Spiel mit Unity "Baue" und es dann ausführe, die Collider von einem Meteor und dem Spieler 1 - 2 mal funktionieren und dann gar nicht mehr. Auch wenn ich die Szene bswp. vom Startmenü aus noch mal lade, passiert nichts. In Unity selber klappt alles einwandfrei. Für beide Objekte benutze ich Rigidbodys (Meteor: Collision Detection: Continious Dynamic, Player: Coll. Detect.: Continous). Ebenfalls haben beide einen Box Collider. Hier mal mein Script vom Meteor: void OnCollisionEnter (Collision col) { Quaternion rot = Quaternion.LookRotation (transform.position.normalized); rot *= Quaternion.Euler (90f, 0f, 0f); if (explosionPrefab != null && carExplosionPrefab != null) { Instantiate (explosionPrefab, col.contacts [0].point, rot); //Instantiate (crater, col.contacts [0].point, rot); if (col.collider.tag == "Player" && restart == false) { Instantiate (carExplosionPrefab, col.contacts [0].point, rot); Player.moveSpeed = 0; Player.rotationSpeed = 0; Time.timeScale = 0.5f; restart = true; //bool, lässt neue Szene laden } if (col.collider.tag == "Meteor") { Instantiate (explosionPrefab, col.contacts [0].point, rot); Destroy (gameObject); Destroy (col.collider.gameObject); } } transform.GetComponent<Rigidbody> ().constraints = RigidbodyConstraints.FreezeAll; DestAsset = true; //bool } Hier mein Script vom Player: void OnCollisionEnter (Collision col) { if (col.collider.tag == "Metor" || col.collider.tag == "crater") { moveSpeed = 0; rotationSpeed = 0; transform.GetComponent<Rigidbody> ().constraints = RigidbodyConstraints.FreezeAll; Meteor.restart = true; } } Hoffe mir kann jemand helfen Danke im Voraus!
  6. C# - Musikdateien während der Laufzeit in das Programm laden

    Ich habe nun dieses Skript benutzt und jetzt klappt alles. Ich habe keinen Plan warum die anderen nicht funktionierten... Jedenfalls, vielen Dank!
  7. C# - Musikdateien während der Laufzeit in das Programm laden

    Danke für deine Antwort. Das Problem ist jedoch nicht ganz gelöst... Als ich nun das Spiel startete wurde immer noch keine Musik gespielt. Danach wollte ich in der Konsole nach Fehlermeldungen schauen, und genau dann als ich diese skalliert habe, fing die Musik an zu spielen. Immer wenn ich die Konsole dann neu skallierte, fing der Song von vorne an.
  8. C# - Musikdateien während der Laufzeit in das Programm laden

    Das hat leider nichts geändert. Ich nutze also immer noch das oben angegebene Script.
  9. Guten Abend zusammen, ich möchte, dass man in meinem Spiel eine externe Audiodatei von dem PC laden kann. Diese brauche ich dort für Game-Objekte welche auf diese reagieren. Ich habe bereits das ganze Gedöns rund um den Dateipfad fertig, und geladen wird die Datei auch. Allerdings wird beim Abspielen der Datei nur ein schriller, langer Ton erzeugt. Unity gab mir bereits die Meldung, dass ich nur Dateien im " wav " Format nutzen kann. Mit der Datei ist auch alles in Ordnung, ich habe blos keine Ahnung wo der Fehler liegen kann. Hier meint Script zum laden der Datei: public AudioSource audios; void Start () { WWW www = new WWW("file:///"+testFileBrowser.output); audios = GetComponent<AudioSource> (); audios.clip = www.GetAudioClipCompressed(); while (!www.isDone) { print("Processing File" + testFileBrowser.output); } if (www.isDone) { print ("Song is done"); } if (!audios.isPlaying && audios.clip.isReadyToPlay == true) { audios.Play (); } } Hoffe ihr könnt mir helfen Danke im Voraus! EDIT: Manchmal passiert auch einfach gar nichts. Also gar kein Ton.
  10. Unity verschiebt Objekte beim Start

    Ja Sie war auf Perspective gestellt. EDIT: Musste jetzt nur noch die "Size" unter "Orthographic" anpassen. Jetzt klappt alles, danke!
  11. Hallo zusammen, ich habe mir einen einfachen Space-Shooter erstellt. Mein Problem ist derzeit, dass wenn ich im Spiel bin und schieße, die Objekte eigentlich auf einander treffen müssten. Jedoch sieht das ganze im "Scene-Tab" anders aus. Irgendwie wird da was verschoben. Ich konnte im Internet leider auch nichts dazu finden. Hier mal ein Beispiel: So sieht es im Spiel aus (Objekte müssten sich treffen): So sieht es im "Scene-Tab" aus:
×