Skip to main content

GlInterface Class

Definition

Namespace:Avalonia.OpenGL
Assembly:Avalonia.OpenGL
Package:Avalonia

GlInterface only includes essential members and members necessary for Avalonia itself. It is not a general-purpose interface for OpenGL API.

public class GlInterface

Inheritance: object -> GlBasicInfoInterface -> GlInterface

Remarks

Use Avalonia.OpenGL.GlInterface.GetProcAddress(string) to get GL procedures you need, or integrate it with third-party GL wrappers.

Constructors

NameDescription
GlInterfaceNo summary available.

GlInterface Constructor

public GlInterface(Avalonia.OpenGL.GlVersion version, Func<string, IntPtr> getProcAddress)

Parameters

version Avalonia.OpenGL.GlVersion

getProcAddress Func<string, IntPtr>

Methods

NameDescription
ActiveTextureNo summary available.
AttachShaderNo summary available.
BindAttribLocationNo summary available.
BindAttribLocationStringNo summary available.
BindBufferNo summary available.
BindFramebufferNo summary available.
BindRenderbufferNo summary available.
BindTextureNo summary available.
BindVertexArrayNo summary available.
BlitFramebufferNo summary available.
BufferDataNo summary available.
CheckFramebufferStatusNo summary available.
ClearNo summary available.
ClearColorNo summary available.
ClearDepthNo summary available.
ClearStencilNo summary available.
CompileShaderNo summary available.
CompileShaderAndGetErrorNo summary available.
CopyTexSubImage2DNo summary available.
CreateProgramNo summary available.
CreateShaderNo summary available.
DeleteBufferNo summary available.
DeleteBuffersNo summary available.
DeleteFramebufferNo summary available.
DeleteFramebuffersNo summary available.
DeleteProgramNo summary available.
DeleteRenderbufferNo summary available.
DeleteRenderbuffersNo summary available.
DeleteShaderNo summary available.
DeleteTextureNo summary available.
DeleteTexturesNo summary available.
DeleteVertexArrayNo summary available.
DeleteVertexArraysNo summary available.
DepthFuncNo summary available.
DepthMaskNo summary available.
DisableNo summary available.
DrawArraysNo summary available.
DrawElementsNo summary available.
EnableNo summary available.
EnableVertexAttribArrayNo summary available.
FinishNo summary available.
FlushNo summary available.
FramebufferRenderbufferNo summary available.
FramebufferTexture2DNo summary available.
FromNativeUtf8GetProcAddressNo summary available.
GenBufferNo summary available.
GenBuffersNo summary available.
GenFramebufferNo summary available.
GenFramebuffersNo summary available.
GenRenderbufferNo summary available.
GenRenderbuffersNo summary available.
GenTextureNo summary available.
GenTexturesNo summary available.
GenVertexArrayNo summary available.
GenVertexArraysNo summary available.
GetAttribLocationNo summary available.
GetAttribLocationStringNo summary available.
GetProcAddressReturns an OpenGL function by name.
GetProgramInfoLogNo summary available.
GetProgramivNo summary available.
GetRenderbufferParameterivNo summary available.
GetShaderInfoLogNo summary available.
GetShaderivNo summary available.
GetUniformLocationNo summary available.
GetUniformLocationStringNo summary available.
LinkProgramNo summary available.
LinkProgramAndGetErrorNo summary available.
RenderbufferStorageNo summary available.
ShaderSourceNo summary available.
ShaderSourceStringNo summary available.
TexImage2DNo summary available.
TexParameteriNo summary available.
Uniform1fNo summary available.
Uniform1iNo summary available.
UniformMatrix4fvNo summary available.
UseProgramNo summary available.
VertexAttribPointerNo summary available.
ViewportNo summary available.
GetErrorInherited from GlBasicInfoInterface.
GetExtensionsInherited from GlBasicInfoInterface.
GetFloatvInherited from GlBasicInfoInterface.
GetIntegervInherited from GlBasicInfoInterface.
GetString (2 overloads)Inherited from GlBasicInfoInterface.
GetStringNativeInherited from GlBasicInfoInterface.
GetStringiNativeInherited from GlBasicInfoInterface.

ActiveTexture Method

public void ActiveTexture(int texture)

Parameters

texture int

AttachShader Method

public void AttachShader(int program, int shader)

Parameters

program int

shader int

BindAttribLocation Method

public void BindAttribLocation(int program, int index, IntPtr name)

Parameters

program int

index int

name IntPtr

BindAttribLocationString Method

public void BindAttribLocationString(int program, int index, string name)

Parameters

program int

index int

name string

BindBuffer Method

public void BindBuffer(int target, int buffer)

Parameters

target int

buffer int

BindFramebuffer Method

public void BindFramebuffer(int target, int fb)

Parameters

target int

fb int

BindRenderbuffer Method

public void BindRenderbuffer(int target, int fb)

Parameters

target int

fb int

BindTexture Method

public void BindTexture(int target, int fb)

Parameters

target int

fb int

BindVertexArray Method

public void BindVertexArray(int array)

Parameters

array int

BlitFramebuffer Method

public void BlitFramebuffer(int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, int mask, int filter)

Parameters

srcX0 int

srcY0 int

srcX1 int

srcY1 int

dstX0 int

dstY0 int

dstX1 int

dstY1 int

mask int

filter int

BufferData Method

public void BufferData(int target, IntPtr size, IntPtr data, int usage)

Parameters

target int

size IntPtr

data IntPtr

usage int

CheckFramebufferStatus Method

public int CheckFramebufferStatus(int target)

Parameters

target int

Returns

int

Clear Method

public void Clear(int bits)

Parameters

bits int

ClearColor Method

public void ClearColor(float r, float g, float b, float a)

Parameters

r float

g float

b float

a float

ClearDepth Method

public void ClearDepth(float value)

Parameters

value float

ClearStencil Method

public void ClearStencil(int s)

Parameters

s int

CompileShader Method

public void CompileShader(int shader)

Parameters

shader int

CompileShaderAndGetError Method

public string CompileShaderAndGetError(int shader, string source)

Parameters

shader int

source string

Returns

string

CopyTexSubImage2D Method

public void CopyTexSubImage2D(int target, int level, int xoffset, int yoffset, int x, int y, int width, int height)

Parameters

target int

level int

xoffset int

yoffset int

x int

y int

width int

height int

CreateProgram Method

public int CreateProgram()

Returns

int

CreateShader Method

public int CreateShader(int shaderType)

Parameters

shaderType int

Returns

int

DeleteBuffer Method

public void DeleteBuffer(int buffer)

Parameters

buffer int

DeleteBuffers Method

public void DeleteBuffers(int count, int* buffers)

Parameters

count int

buffers int*

DeleteFramebuffer Method

public void DeleteFramebuffer(int fb)

Parameters

fb int

DeleteFramebuffers Method

public void DeleteFramebuffers(int count, int* framebuffers)

Parameters

count int

framebuffers int*

DeleteProgram Method

public void DeleteProgram(int program)

Parameters

program int

DeleteRenderbuffer Method

public void DeleteRenderbuffer(int renderbuffer)

Parameters

renderbuffer int

DeleteRenderbuffers Method

public void DeleteRenderbuffers(int count, int* renderbuffers)

Parameters

count int

renderbuffers int*

DeleteShader Method

public void DeleteShader(int shader)

Parameters

shader int

DeleteTexture Method

public void DeleteTexture(int texture)

Parameters

texture int

DeleteTextures Method

public void DeleteTextures(int count, int* textures)

Parameters

count int

textures int*

DeleteVertexArray Method

public void DeleteVertexArray(int array)

Parameters

array int

DeleteVertexArrays Method

public void DeleteVertexArrays(int count, int* arrays)

Parameters

count int

arrays int*

DepthFunc Method

public void DepthFunc(int value)

Parameters

value int

DepthMask Method

public void DepthMask(int value)

Parameters

value int

Disable Method

public void Disable(int what)

Parameters

what int

DrawArrays Method

public void DrawArrays(int mode, int first, IntPtr count)

Parameters

mode int

first int

count IntPtr

DrawElements Method

public void DrawElements(int mode, int count, int type, IntPtr indices)

Parameters

mode int

count int

type int

indices IntPtr

Enable Method

public void Enable(int what)

Parameters

what int

EnableVertexAttribArray Method

public void EnableVertexAttribArray(int index)

Parameters

index int

Finish Method

public void Finish()

Flush Method

public void Flush()

FramebufferRenderbuffer Method

public void FramebufferRenderbuffer(int target, int attachment, int renderbufferTarget, int renderbuffer)

Parameters

target int

attachment int

renderbufferTarget int

renderbuffer int

FramebufferTexture2D Method

public void FramebufferTexture2D(int target, int attachment, int texTarget, int texture, int level)

Parameters

target int

attachment int

texTarget int

texture int

level int

FromNativeUtf8GetProcAddress Method

public Avalonia.OpenGL.GlInterface FromNativeUtf8GetProcAddress(Avalonia.OpenGL.GlVersion version, Func<IntPtr, IntPtr> getProcAddress)

Parameters

version Avalonia.OpenGL.GlVersion

getProcAddress Func<IntPtr, IntPtr>

Returns

Avalonia.OpenGL.GlInterface

GenBuffer Method

public int GenBuffer()

Returns

int

GenBuffers Method

public void GenBuffers(int len, int* rv)

Parameters

len int

rv int*

GenFramebuffer Method

public int GenFramebuffer()

Returns

int

GenFramebuffers Method

public void GenFramebuffers(int count, int* res)

Parameters

count int

res int*

GenRenderbuffer Method

public int GenRenderbuffer()

Returns

int

GenRenderbuffers Method

public void GenRenderbuffers(int count, int* res)

Parameters

count int

res int*

GenTexture Method

public int GenTexture()

Returns

int

GenTextures Method

public void GenTextures(int count, int* res)

Parameters

count int

res int*

GenVertexArray Method

public int GenVertexArray()

Returns

int

GenVertexArrays Method

public void GenVertexArrays(int n, int* rv)

Parameters

n int

rv int*

GetAttribLocation Method

public int GetAttribLocation(int program, IntPtr name)

Parameters

program int

name IntPtr

Returns

int

GetAttribLocationString Method

public int GetAttribLocationString(int program, string name)

Parameters

program int

name string

Returns

int

GetProcAddress Method

Returns an OpenGL function by name.

public IntPtr GetProcAddress(string proc)

Parameters

proc string

Function name.

Returns

IntPtr

Handle of function, which can be casted to unmanaged function pointer.

GetProgramInfoLog Method

public void GetProgramInfoLog(int program, int maxLength, int& len, void* infoLog)

Parameters

program int

maxLength int

len int&

infoLog void*

GetProgramiv Method

public void GetProgramiv(int program, int name, int* parameters)

Parameters

program int

name int

parameters int*

GetRenderbufferParameteriv Method

public void GetRenderbufferParameteriv(int target, int name, int& value)

Parameters

target int

name int

value int&

GetShaderInfoLog Method

public void GetShaderInfoLog(int shader, int maxLength, int& length, void* infoLog)

Parameters

shader int

maxLength int

length int&

infoLog void*

GetShaderiv Method

public void GetShaderiv(int shader, int name, int* parameters)

Parameters

shader int

name int

parameters int*

GetUniformLocation Method

public int GetUniformLocation(int program, IntPtr name)

Parameters

program int

name IntPtr

Returns

int

GetUniformLocationString Method

public int GetUniformLocationString(int program, string name)

Parameters

program int

name string

Returns

int

LinkProgram Method

public void LinkProgram(int program)

Parameters

program int

LinkProgramAndGetError Method

public string LinkProgramAndGetError(int program)

Parameters

program int

Returns

string

RenderbufferStorage Method

public void RenderbufferStorage(int target, int internalFormat, int width, int height)

Parameters

target int

internalFormat int

width int

height int

ShaderSource Method

public void ShaderSource(int shader, int count, IntPtr strings, IntPtr lengths)

Parameters

shader int

count int

strings IntPtr

lengths IntPtr

ShaderSourceString Method

public void ShaderSourceString(int shader, string source)

Parameters

shader int

source string

TexImage2D Method

public void TexImage2D(int target, int level, int internalFormat, int width, int height, int border, int format, int type, IntPtr data)

Parameters

target int

level int

internalFormat int

width int

height int

border int

format int

type int

data IntPtr

TexParameteri Method

public void TexParameteri(int target, int name, int value)

Parameters

target int

name int

value int

Uniform1f Method

public void Uniform1f(int location, float falue)

Parameters

location int

falue float

Uniform1i Method

public void Uniform1i(int location, int value)

Parameters

location int

value int

UniformMatrix4fv Method

public void UniformMatrix4fv(int location, int count, bool transpose, void* value)

Parameters

location int

count int

transpose bool

value void*

UseProgram Method

public void UseProgram(int program)

Parameters

program int

VertexAttribPointer Method

public void VertexAttribPointer(int index, int size, int type, int normalized, int stride, IntPtr pointer)

Parameters

index int

size int

type int

normalized int

stride int

pointer IntPtr

Viewport Method

public void Viewport(int x, int y, int width, int height)

Parameters

x int

y int

width int

height int

Properties

NameDescription
ContextInfoNo summary available.
IsBindVertexArrayAvailableNo summary available.
IsBlitFramebufferAvailableNo summary available.
IsDeleteVertexArraysAvailableNo summary available.
IsGenVertexArraysAvailableNo summary available.
RendererNo summary available.
VendorNo summary available.
VersionNo summary available.

ContextInfo Property

public Avalonia.OpenGL.GlInterface.GlContextInfo ContextInfo { get; set; }

IsBindVertexArrayAvailable Property

public bool IsBindVertexArrayAvailable { get; set; }

IsBlitFramebufferAvailable Property

public bool IsBlitFramebufferAvailable { get; set; }

IsDeleteVertexArraysAvailable Property

public bool IsDeleteVertexArraysAvailable { get; set; }

IsGenVertexArraysAvailable Property

public bool IsGenVertexArraysAvailable { get; set; }

Renderer Property

public string Renderer { get; set; }

Vendor Property

public string Vendor { get; set; }

Version Property

public string Version { get; set; }

On this page