Best way to go: ein grosse kombinierte Mesh oder verschiedene kleine Meshes?

Willkommen in der Transport Fever Community

Wir begrüßen euch in der Fan-Community zu den Spielen Transport Fever und Train Fever, den Wirtschaftssimulatoren von Urban Games. Die Community steht euch kostenlos zur Verfügung damit ihr euch über das Spiel austauschen und informieren könnt. Wir pflegen hier einen freundlichen und sachlichen Umgang untereinander und unser Team steht euch in allen Fragen gerne beiseite.

 

Die Registrierung und Nutzung ist selbstverständlich kostenlos.

 

Wir wünschen euch viel Spaß und hoffen auf rege Beteiligung.

Das Team der Transport-Fever Community


  • Von der Performance her sind wohl weniger Meshes besser, da weniger drawCalls und dergleichen. Fürs "Organisieren" sind mehrere Einzelmeshes oft praktischer. Sprich ein Grundmesh (Wagenkasten) und diverse Anbauten als einzelne Meshes (Spiegel, Dachaufbauten...). So kann man sich ggf seperate Meshes für unterschiedliche LoD's sparen, weil man einfach die "Detail-Meshes" weglässt. Mehrere Texturen/Materialien in einem Mesh sind für manche eventuell verwirrend und daher wird auch hier gern pro Material ein eigenes Mesh genutzt, aber nötig ist das nicht.


    Was ich nich so ganz weiß: Bringt es was, wenn man für entfernte LoD's ein eigenes Material nutzt? Prinzipiell sind dazu die MipMaps gut, praktisch gehts mir aber um sowas wie ne NormalMap, die man auf Distanz ned wirklich brauch. Zudem kann die Textur selber auch recht klein sein, womit der Textur-Mehraufwand nicht allzu stark ausfallen dürfte, man sich aber sinnlose Berechnungen im Shader für eben die NormalMap spart.


    hmm ^^

  • praktisch gehts mir aber um sowas wie ne NormalMap, die man auf Distanz ned wirklich brauch.

    Meinste wirklich das TPF nicht benötigte Texturen wieder aus dem Grafikartenspeicher schmeisst wenn sie grade nicht benötigt werden? Würde mich wundern, vor allem weil sie dann ja wieder neu geladen werden müssten.

  • viele kleine Meshes haben auch den Vorteil, dass ich weniger Mappingaufwand habe. Ich modelliere und mappe 1 Tür und kopier die dann dorthin wo halt Türen sind.


    und es ist auch übersichtlicher. Wenn ich zB nur das Dach ändern will interessiert mich der Wagenkasten Nüsse. Wenn er ein Einzelmesh is blend ichs aus und gut is.

    MfG, die Licaon

  • Das eher weniger Maik, ich meinte da wirklich eher den Berechnungsaufwand im Shader, den man sich spart. Die Textur is so oder so drin, also die große mit Normal usw, aber ein 2. Material ohne Normal bräuchte ja vllt nur ne 512x512 Textur welche von der Datenmenge verschmerzbar wäre, denk ich mal, aber man spart sich halt den Berechnungsaufwand. War so der Gedanke. Tauscht man halt bissel Speicher gegen bissel Berechnungen. 11

  • Ich würde mal sagen:


    - Zum Bauen möglichst viele Meshes. Ist einfacher wegen Duplizieren, Spiegeln usw.
    - Zum Exportieren dann alle unbeweglichen Meshes so weit wie möglich zusammenfassen: Also Körper mit allen Anhängseln als eine Mesh. Ausnahme: Bei verschiedenen Texturen (wenn nicht vermeidbar) die Meshes separieren.

  • Danke Alle für die Antworten :)


    Nur mit viele Meshes habe ich das Problem mit die Meshname. Die sollen doch nur einmal vorkommen in das ganze Spiel?


    Blender nennt dann alle Cilinder Meshes Cilinder.001 usw. Und in eine andere Mod heissen die schon wieder Cilinder.001 usw.
    Ich muss dann jedes Mal manuell alle Meshname ändern.
    Mit eine grosse kombinierter Mesh hab ich dazu viel weniger Aufwand.
    Oder mach ich hier etwas falsch?

  • Die Mesh's sollten alle eindeutige namen haben, alles andere führ nur zu Problemen (u.U auch mit anderen Mods wo die Mesh auch nur cylinder heissen)


    Außerdem findet man deutlich schneller Fehler oder falsche Zuweisungen wenn man auf Anhieb weiss in welchem Mesh man suchen muss. Klar findet man auch das Mesh cylinder.074 aber br442_wagenkasten ist einfach schneller.

  • Noch ein Punkt. Wenn du mit dem Blender fertig bist, dann kommen irgendwann die Animationen, und die macht man normalerweise mit dem Texteditor.


    Es ist nur möglich, ein ganzes Mesh oder eine ganze Gruppe am Stück zu animieren; nur ein paar Punkte aus einem Mesh heraus kann man im Spiel nicht animieren. Also wirst du alleine schon deswegen bei den meisten Projekten mehr als ein Mesh haben: Räder, Türen, Propeller und alles andere, was sich bewegt, kann man nicht mit dem großen Rumpf des Projekts in ein .msh reinstopfen.


    Hier stellt sich dann die Frage: Womit möchtest du lieber arbeiten? Eine elendig lange Liste von "circle.001.msh", "cylinder.183.msh" etc. oder doch lieber etwas sinnvoll Benanntes, bei dem dir schon der Name sagt, was es ist? Die erste Methode geht auch, die zweite ist aber schneller :) und bietet auch noch den Vorteil, daß du im Spiel ziemlich sicher keine doppelten Namen hast.


    Ich habe bei meinem zweiten Mod auf die harte Tour lernen müssen, daß auch die Materialien individuelle Namen haben müssen: die Textur von der Il-18 sieht zwar auf der Il-18 ganz passabel aus, aber auf der Tu-104 einfach nur mistig... auch dieses Problem erspart man sich, wenn man gleich einmalige Namen wählt.

BlueBrixx