2016-12-31 2 views
-1

Wie komprimierte Texturen in Vulkan zu verwenden? Ist es genauso wie bei nicht komprimierten Texturen mit Formaten aus komprimierten Formaten? Wenn ja, wenn wir Daten vom Speicher zur GPU kopieren, wie berechnen wir dann die Größe der Bilddaten? Nehmen wir an, wir haben Format wie VK_FORMAT_ASTC_4x4_UNORM_BLOCK Wie erhalten wir die Größe der zu kopierenden Daten?Größe der komprimierten Texturen in Vulkan

+0

Ihre Frage ist sehr breit. Vulkan's Umgang mit komprimierten Texturen ist in der Spezifikation relativ gut definiert. Es ist nicht klar, mit welchem ​​Teil du Probleme hast. –

+0

@ NicolBolas können Sie mir bitte darauf hinweisen? – debonair

+0

Die Vulkan-Spezifikation ist verfügbar in der Vulkan-Registrierung (https://www.khronos.org/registry/vulkan/). –

Antwort

0

Für Texeladressierung auf die gleiche Weise, außer Sie sollten nicht in den Block schneiden (d. H. Sollte in entsprechenden Vielfachen in der gegebenen Achse sein).

Für Byte-Adressierung ist es auch ganz offensichtlich. Die Bitgrößen werden neben den Formaten in 32.3.1 aufgelistet. Format Definition Kapitel.

z. Bildkopie-Befehl verwendet Texeladressierung. Für VK_FORMAT_ASTC_4x4_UNORM_BLOCK wäre es das gleiche wie für jedes unkomprimierte Format mit Ausnahme der Breite und Höhe Offset und die Größe muss ein Vielfaches von 4.

+0

Können Sie mir Referenzlinks geben? Ich bin mir nicht ganz im Klaren über Daten-Uploads in VKimage – debonair