Verwenden von Raii -Puffern für Uniformen in VulkanC++

Programme in C++. Entwicklerforum
Anonymous
 Verwenden von Raii -Puffern für Uniformen in Vulkan

Post by Anonymous »

Das Problem
Ich folge diesem Raii -Vulkan -Beispiel, um einen einheitlichen Puffer zu erstellen. Die Vulkan-HPP-Proben nicht direkt zusammenstellen, sondern diese in einem minimalen Projekt wiederholt. Ich verwende ein M1 -MacBook und fügte die Erweiterung vk_khr_portability_enumeration und eenumeratePortabilityKHR Instanzerstellung Flag -Bit hinzu. Ich habe hier einen Kern mit einem minimal reproduzierbaren Beispiel gemacht.

Code: Select all

uint8_t* pData = static_cast(uniformDataMemory.mapMemory(0, memoryRequirements.size));
memcpy(pData, &mvpc, sizeof(mvpc));
uniformDataMemory.unmapMemory();
Die variable MVPC ist nur ein GLM :: MAT4X4 . Das Programm kompiliert, stürzt jedoch mit einem "ungültigen Zugriffs" -Fehler ab. Der Fehler lautet: < /p>

Code: Select all

Exception: EXC_BAD_ACCESS (code=2, address=0x1026d4000)
Hinweis: Wenn ich keinen Debugger beigefügt habe, wird das Programm mit Code 0 ausgeführt und beendet. > < /p>
Ich möchte mein Verständnis darüber klären, was hinter den Kulissen vor sich geht. : Buffer enthält nur eine Beschreibung, wie ein Puffer verwendet wird und wie groß er ist. Ich erstelle das zuerst, um herauszufinden, welche Anforderungen es für den GPU -Speicher hat. Ich muss einen Index für den Speichertyp der GPU finden, der die Anforderungen meines Puffers erfüllt. Speicher auf der GPU. Der Speicher wird für die Lebensdauer des Objekts existieren. Gib mir eine void*, auf die ich eine Reihe von Bytes schreiben kann. Der Parameter der Größe des Vk :: majoreRequirements aus meinem Puffer.
[*] Die Größe in Speicheranforderungen ist Größer als die Größe der Daten, die ich kopiere, daher sollte das Memcpy sicher sein. Was mich frage, ob das Problem

die Frage
lautet Meine Annahmen oben falsch? Wenn nicht, was sind einige mögliche Gründe und wie kann ich sie testen? Danke im Voraus :)

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post