diff --git a/Bindings/Bindings.csproj b/Bindings/Bindings.csproj
index 7127df4..b073098 100644
--- a/Bindings/Bindings.csproj
+++ b/Bindings/Bindings.csproj
@@ -5,7 +5,7 @@
Debug
AnyCPU
{A2B3BBC8-3D48-46DD-B3CF-263F554E4474}
- Library
+ Exe
Raylib
Bindings
v4.6.1
diff --git a/Bindings/Raylib.cs b/Bindings/Raylib.cs
index 5479185..e0683cf 100644
--- a/Bindings/Raylib.cs
+++ b/Bindings/Raylib.cs
@@ -507,23 +507,28 @@ namespace Raylib
// Vertex data definning a mesh
// NOTE: Data stored in CPU memory (and GPU)
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
- public struct Mesh
+ public unsafe struct Mesh
{
public int vertexCount;
public int triangleCount;
- public float[] vertices;
- public float[] texcoords;
- public float[] texcoords2;
- public float[] normals;
- public float[] tangents;
- public byte[] colors;
- public ushort[] indices;
+ public IntPtr vertices;
+ public IntPtr texcoords;
+ public IntPtr texcoords2;
+ public IntPtr normals;
+ public IntPtr tangents;
+ public IntPtr colors;
+ public IntPtr indices;
+
+ public IntPtr baseVertices;
+ public IntPtr baseNormals;
+ public IntPtr weightBias;
+ public IntPtr weightId;
+
public uint vaoId;
- [MarshalAs(UnmanagedType.ByValArray, SizeConst = 7)] // Raylib.PHYSAC_MAX_VERTICES)]
- public uint[] vboId;
+ public fixed uint vboId[7];
}
// Shader type (generic)
@@ -548,17 +553,43 @@ namespace Raylib
public Color color;
public float value;
}
+ public unsafe struct _MaterialMap_e_FixedBuffer
+ {
+ public MaterialMap maps0;
+ public MaterialMap maps1;
+ public MaterialMap maps2;
+ public MaterialMap maps3;
+ public MaterialMap maps4;
+ public MaterialMap maps5;
+ public MaterialMap maps6;
+ public MaterialMap maps7;
+ public MaterialMap maps8;
+ public MaterialMap maps9;
+ public MaterialMap maps10;
+ public MaterialMap maps11;
+
+ public ref MaterialMap this[int index]
+ {
+ get
+ {
+ fixed (MaterialMap* e = &maps0)
+ return ref e[index];
+ }
+ }
+ }
// Material type (generic)
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public struct Material
{
+
+
+
public Shader shader;
- [MarshalAs(UnmanagedType.ByValArray, SizeConst = Raylib.MAX_MATERIAL_MAPS)]
- public MaterialMap[] maps;
+ public _MaterialMap_e_FixedBuffer maps;
- public float[] param;
+ public IntPtr param;
}
// Model type