Zum Inhalt springen

Texturspeicher (VRAM)

Wie viel VRAM verwenden die Texturen auf mein Asset?

Antwort: Eine 4K-Textur braucht auf der Festplatte nicht denselben Platz wie im Grafikkartenspecher. In der GPU liegt sie unkomprimiert (4 Byte pro Pixel für RGBA8) oder blockkompr imiert: BC1 braucht 8 Byte pro Block auf 4 × 4 Pixeln (0,5 Byte pro Pixel), und BC3 und BC7 brauchen 16 Byte pro Block (1 Byte pro Pixel). Mit Mipmaps kommt eine Kette von kleineren Versionen hinzu, die zusammen etwa ein Drittel extra kosten. Der Rechner addiert das für alle deine Karten, damit du sehen kannst, ob ein Asset in dein Budget passt.

Formel

Hukommelse pr. kort = bredde × højde × byte pr. pixel

BC1: 8 byte pr. 4×4-blok = 0,5 byte/pixel; BC3 og BC7: 16 byte pr. blok = 1 byte/pixel; RGBA8 ukomprimeret: 4 byte/pixel

Mip-kæden (½, ¼, ⅛ … af hver side) lægger 1/4 + 1/16 + … ≈ 1/3 til

Samlet = pr. kort × antal kort (fx 4 UDIM-tiles × 3 kort = 12)

Symbole und Einheiten in der Formel
SymbolBedeutungEinheit
oplTexturauflösung (quadratisch)px
byte_pr_pxFormat in der GPU
mipmapsMipmaps
antalAnzahl Texturkarten (UDIM-Kacheln × Karten pro Kachel)kort
=Gesamter SpeicherMB
=Pro TexturkarteMB
=Unkomprimiert zum VergleichMB
=Pixel pro KarteMP

Gültigkeit und Quelle

Quelle
Microsoft DirectX blokkomprimering: BC1 = 8 byte, BC3/BC7 = 16 byte pr. 4×4 pixels; mip-kæde ≈ +⅓

Gilt nicht, wenn

  • MB ist hier 1024 × 1024 Byte, wie die Motoren es anzeigen. Normalmaps werden oft als BC5 komprimiert (1 Byte/Pixel, zwei Kanäle), und HDR-Texturen als BC6H (1 Byte/Pixel). Textur-Streaming in Unreal hält nur die Mip-Level im Speicher, die benötigt werden, daher kann der tatsächliche Verbrauch niedriger sein.

Rechenbeispiel

Die eigenen Standardwerte des Rechners sind eingesetzt. Die Zahlen sind mit genau der Formel berechnet, die das Werkzeug verwendet.

Sat ind

  • Texturauflösung (quadratisch)4.096 px
  • Format in der GPU1
  • Mipmaps1
  • Anzahl Texturkarten (UDIM-Kacheln × Karten pro Kachel)12 kort

Geber

  • Gesamter Speicher256 MB
  • Pro Texturkarte21,3 MB
  • Unkomprimiert zum Vergleich1.024 MB
  • Pixel pro Karte16,8 MP

Der Rechner selbst ist gesperrt

Lege einen kostenlosen Zugang an, um alle Artikel, Rechner, Vorlagen und das Sortiment freizuschalten — und Zugriff auf Quizze und Klassen zu erhalten. Es dauert unter einer Minute: Name, E-Mail und ein Passwort. Keine Zahlungskarte.

Willst du zuerst etwas ausprobieren? Sieh, was du ohne Konto nutzen kannst — der Junior-Bereich, das Lexikon, die Videos und mehr.

Sådan bruger du den

Når et asset skal ind i et realtime-projekt, skal teksturerne holde sig inden for et hukommelsesbudget, især på mobil og VR. Beregneren regner, hvor meget dine teksturkort fylder i grafikkortet, med og uden komprimering og mipmaps.

Schritt für Schritt

  1. Vælg teksturens opløsning.
  2. Vælg det format, motoren komprimerer til: BC7 til farve, BC1 til simple kort uden alfa.
  3. Vælg om der er mipmaps. Det er der næsten altid i 3D.
  4. Skriv antal kort: UDIM-tiles gange kort pr. tile (fx albedo, normal og ORM).

Typische Fehler

  • At bruge 4K på alt. En lille prop på skærmen har ikke brug for det.
  • At gemme teksturer ukomprimeret i motoren uden grund.
  • At glemme at hver UDIM-tile er sin egen tekstur.

Beispiele aus dem Alltag

Hero-karakter med UDIMs

En karakter til en cinematic har 4 UDIM-tiles i 4K, hver med 3 kort (albedo, normal, ORM). Motoren bruger BC7 og mipmaps.

Texturauflösung (quadratisch)
4K (4096 × 4096)
Format in der GPU
BC7 oder BC3/DXT5 (1 byte/Pixel)
Mipmaps
Mit Mipmaps
Anzahl Texturkarten (UDIM-Kacheln × Karten pro Kachel)
12 kurz

Es bedeutet: Teksturerne fylder 256 MB i VRAM, 21,3 MB pr. kort. Ukomprimeret ville det være 1.024 MB.

Prop til et mobilspil

En tønde til et mobilspil har 3 kort i 1K med BC1-komprimering og mipmaps.

Texturauflösung (quadratisch)
1K (1024 × 1024)
Format in der GPU
BC1/DXT1 (0,5 byte/Pixel)
Mipmaps
Mit Mipmaps
Anzahl Texturkarten (UDIM-Kacheln × Karten pro Kachel)
3 kurz

Es bedeutet: Tønden bruger kun 2 MB. Det er et fornuftigt niveau for en lille prop.

Ukomprimeret UI-tekstur

Et stort UI-billede i 2K er sat til ukomprimeret RGBA uden mipmaps for at holde skarpheden.

Texturauflösung (quadratisch)
2K (2048 × 2048)
Format in der GPU
Unkomprimiert RGBA8 (4 bytes/Pixel)
Mipmaps
Ohne Mipmaps
Anzahl Texturkarten (UDIM-Kacheln × Karten pro Kachel)
1 kurz

Es bedeutet: Det ene billede fylder 16 MB. Overvej om BC7 er godt nok, så det kun fylder en fjerdedel.

Faustregel

En 4K-tekstur i BC7 med mipmaps fylder ca. 21 MB. Ukomprimeret fire gange så meget.

So überprüfst du die Antwort

Pr. kort × antal kort skal give den samlede hukommelse.