Was ist ist eine invalid solid structure?

Eine invalid solid structure ist ein ungültiger Brush, z.B. ein konkaver Brush, mit dem Half-Life nicht umgehen kann. Nur konvexe Brushes sind gültige Brushes. Im Folgenden sind verschiedenen Möglichkeinten aufgelistet eine invalid solid structure zu bauen.

Ein Brush, der ...

... konkav ist

  • Ursache:
    Unvorsichtige Anwendung des Vertex-Tools.
  • Fehlermeldung:
    • Hammer:
      • invalid solid structure
    • vbsp:
      • Keine Fehler.
    • Console:
      • Host_EndGame: Map coordinate extents are too large!!
  • Abhilfe:
    Im Check-For-Problems-Dialog die Fehlermeldung anklicken und das auf den Fix-Button klicken, dadurch versucht Hammer den konkaven Brush in einen konvexen umzuformen. Teilweise schaft Hammer das aber nicht, der umgeformte Brush sieht zwar aus als wäre er konvex, aber man bekommt immer noch den Host_EndGame-Fehler beim Starten der Map. Dann muss man den Brush löschen und neubauen.

... "pseudo-geknickte" Flächen hat

  • Ursache:
    Unvorsichtige Anwendung des Vertex-Tools, wodurch eigentlich glatte Flächen eines Brushes geknickt wurden. Da man mit dem Vertex-Tool einzelne Eckpunkte eines Brushes bearbeiten kann, kann man auch eine einzelnen Eckpunkt einer Brushfläche so verschieben, dass er nicht mehr in der gleichen Ebene wie die anderen drei liegt. Dadurch entsteht dieser Knick in der Fläche.
  • Fehlermeldung:
    • Hammer:
      • invalid solid structure
    • vbsp:
      • Keine Fehler, da vbsp den „Knick“ selbst aus der Fläche „herausbügelt“.
    • Console:
      • Keine Fehler.
  • Abhilfe:
    Im Check-For-Problems-Dialog die Fehlermeldung auswählen und auf den Fix-Button klicken, dadurch wird die geknickte Flächen (genauso wie durch vbsp) glatt „gebügelt“.
  • Besser:
    Gilt nur für Viereckige Seiten! Wenn Hammer den Brush glattbügelt kann es vorkommen das er plötzlich unschön an Stellen hervorsteht an denen er eigentlich bündig anliegen sollte. Besser ist es den Brush genau an der Knickstelle, also von einer Ecke zur anderen Ecke, in zwei Dreiecke zu zerschneiden. Dreiecke können nicht Konkav werden. So behält alles seine gewünschte Form.

... "umgekrempelt" ist

So ähnlich, wie eine Socke, die auf die falsche Seite gezogen wurde.

  • Ursache:
    Unvorsichtige Anwendung des Vertex-Tools.
  • Fehlermeldung:
    • Hammer:
      • Keine Fehler.
    • vbsp:
      • Brush <BrushID>: no visible sides on brush
    • Console:
      • Host_EndGame: Map coordinate extents are too large!!
  • Abhilfe:
    Betreffenen Brush per BrushID lokalisieren und entweder löschen, oder per Vertex-Tool wieder „zurückgekrempelt“.

... in einer oder mehreren Dimensionen keine Ausdehnung hat

  • Ursache:
    Man kann mit dem Vertex-Tools zwei Eckpunkte eines Brushes zu einem verschmetzen. Hierbei fragt Hammer aber vorher nach ob es das tun soll. Verschmitzt man die jeweils vier gegenüberliegenden Eckpunkte eine Brushes verliert er die Ausdehnung in einer Dimension.
  • Fehlermeldung:
    • Hammer:
      • Keine Fehler.
    • vbsp:
      • WARNING, microbrush
      • WARNING: node with unbounded volume
      • FindPortalSide: Couldn't find a good match for which brush to assign to a portal near (<X>, <Y>, <Z>)
        Leaf 0 contents: CONTENTS_SOLID
        Leaf 1 contents:
        viscontents (node 0 contents ^ node 1 contents): CONTENTS_SOLID
        This means that none of the brushes in leaf 0 or 1 that touches the portal has CONTENTS_SOLID
        Check for a huge brush enclosing the coordinates above that has contents CONTENTS_SOLID
        Candidate brush IDs: Brush <BrushID>
    • Console:
      • Keine Fehler, da keine .bsp erstellt wird.
  • Abhilfe:
    Betreffenen Brush per BrushID lokalisieren und löschen.
Die Verwendung aller Dokumente einschließlich der Abbildungen ausschließlich zu nichtkommerziellen Zwecken. Verbreitung des Dokuments auf Speichermedien, (insbesondere auf CD-ROMs als Beilage zu Zeitschriften und Magazinen oder sog. "Mission-Packs" etc.) ist untersagt.
 
Angemeldet als: ()
half-life_2/tutorials/invalid_solid_structure.txt · Zuletzt geändert: 2008/10/30 12:39 von Kloetengott