Erste Schritte mit Vulkan

In diesem Dokument werden die ersten Schritte mit der Vulkan-Grafikbibliothek beschrieben. Durch Herunterladen, Kompilieren und Ausführen der Khronos©-Beispiel-App

Voraussetzungen

Bevor Sie beginnen, sollten Sie prüfen, ob Sie die richtige Hardware- und Plattformversion vorbereitet haben. Du solltest ein Gerät oder einen Emulator verwenden, das Vulkan, mit Android 7.0 (Nougat), API-Level 24 oder höher.

Welche Android-Version Sie haben, können Sie im Menü Einstellungen überprüfen. und wählen Sie Über das Telefon > Android-Version. Sobald Sie sich vergewissert haben, Sie die richtige Hardware- und Plattformversion eingerichtet haben, können Sie die erforderliche Software herunterladen.

Herunterladen

Bevor Sie beginnen, müssen Sie mehrere Tools und weitere Software herunterladen. Auf einem Windows-Host wird empfohlen, eine tiefe Dateipfadhierarchie für Tools und Quellcode zu vermeiden. Damit umgehen Sie Dateipfadbeschränkungen bei einigen Windows-Versionen.

  1. Wenn Sie Android Studio noch nicht haben, laden Sie es herunter. Dazu gehört auch das neueste Android SDK.
  2. Installieren Sie das NDK und CMake über Android Studio. oder sie herunterladen und separat installieren.
  3. Erstellen Sie das Hello JNI-Beispiel und führen Sie es aus. um sicherzustellen, dass Android Studio ordnungsgemäß funktioniert.
  4. python3 und andere in build.md aufgeführte Komponenten installieren für Ihre Hostplattform.

Importieren

In diesem Abschnitt laden Sie das Khronos©-Vulkan©-Beispiel-Repository herunter und generieren einen Android-Gradle-Gradle-Code. und dann mit der Android Studio-IDE öffnen.

  1. Legen Sie die folgenden Umgebungsvariablen fest:
    export ANDROID_HOME=/path/to/sdk-directory
    export ANDROID_NDK_HOME=$ANDROID_HOME/ndk/{your-ndk-version-dir}
    
  2. Fügen Sie CMake dem $PATH hinzu, der zum Generieren von Android-Build-Skripts verwendet wird:
    export PATH=$PATH:$ANDROID_HOME/cmake/{your-cmake-version}/bin
    
  3. Öffnen Sie ein Terminal und laden Sie den Quellcode in Ihr Entwicklungsverzeichnis herunter:
    cd dev-directory
    git clone --recursive https://github.com/KhronosGroup/Vulkan-Samples.git
    
  4. Befolgen Sie diese Anleitung (von Build.md). um das Android-Beispielprojekt zu generieren:
    cd Vulkan-Samples
    ./scripts/generate.py android
    
  5. Öffnen Sie Android Studio. Wählen Sie Datei > Öffnen und wählen Sie Vulkan-Samples/build/android_gradle/build.gradle Nach dem Laden von Android Studio sollte Folgendes angezeigt werden: Projekt:
    Beispielprojekt wird in Studio importiert.

    Abbildung 1: Das Beispielprojekt in Android Studio.

Kompilieren

Alle Beispiele in diesem Repository sind in einem Android-Projekt zusammengefasst. Um die führen Sie einen der folgenden Schritte aus:

  • Wenn Sie die Quellen einfach kompilieren möchten, verwenden Sie das Menü Build > Projekt erstellen oder drücken Sie die Tastenkombination Strg + F9.
  • Wählen Sie zum Generieren des Beispiel-APKs das Menü Build > aus. Build-Bundles/APKs > Build-APKs

Die Meldung über den erfolgreichen Build sollte im Fenster Build von Android Studio angezeigt werden. Falls Fehler angezeigt werden, beheben Sie diese und wiederholen Sie die Kompilierung.

Beispielprojekt mit Studio kompilieren

Abbildung 2: Einen erfolgreichen Beispiel-Build.

Ausführen

Stellen Sie vor dem Ausführen des Beispielprojekts sicher, dass Android Studio Ihr verbundenen Vulkan-Gerät oder Android-Emulator. Sie sollten eine Meldung wie die Folgendes:

Testgerät wird mit Studio verbunden.

Abbildung 3: Verbinde das Testgerät mit Android Studio.

So führen Sie das Projekt aus:

  1. Verwenden Sie das Menü Ausführen > Führen Sie „vulkan_sample“ aus oder klicken Sie auf die Schaltfläche „Ausführen“. in der Symbolleiste und warten Sie auf um die Beispiel-App auf Ihrem verbundenen Gerät zu installieren und zu starten.
  2. Autorisieren Sie auf dem verbundenen Android-Gerät die erforderlichen Zugriffsanfragen.
    • Aktivieren Sie Zugriff zum Verwalten aller Dateien zulassen und tippen Sie dann auf den Pfeil Zurück. um zum Hauptstartbildschirm des Beispiels zurückzukehren.
    • den Zugriff auf das Laufwerk zu erlauben:
      Zugriff auf das Laufwerk zulassen.

      Abbildung 4: Aktivieren Sie den Zugriff auf das Laufwerk.

  3. Der Bildschirm für das Hauptmenü sollte in etwa so aussehen:
    Beispiel-Hauptmenü.

    Abbildung 5: Beispiel für ein Hauptmenü.

  4. Sehen Sie sich die Beispielliste an und wählen Sie einige aus, die ausgeführt werden sollen. Wenn du noch keine Erfahrung mit der Vulkan-Entwicklung hast, kannst du mit „API-Beispielen“ beginnen. Wenn Sie beispielsweise auf „Hallo Dreieck“ tippen, sollte ein gerendertes Dreieck angezeigt werden. etwa so:
    Dreieck

    Abbildung 6: Hello Triange-Beispiel.

Ihr Entwicklungssystem ist jetzt so eingerichtet, dass Beispiele auf Ihrem Testgerät ausgeführt werden.

Vulkan-Beispiele werden für verschiedene Betriebssysteme entwickelt, unter anderem für und Mobilgeräte. Einige Beispiele unter Leistung, Erweiterungen und Die Tools sind möglicherweise instabil und stürzen auf deinem Gerät ab. Das kann verschiedene Gründe haben, als:

  • Die spezifischen Vulkan-Funktionen wurden nicht für Android entwickelt.
  • Ihre Android-Version wird nicht unterstützt.
  • Die GPU-Funktion Ihrer Hardwareplattform.

Erkunden

Der Java-Abschnitt des Vulkan-Beispiels stammt aus der Klasse NativeActivity. Sie besteht aus der üblichen Anwendung wie das Erstellen, Starten, Beenden und Löschen von Apps in der C/C++- Code. Der C/C++-Abschnitt des Beispiels enthält ein Beispiel-Framework. implementiert die Funktion zum Wechseln zwischen Unterstichproben zur Laufzeit. In einer sehr allgemeinen Android-Systemereignissen/-nachrichten den folgenden Pfad zum gelangen Sie zum Vulkan-Code der Beispiel-App:

  • NativeSampleActivity Java-Abschnitt
  • NativeSampleActivity C/C++-Abschnitt
  • android_native_glue-Code
  • android_main
  • Beispiel-Framework
  • Code eines Beispiel-Abos

android_main ist die Brücke zwischen NativeSampleActivity und dem App-Code. Das kann der Ausgangspunkt für die Verwendung des Beispielcodes sein. Wenn Sie gerade Wenn ihr euch auf die Vulkan-Quellen konzentrieren möchtet, könnt ihr den Code unter Vulkan_Samples\samples enthält Folgendes:

  • Beispiele für die Kategorie "api"
  • Beispiele für die Kategorie „Leistung“
  • Beispiele für die Kategorie „Erweiterungen“
  • Die „Tooling“-Beispiele

In Vulkan_Samples\shaders werden alle Shader gespeichert.

Sie können sich die Beispiele der Kategorie „API“ ansehen, um sich mit den grundlegenden Vulkan-Nutzung und das Beispiel-Framework. Dann können Sie mit dem Beispiele für die Kategorien „Leistung“ und „Erweiterungen“ Für Shader-Code können Sie in der Projektansicht in Android Studio

Dreiecks-Shader.

Abbildung 7: Erforschen Sie Shader mit Studio.

Weitere Informationen

Für die Vulkan API gibt es mehrere Versionen, sie wird also ausgereift. Der Vulkan Der Standardkomitee und die Vulkan-Community haben eine Vielzahl von Vulkanen die die Nutzung und Best Practices der API demonstriert. Die folgenden Die Liste enthält einige Ressourcen für die Entwicklung von Vulkan-Anwendungen: