← SEARCHABLE ARCHIVE
Unreal Engine · 2026-07-12

Warum bestehen sechseckige Fliesen aus StaticMesh?

ProceduralMesh wird nicht immer benötigt

INTERACTIVE READING MODE →

Die in diesem Blog verfassten Artikel wurden mit dem Ziel erstellt, zu unterrichten. Außerdem können die Informationen im Artikel falsch sein, also seien Sie bitte vorsichtig.

Sechseckige Kacheln können auch direkt zur Laufzeit berechnet und in ein ProceduralMesh umgewandelt werden. Wenn die Form jedoch fest ist, gibt es keinen Grund, jedes Mal Scheitelpunkte und Indizes zu erstellen.

ProjectTB zeigt Kacheln anUStaticMeshComponentZur Basis geändert.

UPROPERTY(VisibleAnywhere, BlueprintReadOnly)
TObjectPtr<UStaticMeshComponent> TileMesh;

UPROPERTY(VisibleAnywhere, BlueprintReadOnly)
TObjectPtr<UStaticMeshComponent> TileOutlineMesh;

UPROPERTY(VisibleAnywhere, BlueprintReadOnly)
TObjectPtr<UStaticMeshComponent> CenterIconMeshComponent;

Wenn StaticMesh geeignet ist

  • Die Form der Kacheln ändert sich beim Laufen nicht.
  • Verwenden Sie das im Editor erstellte Netz und LOD wieder.
  • Konflikte und Materialplätze werden in Assets verwaltet.
  • Mehrere Kacheln teilen sich dasselbe Netz.

ProceduralMesh ist sinnvoll, wenn das Gelände selbst transformiert wird oder wenn Formen mit Benutzereingaben erstellt werden. StaticMesh ist einfacher, wenn Sie einfach die Größe und Farbe der festen Sechsecke ändern.

Separater visueller Zustand und Spielregeln

bool bIsMovementRangeHighlighted = false;
bool bIsAttackRangeHighlighted = false;

void SetRangeHighlights(
    bool bMovement,
    bool bAttack,
    FLinearColor MovementColor,
    FLinearColor AttackColor
);

Rasterregeln bestimmen, ob eine Bewegung möglich ist, und die Kachel ändert entsprechend dem Ergebnis ihre Materialfarbe. Nur weil eine Mesh-Komponente vorhanden ist, ist es nicht erforderlich, die Pfadnavigation in den Kachel-Akteur aufzunehmen.

Wenn die Anzahl der Kacheln deutlich größer wird, kann die Anzahl der Akteure und Komponenten selbst zur Belastung werden. Zu diesem Zeitpunkt sollte die Richtung der Bindung an InstancedStaticMesh oder HierarchicalInstancedStaticMesh überprüft werden.