Jump to content
Unity Insider Forum

RLe

Members
  • Content Count

    17
  • Joined

  • Last visited

Community Reputation

0 Neutral

About RLe

  • Rank
    Member
  1. Danke für die vielen Tipps und die Hilfe. Ich hab es mir überlegt und denke, dass es vielleicht doch einfacher ist, wenn der Nutzer eben ein paar grobe Vorgaben machen muss. Dabei wird das Mesh wahrscheinlich auch gleich "retopolisiert", was andernfalls bei einer rein algorythmischen Lösung vielleicht nicht der Fall wäre. Edit: Ich hab's immer noch nicht ganz raus. Zum allgemeinen Verständnis, meine Formen setzen sich aus Funktionen zusammen, die mittels Bezierkurve ermittelt wurden. Die Funktionen werden durch Start- und Endpunkte getrennt, und die Punkte bleiben auch nach der Erstellung weiterhin bekannt. Hier ist mal ein genaues Bild von meinem Programm mit einer erstellten Form: Die Quadrate an den Linie sind Punkte, also die Start- und Endpunkte einer jeweiligen Funktion, links sind die verschiedenen Tools, also Pen, Select und Circle. Oben sind das Startmenü und die verschiedenen 3D-Ansichten, also Front, Back, usw. Das rosa-farbene neben einer der Linien ist der Mauszeiger des Pen-Tools, der die Form eines Fillers hat. Ach ja, und die Punkte, die nicht direkt an zwei Linien angrenzen sind Bezierkurvenpunkte, die nur den Verlauf einer Kurve vorgeben. Es können aber auch Punkte durch das Anklicken von Linien hinzugefügt werden. Kann man das irgendwie berechnen? Sonst mache ich es so, dass wenn der User auf "Erstellen" klickt, dann ein zweiter Mode aufgeht, sozusagen ein "Retopo-Mode", in dem durch Anklicken und Verbinden neue Linien erstellt werden, die dann rot wären, und die den Verlauf der Vertices vorgeben würden, und das Programm würde sich dann um die Einzelheiten kümmern.
  2. Das weiß ich - momentan ist z an allen Stellen gleich.
  3. Ich verstehe nicht, was du meinst. Es geht nicht um 2D oder 3D. Das Mesh ist erst mal in 2D, habe schon eine Klasse für die Umwandlung in 3D. Jetzt geht es aber darum, aus der äußeren Form immer kleiner werdende innere Formen zu generieren, den Rest habe ich bereits geschafft.
  4. Korrekt sähe es wohl so oder so aus. Aber kann das ein Computer überhaupt? Ich denke, ich werde es wahrscheinlich so machen, dass halt diese eine Linie in der Mitte von Hand vorgeben muss, und dann kann es dazu die einzelnen Vertices erstellen.
  5. Ja, aber die Vertices liegen so. Das Mesh setzt sich aus verschiedenen Reihen zusammen, jede Reihe ist ein bisschen näher am Mittelpunkt. Funktioniert wunderbar bei Kreisen und änlichen Formen. Nur ist es nicht ganz das, was sein soll.
  6. Danke für den Tipp, hab's zwar noch nicht probiert, aber werde es mir mal angucken. Ein kleiner Hinweis: Dein Link führt nicht dahin, wo er soll. Aber wenn man die Textstelle kopiert, kommt man dahin. Trotzdem danke.
  7. Hallo, also das ist es, was es mir momentan gibt: Und das ist es, was ich gerne hätte: Ich hätte einfach gerne, dass die Vertices wirklich "ineinander" sind, nur weiß ich nicht, wie ich das machen soll.
  8. Ich bin mir nicht sicher, was du meinst. In Bild1 sind alle Vertices richtig, in Bild sind sie irgendwie. Die dunkle Linie auf dem Bild zeigt, wie die Form eigentlich sein sollte. Korrektur: Die dunkle Linie stellt die Form dar, die ich mit dem LineRenderer gezeichnet habe. Nun sollte das System die Form erkennen und das Mesh entsprechend anpassen.
  9. Hallo, liebe Community, erst mal wollte ich sagen, schön, dass die Community wieder da ist, als ich die letzten Male hier war, war die Community offline. Wobei ich sagen muss, dass ich über einen längeren Zeitraum hinweg im Urlaub war, daher weiß ich nicht, wie lange die Community schon wieder online ist. Aber jedenfalls schön, wieder hier posten zu können. Nun, folgendes Problem: Ich habe ein Programm erstellt, mit welchem man über den LineRenderer Linien erstellen kann. Außerdem kann man die Linien miteinander verknüpfen und mit einem Klick ein Mesh daraus erstellen. Hier ein Beispiel für ein erstelltes Mesh: Nun sieht aber nicht jedes Mesh so schön aus, hier ein Beispiel für ein nicht gelungenes Mesh: Ich würde das gerne ändern, nur will mir einfach kein Algorythmus einfallen, der die Punkte in die richtige Form bringt. Wie kann ich dem Programm mitteilen, wie die die Punkte liegen sollen? LG Raja
  10. Das Sprite, um welches es hier geht, ist bereits in einem Canvas und hat auch eine Rect-Transform-Komponente. Ich glaube, meine Frage war zunächst unklar formuliert, daher habe ich sie vorhin noch mal bearbeitet, hier ist Änderung: Edit: Ich denke, ich sollte mein Problem etwas genauer beschreiben. Also, ich habe selbst erstellte Sprites, welche ich in mein Spiel einfüge. Die Einstellungen seht ihr in dem Bild unten. Da mein Problem schwer in Worte zu fassen ist, füge ich zwei weitere Bilder bei, auf denen ihr sehen könnt, wie es aussieht, wenn ich es ein Sprite an eine andere Stelle schiebe. Es handelt sich auf beiden Bildern um dasselbe Sprite, nur der Blickwinkel zur Kamera scheint irgendwie anders zu sein. Hier sind die Einstellung des Sprites in der Scene View:
  11. Hallo, Leute, ich habe ein kleines Problem, das hier wahrscheinlich jeder kennt, aber ich weiß nicht, wie man es nennt, daher ist es schwer zu googeln. Und zwar geht, wie der Titel schon sagt, um das Thema Sprites vs Kamera. Es handelt sich um ein 3D-Spiel, welches allerdings Sprites beinhaltet, die die GUI darstellen. Nun ist das Ding, je nachdem, wo ein Sprite sich befindet, werden Teile von ihm nicht angezeigt. Kamera-Rotation ist dabei bei x,y und z immer 0, und das ändert sich auch nicht. Bei den Sprites genauso. Wie kriege ich es hin, dass die Sprites immer komplett zu sehen sind? Und wie bezeichnet man dieses Problem, welche Suchbegriffe muss ich googeln? Edit: Ich denke, ich sollte mein Problem etwas genauer beschreiben. Also, ich habe selbst erstellte Sprites, welche ich in mein Spiel einfüge. Die Einstellungen seht ihr in dem Bild unten. Da mein Problem schwer in Worte zu fassen ist, füge ich zwei weitere Bilder bei, auf denen ihr sehen könnt, wie es aussieht, wenn ich es ein Sprite an eine andere Stelle schiebe. Es handelt sich auf beiden Bildern um dasselbe Sprite, nur der Blickwinkel zur Kamera scheint irgendwie anders zu sein.
  12. Hallo, liebe Community, ich versuche die ganze gerade, einen 3d-Avatar in Laufzeit zu laden, aber es will einfach nicht hinauen. Mein Code: Resources.Load("3D_Objects/Finja_retopology_head_test"); habe auch schon versucht: Resources.Load("3D_Objects/Finja_retopology_head_test.obj"); Gleichmal: Mein Script wird in Unity aufgerufen. Dessen habe ich mich extra vergewissert. Nun hatte ich die Dokumention in Unity so verstanden, als müsste man alles in einen Ordner namens "Resources" machen, also wie der Quelltext hier: https://docs.unity3d.com/ScriptReference/Resources.Load.html?_ga=2.65254446.1037845241.1577054905-35281293.1572903849 Damit habe ich es dann auch versucht - nichts. Und auch keine Error-Message bei Unity, einfach gar nichts. Habe es auch so versucht: var finja = Resources.Load("3D_Objects/Finja_retopology_head_test"); Wenn ich es einfach so einfüge, klappts ohne Probleme, aber das ist ja nicht mein Ziel. Nehmts mir nicht übel, aber mich regt das einfach auf, wenn sowas einfaches nirgends richtig steht, ich habs ja schon gesucht, finde aber nichts, wie läd man ein 3d-Objekt mit C#? P. S.: Ich sehe, dass die in Unity mit <T> arbeiten. Aber daran kann es meines Wissens nach nicht liegen, oder? Ich schwöre, dass ich bei Google zwar Sachen finde, aber nicht das, was ich suche, ehrlich. Edit: Gelöst. Entschuldigung, falls ich etwas unhöflich rüber gekommen bin, ich hatte nicht gesehen, dass es nicht reicht, es einfach nur laden zu lassen. Hier mein Lösungsweg, für andere Einsteiger: \\Ordner "3D_Objects" in einem Ordner namens "Resources" var finja = Resources.Load("3D_Objects/Finja_retopology_head_test"); Instantiate(finja, new Vector3(0, 0, 0), Quaternion.identity); Funktioniert super!
  13. Vielen Dank für deine Hilfe! Habe jetzt die Lösung gefunden, und zwar geht es so: for (int i = 0; i <= sentences[index - 1].Length; i++) { text_object.text = file_text + sentences[index - 1].Substring(0, i); if (i == sentences[index - 1].Length) file_text += sentences[index - 1]; yield return new WaitForSeconds(delay); }
  14. Danke für den Hinweis. Hatte es auch schon bemerkt, wenn ich es korrigiere habe ich aber wieder das Problem, dass immer nur ein Teil meines Textes angezeigt wird. Was ich möchte: Ich drücke eine Taste, und es wird der erste Satz angezeigt. Ich drücke die gleiche Taste noch mal, und ein weiterer Satz wird hinzugefügt, und so weiter, bis der letzte Satz da ist. Aber was ich probiere, es ergibt nicht das, was ich will. Im Moment ist mein Code: IEnumerator ShowText() { for (int i = 0, index_count = 0; i <= file_text.Length; i++, index_count++) { sentence = ""; for (int l = 0; l < i; l++) sentence += sentences[l]; sentence += file_text.Substring(i, i - 1 + sentences[index].Length); text_object.text = sentence; yield return new WaitForSeconds(delay); } }
×
×
  • Create New...