// // Generated by StgSharp.GenerateGL on 2026-08-25 09:22:55Z // Version: 4.6 // using System; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using StgSharp.Graphics.OpenGL; namespace StgSharp.Graphics.OpenGL { public unsafe partial class OpenGLFunction { [MethodImpl(MethodImplOptions.AggressiveInlining)] public void MultiDrawArraysIndirectCount(uint mode, void* indirect, nint drawcount, int maxdrawcount, int stride) { Context.glMultiDrawArraysIndirectCount(mode, indirect, drawcount, maxdrawcount, stride); } [MethodImpl(MethodImplOptions.AggressiveInlining)] public void MultiDrawElementsIndirectCount(uint mode, uint type, void* indirect, nint drawcount, int maxdrawcount, int stride) { Context.glMultiDrawElementsIndirectCount(mode, type, indirect, drawcount, maxdrawcount, stride); } [MethodImpl(MethodImplOptions.AggressiveInlining)] public void PolygonOffsetClamp(float factor, float units, float clamp) { Context.glPolygonOffsetClamp(factor, units, clamp); } [MethodImpl(MethodImplOptions.AggressiveInlining)] public void SpecializeShader(GlHandle shader, ReadOnlySpan pEntryPoint, ReadOnlySpan pConstantIndex, ReadOnlySpan pConstantValue) { if (pConstantValue.Length != pConstantIndex.Length) { throw new ArgumentException("Span lengths controlled by numSpecializationConstants must match.", nameof(pConstantValue)); } fixed (byte* pEntryPointPtr = pEntryPoint) { fixed (uint* pConstantIndexPtr = pConstantIndex) { fixed (uint* pConstantValuePtr = pConstantValue) { Context.glSpecializeShader(shader.Value, pEntryPointPtr, checked((uint)pConstantIndex.Length), pConstantIndexPtr, pConstantValuePtr); } } } } } }