Files
stgsharp/test/StgSharp.GenerateGL/Generated/OpenGLFunction.Uniform.v4_0.g.cs
T

88 lines
3.5 KiB
C#

// <auto-generated>
// Generated by StgSharp.GenerateGL on 2026-08-25 09:22:55Z
// Uniform overloads introduced in OpenGL 4.0
// </auto-generated>
using System;
using System.Runtime.CompilerServices;
using StgSharp.Mathematics.Graphics;
namespace StgSharp.Graphics.OpenGL
{
public unsafe partial class OpenGLFunction
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public void SetUniformValue(Uniform<double> uniform, double v0)
{
ArgumentNullException.ThrowIfNull(uniform);
Context.glUniform1d(uniform.id.SignedValue, v0);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public void SetUniformValue(Uniform<double> uniform, ReadOnlySpan<double> values)
{
ArgumentNullException.ThrowIfNull(uniform);
fixed (double* valuesPtr = values) {
Context.glUniform1dv(uniform.id.SignedValue, values.Length, valuesPtr);
}
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public void SetUniformValue(Uniform<double, double> uniform, double v0, double v1)
{
ArgumentNullException.ThrowIfNull(uniform);
Context.glUniform2d(uniform.id.SignedValue, v0, v1);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public void SetUniformValue(Uniform<double, double> uniform, ReadOnlySpan<double> values)
{
ArgumentNullException.ThrowIfNull(uniform);
if ((values.Length % 2) != 0) {
throw new ArgumentException("Uniform data length must be divisible by 2.", nameof(values));
}
fixed (double* valuesPtr = values) {
Context.glUniform2dv(uniform.id.SignedValue, values.Length / 2, valuesPtr);
}
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public void SetUniformValue(Uniform<double, double, double> uniform, double v0, double v1, double v2)
{
ArgumentNullException.ThrowIfNull(uniform);
Context.glUniform3d(uniform.id.SignedValue, v0, v1, v2);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public void SetUniformValue(Uniform<double, double, double> uniform, ReadOnlySpan<double> values)
{
ArgumentNullException.ThrowIfNull(uniform);
if ((values.Length % 3) != 0) {
throw new ArgumentException("Uniform data length must be divisible by 3.", nameof(values));
}
fixed (double* valuesPtr = values) {
Context.glUniform3dv(uniform.id.SignedValue, values.Length / 3, valuesPtr);
}
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public void SetUniformValue(Uniform<double, double, double, double> uniform, double v0, double v1, double v2, double v3)
{
ArgumentNullException.ThrowIfNull(uniform);
Context.glUniform4d(uniform.id.SignedValue, v0, v1, v2, v3);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public void SetUniformValue(Uniform<double, double, double, double> uniform, ReadOnlySpan<double> values)
{
ArgumentNullException.ThrowIfNull(uniform);
if ((values.Length % 4) != 0) {
throw new ArgumentException("Uniform data length must be divisible by 4.", nameof(values));
}
fixed (double* valuesPtr = values) {
Context.glUniform4dv(uniform.id.SignedValue, values.Length / 4, valuesPtr);
}
}
}
}