daily update on 20240207 by nitload youmu

This commit is contained in:
Nitload
2024-02-07 13:47:12 +08:00
parent 8548757bbf
commit 6fe6b3b3cf
37 changed files with 231 additions and 196 deletions
@@ -19,6 +19,8 @@ namespace StgSharp.Graphics
internal IntPtr ClearColorPtr = (IntPtr)(delegate*<void>)&InternalClearColor;
internal IntPtr ClearGraphicErrorPtr = (IntPtr)(delegate*<void>)&InternalClearGraphicError;
internal IntPtr CompileShaderPtr = (IntPtr)(delegate*<void>)&InternalCompileShader;
IntPtr BindTexturePtr = (IntPtr)(delegate*<void>)&InternalBindTexture;
IntPtr BindVertexArrayPtr = (IntPtr)(delegate*<void>)&InternalBindVertexArray;
private IntPtr ClearPtr = (IntPtr)(delegate*<void>)&InternalClear;
private static void InternalActiveTexture()
@@ -37,9 +39,23 @@ namespace StgSharp.Graphics
private static void InternalBindBuffer()
{
uint t, i;
paramQueue.TryDequeue(out t, out i);
paramQueue.context->glBindBuffer(t, i);
M128 m = default;
paramQueue.TryDequeue(out m);
paramQueue.context->glBindBuffer(m.UInt32[0], *(uint*)m.IntPtr1);
}
private static void InternalBindTexture()
{
uint t, te;
paramQueue.TryDequeue(out t, out te);
paramQueue.context->glBindTexture(t, te);
}
private static void InternalBindVertexArray()
{
IntPtr i;
paramQueue.TryDequeue(out i);
paramQueue.context->glBindVertexArray(*(uint*)i);
}
private static void InternalClear()
@@ -115,51 +131,35 @@ namespace StgSharp.Graphics
throw new NotImplementedException();
}
private void InternalBindTexture(uint type, uint texture)
{
uint t, te;
paramQueue.TryDequeue(out t, out te);
paramQueue.context->glBindTexture(t, te);
}
private void InternalBindVertexArray(uint index)
{
uint i;
paramQueue.TryDequeue(out i);
paramQueue.context->glBindVertexArray(i);
}
private glHandle InternalCreateProgram()
IntPtr CreateProgramPtr = (IntPtr)(delegate*<void>)&InternalCreateProgram;
private static void InternalCreateProgram()
{
IntPtr programHandle = default;
paramQueue.TryDequeue(out programHandle);
*(uint*)programHandle = paramQueue.context->glCreateProgram();
return default;
}
private glHandleSet InternalCreateProgram(int count)
IntPtr CreateProgramSetPtr = (IntPtr)(delegate*<void>)&InternalCreateProgramSet;
private static void InternalCreateProgramSet()
{
throw new NotImplementedException();
IntPtr programHandle;
M128 m = default;
paramQueue.TryDequeue(out m);
programHandle = m.IntPtr0;
for (int i = 0; i < m.Int32[2]; i++)
{
*((uint*)programHandle + i) = paramQueue.context->glCreateProgram();
}
}
private IntPtr InternalCreateWindowHandle(int width, int height, string tittle, IntPtr monitor, Form share)
{
throw new NotImplementedException();
}
internal IntPtr DeleBufferPtr = (IntPtr)(delegate*<void>)&InternalDeleteBuffer;
private glHandle InternalCreatGraphicProgram()
private static void InternalDeleteBuffer()
{
throw new NotImplementedException();
}
private void InternalDeleteBuffer(uint handle)
{
throw new NotImplementedException();
}
private void InternalDeleteBuffers(glHandleSet handle)
{
throw new NotImplementedException();
M128 m = default;
paramQueue.TryDequeue(out m);
paramQueue.context->glDeleteBuffers(m.UInt32[2], (uint*)m.IntPtr0);
}
private void InternalDeleteVertexArrays(glHandleSet arrays)