Page 1 of 1

Größe der benutzerdefinierten Struktur für den Berechnung von Shader -Stride

Posted: 09 Mar 2025, 13:43
by Anonymous
Ich versuche, einen Computer Shader mit Einheit zu schreiben, der Netzdaten (Scheitelpunkte, Normalen, UVs) für ein Voxel -Gelände erzeugt. Somit habe ich eine benutzerdefinierte Struktur wie folgt definiert: < /p>

[StructLayout(LayoutKind.Sequential, Pack = 0)]
private struct VertexData
{
public Vector3 position;

public Vector3 normal;

public Vector2 uv;
}
< /code>

Dann erstelle ich einen computeBuffer für den Computshader wie folgt: < /p>

vecterDataCBuf = new ComputeBuffer(ChunkSize * ChunkSize * ChunkSize, sizeof(VertexData));
< /code>

Ich erhalte den CS0233 -Fehler, in dem ich den Sizeof -Operator auf meiner benutzerdefinierten Struktur nicht verwenden kann, um den Schritt für den Rechenpuffer bereitzustellen, trotz des Verpackungsattributs, das ich hinzugefügt habe. Danke.