Jump to content
Unity Insider Forum

Darktower

Members
  • Content count

    5
  • Joined

  • Last visited

Community Reputation

0 Neutral

About Darktower

  • Rank
    Newbie
  1. var menge = new HashSet<int>(); //... aktuellePositionX = this.transform.position.x; if (menge.Contains(aktuellePositionX)) { Debug.Log("Position " + aktuellePositionX + " bereits betreten."); } else { menge.Add(aktuellePositionX); Debug.Log("Position " + aktuellePositionX + " das erste mal betreten und dem Index hinzugefügt."); } Dieser Code erfüllt eigentlich alles was du in deinem Eingangspost umständlich erreichen wolltest. Hoffe das hilft dir falls du es mittlerweile nicht schon selbst gelöst hast.
  2. Danke für die Links! Jetzt weiß ich einmal in welche Richtung ich weiter recherchieren muss.
  3. einmal Danke für eure schnellen Antworten! @malzbie Deine Youtube-Serie zu den Unity-Grundlagen war mein erstes Tutorial zu Unity, welche mir wirklich weiter geholfen hat, bzw. mein Verständnis zu Unity wirklich verbessert hat. Äußerst kompetent und gut verständlich, großes Lob! Exakt das will ich erreichen Diesen Ansatz werde ich verfolgen. Danke für den Tipp! Dieser Ansatz wäre schon eindeutig, da ich ein zweites Image mit den exakten Maßen des Orginalspielbretts erstellen würde und jede Region mit einer eindeutigen Farbe anpinseln würde. Diese Farbwerte könnte ich dann mit einem Ray, wie oben von dir vorgeschlagen abfragen und den jeweiligen Regionsscripten zuordnen. Aber da dieser Lösungsansatz noch in keinster Weise mein Problem mit dem einfärben der einzelnen Regionen löst, ist dieser Ansatz wohl nicht zu empfehlen. Das Spielfeld wäre flach und man würde nur das (hochaufgelöste) Image des Spielbretts sehen. Würde ich Berge/Bäume usw. in 3D einbauen, hätte ich eventuell Schwierigkeiten Platz für meine Truppen (diese werden 3D sein) zu finden. Außerdem würde wohl die Übersicht darunter leiden. So sehe ich das zumindest derzeit, lasse mich aber gerne eines Besseren belehren. Dies klingt schon einmal sehr gut. Mit Blender habe ich mich überhaupt noch nie auseinander gesetzt. Ich habe da jetzt keine Ahnung, wie ich da aus so einem 4eck-Polygon am einfachsten die Regionen rausschneiden kann. Da würde ich ja so eine Art freihändige Schere brauchen, welche mir in der Draufsicht senkrechte Schnitte durch das Polygon macht (also so stelle ich mir das zumindest vor). Nach welchen Blender-Werkzeugen bzw. Stichworten/Keywords muss ich da suchen? Google bringt mich da nicht wirklich weiter.
  4. Nachdem hier keine Antworten kommen, nehme ich an, dass ich mein/e Problem/Frage nicht verständlich genug beschrieben habe oder, dass ich den Eindruck vermittelte, dass ich hier nach ner fertigen Lösung bzw Code frage, was nicht der Fall ist. Ich programmiere, speziell mit C# schon einige Jahre (hobbymäßig), habe mich aber bis vor ein paar Tagen noch nie mit Unity3D und ähnlichen Engines auseinander gesetzt. Darum tute ich mir noch ziemlich schwer, Lösungswege für für verschiedene Probleme, speziell im Grafik/3D-Bereich zu finden. Mein Hobbyprojekt ist langfristig (bis zu gut 2 Jahren) angelegt. Es geht um eine Umsetzung eines Strategiebrettspieles (ne Art Risiko mit erweiterten Regeln) für den Computer. Das Ganze soll in einer 3D-Umgebung umgesetzt werden. Wobei die Entscheidung für 3D viel mehr optische als spielerische Gründe hat. Der komplette Ablauf bzw. Regeln des Spiels sind vorhanden. Auch eine ziemlich genaue Vorstellung WAS das Game für Features hat und wie es zu bedienen sein soll. In der jetzigen sehr frühen Projektphase, geht es mir einmal primär darum, die einzelnen Features grob zu durchdenken und zu schauen, wie ich Diese in Unity3D umsetzen kann. Zu den meinsten Themen habe ich schon genügend Informationsquellen gefunden, wie welches Feature sinnvoll verwirklicht werden kann. Es ist ein hochaufgelöstes Image (ca. 300MB) des Spielbrettes vorhanden. Dieses würde ich auch gerne im Game als sichtbaren Untergrund verwenden. Und hier beginnt schon mein Problem, wo ich auch nach stundenlagem googeln keine Lösungswege gefunden habe. Zuerst einmal. Wie sollte ich das Image des Spielbretts am besten in die 3D-Umgebung integrieren? Ist das in Verbindung mit einem Terrain oder besser in einem gewöhnlichen Cube zu machen oder gibt es da überhaupt andere Werkzeuge, welche für Images besser geeignet sind? Weiters muss ich natürlich auch wissen, in welcher Region sich meine Truppen gerade befinden. Wie schon im ersten Post geschrieben, sind die Regionen in ihrer Form und Größe unregelmäßig. Hierzu wäre meine Idee gewesen, einen weiteren unsichtbaren Layer direkt unter dem Spielbrett-Image anzulegen, wo jede Region eine individuelle Farbe hat. Die Maus kann dann auf diesen Layer zugreifen und anhand des RGB-Codes die Region ermitteln. Das wäre eine Lösung, wahrscheinlich nicht die Beste. Weiters will ich auch jede Region farblich herausheben können, wenn man die Maus oder Truppen in eine Region bewegt. Hier kam meine Idee ins Spiel, für jede einzelne Region ein transparentes GameObjekt bzw. Cube zu haben, welcher seine Farbe gegebenenfalls ändert, sodass eine farbliche Heraushebung einer Region erreicht wird (der sichtbare Layer des Spielbretts müsste dann natürlich leicht transparent sein). Ich habe aber keine Ahnung wie ich diese einzelnen GameObjects für meine Regionen generieren kann. Und auch hier wieder, dass ist eine Idee für eine Lösung, aber wahrscheinlich auch nicht die Beste. Wie würdet ihr dieses Problem angehen. Mit welchen Funktionen von Unity oder etwa auch Blender muss ich mich dafür auseinander setzen? Weiss wer Tutorials für ähnliche Dinge? Ist mein Problem immer noch nicht klar, bitte fragt mich, was nicht klar ist. Danke ;)
  5. Hallo erstmal! Meine Ausgangslage bzw was ich eigentlich erreichen will: Ich habe vor, ein Strategiebettspiel (ähnlich wie Risiko) in Unity umzusetzen. Dabei haben die Regionen keine einheitlichen Größen (wie auch bei Risiko). Um die verschiedenen Regionen anzusprechen, habe ich einen mehrschichtigen (mehrere Layer übereinander) Aufbau des Spielbretts vor. Im untersten Layer befindet sich ein Image wo für jede Region eine eigene Farbe ist. Mittels dieser für jede Region einzigartigen Farbe, kann die Region an einer beliebigen Position ermittellt werden. Im 2.Layer befindet sich der eigentliche Spielplan. Danach hätte ich einen transparenten leeren Layer (um Diesen geht es bei meinem Problem). Und als letzten Layer habe ich nochmals den Spielplan mit einer geringen Transparenz. Was ist mein Ziel?: Ich will, wenn man z.b. mit er Maus auf eine Region geht, die Region leicht grün oder rot (je nachdem, ob man dort eine Aktion ausführen darf) aufleuchtet. Meine Idee wäre, in dem 3 transparenten Layer ein Image dynamisch zu erzeugen, welches eine rote/grüne Fläche überall dort erstellt, wo der Farbcode mit der Region identisch ist. Nur habe ich keine Ahnung wie das genau funktionieren soll, bzw. ob das überhaupt so einfach möglich ist. Oder gibt für mein Problem andere, bessere Lösungen? Danke im Vorraus für eure Hilfe!
×