UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
OpenGL3.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3/*=============================================================================
4 OpenGL3.h: Public OpenGL 3.2 definitions for non-common functionality
5=============================================================================*/
6
7#pragma once
8
9#include "OpenGLPlatform.h"
10
11#if UGL_PLATFORM_SUPPORTS_GL3
12
13#include "Containers/Map.h"
14#include "OpenGLBase.h"
15
18
19#define USE_OPENGL_NAME_CACHE 1
20#define OPENGL_NAME_CACHE_SIZE 1024
21
22struct FOpenGL3 : public FOpenGLBase
23{
24 static FORCEINLINE bool IsDebugContent() { return bDebugContext; }
25
26 static FORCEINLINE bool SupportsTimestampQueries() { return TimestampQueryBits > 0; }
29 static FORCEINLINE bool AmdWorkaround() { return bAmdWorkaround; }
30 static FORCEINLINE bool SupportsBufferStorage() { return true; }
31
32 // Optional
33 static FORCEINLINE void QueryTimestampCounter(GLuint QueryID)
34 {
36 }
37
38 static FORCEINLINE void BeginQuery(GLenum QueryType, GLuint QueryId)
39 {
40 glBeginQuery( QueryType, QueryId );
41 }
42
43 static FORCEINLINE void EndQuery(GLenum QueryType)
44 {
45 glEndQuery( QueryType );
46 }
47
48 static FORCEINLINE void GetQueryObject(GLuint QueryId, EQueryMode QueryMode, GLuint64* OutResult)
49 {
50 GLenum QueryName = (QueryMode == QM_Result) ? GL_QUERY_RESULT : GL_QUERY_RESULT_AVAILABLE;
51 GLuint64 Result = 0;
52 glGetQueryObjectui64v(QueryId, QueryName, &Result);
54 }
55
56 static FORCEINLINE void ReadBuffer(GLenum Mode)
57 {
58 glReadBuffer( Mode );
59 }
60
61 static FORCEINLINE void DrawBuffer(GLenum Mode)
62 {
63 glDrawBuffer( Mode );
64 }
65
66 static FORCEINLINE void DeleteSync(UGLsync Sync)
67 {
69 }
70
71 static FORCEINLINE UGLsync FenceSync(GLenum Condition, GLbitfield Flags)
72 {
73 return glFenceSync( Condition, Flags );
74 }
75
76 static FORCEINLINE bool IsSync(UGLsync Sync)
77 {
78 return (glIsSync( Sync ) == GL_TRUE) ? true : false;
79 }
80
81 static FORCEINLINE EFenceResult ClientWaitSync(UGLsync Sync, GLbitfield Flags, GLuint64 Timeout)
82 {
84 switch (Result)
85 {
89 }
90 return FR_WaitFailed;
91 }
92
93 static FORCEINLINE void GenSamplers(GLsizei Count, GLuint* Samplers)
94 {
95 glGenSamplers(Count, Samplers);
96 }
97
98 static FORCEINLINE void DeleteSamplers(GLsizei Count, GLuint* Samplers)
99 {
100 glDeleteSamplers(Count, Samplers);
101 }
102
104 {
105 glSamplerParameteri(Sampler, Parameter, Value);
106 }
107
108 static FORCEINLINE void BindSampler(GLuint Unit, GLuint Sampler)
109 {
110 glBindSampler(Unit, Sampler);
111 }
112
113 static FORCEINLINE void PolygonMode(GLenum Face, GLenum Mode)
114 {
115 glPolygonMode(Face, Mode);
116 }
117
119 {
121 }
122
123 // Required
124 static FORCEINLINE void* MapBufferRange(GLenum Type, uint32 InOffset, uint32 InSize, EResourceLockMode LockMode)
125 {
126 GLenum Access;
127 switch ( LockMode )
128 {
130 Access = GL_MAP_READ_BIT;
131 break;
134 break;
137#if 1
138 // Temp workaround for synchrnoization when a UBO is discarded while being referenced
140#endif
141 break;
144 break;
147 break;
149 default:
151 }
152 return glMapBufferRange(Type, InOffset, InSize, Access);
153 }
154
155 static FORCEINLINE void UnmapBuffer(GLenum Type)
156 {
157 glUnmapBuffer(Type);
158 }
159
160 static FORCEINLINE void UnmapBufferRange(GLenum Type, uint32 InOffset, uint32 InSize)
161 {
162 UnmapBuffer(Type);
163 }
164
165 static FORCEINLINE void GenQueries(GLsizei NumQueries, GLuint* QueryIDs)
166 {
167 glGenQueries(NumQueries, QueryIDs);
168 }
169
170 static FORCEINLINE void DeleteQueries(GLsizei NumQueries, const GLuint* QueryIDs )
171 {
172 glDeleteQueries( NumQueries, QueryIDs );
173 }
174
175 static FORCEINLINE void GetQueryObject(GLuint QueryId, EQueryMode QueryMode, GLuint* OutResult)
176 {
177 GLenum QueryName = (QueryMode == QM_Result) ? GL_QUERY_RESULT : GL_QUERY_RESULT_AVAILABLE;
179 }
180
182 {
183 glBindBufferBase(Target, Index, Buffer);
184 }
185
187 {
189 }
190
192 {
194 }
195
197 {
199 }
200
202 {
204 }
205
206 static FORCEINLINE void TexParameter(GLenum Target, GLenum Parameter, GLint Value)
207 {
208 glTexParameteri(Target, Parameter, Value);
209 }
210
211 static FORCEINLINE void FramebufferTexture(GLenum Target, GLenum Attachment, GLuint Texture, GLint Level)
212 {
213 glFramebufferTexture(Target, Attachment, Texture, Level);
214 }
215
216 static FORCEINLINE void FramebufferTexture3D(GLenum Target, GLenum Attachment, GLenum TexTarget, GLuint Texture, GLint Level, GLint ZOffset)
217 {
218 glFramebufferTexture3D(Target, Attachment, TexTarget, Texture, Level, ZOffset);
219 }
220
221 static FORCEINLINE void FramebufferTextureLayer(GLenum Target, GLenum Attachment, GLuint Texture, GLint Level, GLint Layer)
222 {
223 glFramebufferTextureLayer(Target, Attachment, Texture, Level, Layer);
224 }
225
226 static FORCEINLINE void Uniform4uiv(GLint Location, GLsizei Count, const GLuint* Value)
227 {
228 glUniform4uiv(Location, Count, Value);
229 }
230
232 {
234 }
235
236 static FORCEINLINE void DrawBuffers(GLsizei NumBuffers, const GLenum* Buffers)
237 {
238 glDrawBuffers(NumBuffers, Buffers);
239 }
240
242 {
244 }
245
246 static FORCEINLINE void EnableIndexed(GLenum Parameter, GLuint Index)
247 {
248 glEnablei(Parameter, Index);
249 }
250
251 static FORCEINLINE void DisableIndexed(GLenum Parameter, GLuint Index)
252 {
253 glDisablei(Parameter, Index);
254 }
255
257 {
259 }
260
261 static FORCEINLINE void VertexAttribPointer(GLuint Index, GLint Size, GLenum Type, GLboolean Normalized, GLsizei Stride, const GLvoid* Pointer)
262 {
263 glVertexAttribPointer(Index, Size, Type, Normalized, Stride, Pointer);
264 }
265
266 static FORCEINLINE void VertexAttribIPointer(GLuint Index, GLint Size, GLenum Type, GLsizei Stride, const GLvoid* Pointer)
267 {
268 glVertexAttribIPointer(Index, Size, Type, Stride, Pointer);
269 }
270
271 static FORCEINLINE void VertexAttrib4Nsv(GLuint AttributeIndex, const GLshort* Values)
272 {
273 glVertexAttrib4Nsv(AttributeIndex, Values);
274 }
275
276 static FORCEINLINE void VertexAttrib4sv(GLuint AttributeIndex, const GLshort* Values)
277 {
278 glVertexAttrib4sv(AttributeIndex, Values);
279 }
280
281 static FORCEINLINE void VertexAttribI4sv(GLuint AttributeIndex, const GLshort* Values)
282 {
283 glVertexAttribI4sv(AttributeIndex, Values);
284 }
285
286 static FORCEINLINE void VertexAttribI4usv(GLuint AttributeIndex, const GLushort* Values)
287 {
288 glVertexAttribI4usv(AttributeIndex, Values);
289 }
290
291 static FORCEINLINE void VertexAttrib4Nubv(GLuint AttributeIndex, const GLubyte* Values)
292 {
293 glVertexAttrib4Nubv(AttributeIndex, Values);
294 }
295
296 static FORCEINLINE void VertexAttrib4ubv(GLuint AttributeIndex, const GLubyte* Values)
297 {
298 glVertexAttrib4ubv(AttributeIndex, Values);
299 }
300
301 static FORCEINLINE void VertexAttribI4ubv(GLuint AttributeIndex, const GLubyte* Values)
302 {
303 glVertexAttribI4ubv(AttributeIndex, Values);
304 }
305
306 static FORCEINLINE void VertexAttrib4Nbv(GLuint AttributeIndex, const GLbyte* Values)
307 {
308 glVertexAttrib4Nbv(AttributeIndex, Values);
309 }
310
311 static FORCEINLINE void VertexAttrib4bv(GLuint AttributeIndex, const GLbyte* Values)
312 {
313 glVertexAttrib4bv(AttributeIndex, Values);
314 }
315
316 static FORCEINLINE void VertexAttribI4bv(GLuint AttributeIndex, const GLbyte* Values)
317 {
318 glVertexAttribI4bv(AttributeIndex, Values);
319 }
320
321 static FORCEINLINE void VertexAttrib4dv(GLuint AttributeIndex, const GLdouble* Values)
322 {
323 glVertexAttrib4dv(AttributeIndex, Values);
324 }
325
326 static FORCEINLINE void VertexAttribI4iv(GLuint AttributeIndex, const GLint* Values)
327 {
328 glVertexAttribI4iv(AttributeIndex, Values);
329 }
330
331 static FORCEINLINE void VertexAttribI4uiv(GLuint AttributeIndex, const GLuint* Values)
332 {
333 glVertexAttribI4uiv(AttributeIndex, Values);
334 }
335
336 static FORCEINLINE void DrawArraysInstanced(GLenum Mode, GLint First, GLsizei Count, GLsizei InstanceCount)
337 {
338 glDrawArraysInstanced(Mode, First, Count, InstanceCount);
339 }
340
341 static FORCEINLINE void DrawElementsInstanced(GLenum Mode, GLsizei Count, GLenum Type, const GLvoid* Indices, GLsizei InstanceCount)
342 {
343 glDrawElementsInstanced(Mode, Count, Type, Indices, InstanceCount);
344 }
345
346 static FORCEINLINE void DrawRangeElements(GLenum Mode, GLuint Start, GLuint End, GLsizei Count, GLenum Type, const GLvoid* Indices)
347 {
348 glDrawRangeElements(Mode, Start, End, Count, Type, Indices);
349 }
350
351 static FORCEINLINE void ClearBufferfv(GLenum Buffer, GLint DrawBufferIndex, const GLfloat* Value)
352 {
353 glClearBufferfv(Buffer, DrawBufferIndex, Value);
354 }
355
356 static FORCEINLINE void ClearBufferfi(GLenum Buffer, GLint DrawBufferIndex, GLfloat Depth, GLint Stencil)
357 {
358 glClearBufferfi(Buffer, DrawBufferIndex, Depth, Stencil);
359 }
360
361 static FORCEINLINE void ClearBufferiv(GLenum Buffer, GLint DrawBufferIndex, const GLint* Value)
362 {
363 glClearBufferiv(Buffer, DrawBufferIndex, Value);
364 }
365
366 static FORCEINLINE void ClearDepth(GLdouble Depth)
367 {
369 }
370
371 static FORCEINLINE void TexImage3D(GLenum Target, GLint Level, GLint InternalFormat, GLsizei Width, GLsizei Height, GLsizei Depth, GLint Border, GLenum Format, GLenum Type, const GLvoid* PixelData)
372 {
373 glTexImage3D(Target, Level, InternalFormat, Width, Height, Depth, Border, Format, Type, PixelData);
374 }
375
376 static FORCEINLINE void CompressedTexImage3D(GLenum Target, GLint Level, GLenum InternalFormat, GLsizei Width, GLsizei Height, GLsizei Depth, GLint Border, GLsizei ImageSize, const GLvoid* PixelData)
377 {
378 glCompressedTexImage3D(Target, Level, InternalFormat, Width, Height, Depth, Border, ImageSize, PixelData);
379 }
380
381 static FORCEINLINE void CompressedTexSubImage2D(GLenum Target, GLint Level, GLsizei Width, GLsizei Height, GLenum Format, GLsizei ImageSize, const GLvoid* PixelData)
382 {
383 glCompressedTexSubImage2D(Target, Level, 0, 0, Width, Height, Format, ImageSize, PixelData);
384 }
385
386 static FORCEINLINE void TexImage2DMultisample(GLenum Target, GLsizei Samples, GLint InternalFormat, GLsizei Width, GLsizei Height, GLboolean FixedSampleLocations)
387 {
388 glTexImage2DMultisample(Target, Samples, InternalFormat, Width, Height, FixedSampleLocations);
389 }
390
391 static FORCEINLINE void TexBuffer(GLenum Target, GLenum InternalFormat, GLuint Buffer)
392 {
393 glTexBuffer(Target, InternalFormat, Buffer);
394 }
395
396 static FORCEINLINE void TexSubImage3D(GLenum Target, GLint Level, GLint XOffset, GLint YOffset, GLint ZOffset, GLsizei Width, GLsizei Height, GLsizei Depth, GLenum Format, GLenum Type, const GLvoid* PixelData)
397 {
398 glTexSubImage3D(Target, Level, XOffset, YOffset, ZOffset, Width, Height, Depth, Format, Type, PixelData);
399 }
400
401 static FORCEINLINE void CopyTexSubImage1D(GLenum Target, GLint Level, GLint XOffset, GLint X, GLint Y, GLsizei Width)
402 {
403 glCopyTexSubImage1D(Target, Level, XOffset, X, Y, Width);
404 }
405
406 static FORCEINLINE void CopyTexSubImage2D(GLenum Target, GLint Level, GLint XOffset, GLint YOffset, GLint X, GLint Y, GLsizei Width, GLsizei Height)
407 {
408 glCopyTexSubImage2D(Target, Level, XOffset, YOffset, X, Y, Width, Height);
409 }
410
411 static FORCEINLINE void CopyTexSubImage3D(GLenum Target, GLint Level, GLint XOffset, GLint YOffset, GLint ZOffset, GLint X, GLint Y, GLsizei Width, GLsizei Height)
412 {
413 glCopyTexSubImage3D(Target, Level, XOffset, YOffset, ZOffset, X, Y, Width, Height);
414 }
415
417 {
419 }
420
421 static FORCEINLINE void GetTexImage(GLenum Target, GLint Level, GLenum Format, GLenum Type, GLvoid* OutPixelData)
422 {
423 glGetTexImage(Target, Level, Format, Type, OutPixelData);
424 }
425
426 static FORCEINLINE void CopyBufferSubData(GLenum ReadTarget, GLenum WriteTarget, GLintptr ReadOffset, GLintptr WriteOffset, GLsizeiptr Size)
427 {
428 glCopyBufferSubData(ReadTarget, WriteTarget, ReadOffset, WriteOffset, Size);
429 }
430
432 {
433#if USE_OPENGL_NAME_CACHE
435 TArray<GLuint>& Shaders = ShaderNames.FindOrAdd(Type);
436 if(!Shaders.Num())
437 {
438 while(Shaders.Num() < OPENGL_NAME_CACHE_SIZE)
439 {
440 GLuint Resource = glCreateShader(Type);
441 Shaders.Add(Resource);
442 }
443 }
444 return Shaders.Pop();
445#else
446 return glCreateShader(Type);
447#endif
448 }
449
451 {
452#if USE_OPENGL_NAME_CACHE
454 if(!ProgramNames.Num())
455 {
457 {
458 GLuint Resource = glCreateProgram();
459 ProgramNames.Add(Resource);
460 }
461 }
462 return ProgramNames.Pop();
463#else
464 return glCreateProgram();
465#endif
466 }
467
469 {
470#if USE_OPENGL_NAME_CACHE
472 {
474 NextBufferName += n;
475 }
476 else
477 {
478 if ( n >= OPENGL_NAME_CACHE_SIZE)
479 {
481 }
482 else
483 {
485
487
489
490 n -= Leftover;
491 buffers += Leftover;
492
494 NextBufferName = n;
495 }
496 }
497#else
499#endif
500 }
501
503 {
504#if USE_OPENGL_NAME_CACHE
506 {
508 NextTextureName += n;
509 }
510 else
511 {
512 if ( n >= OPENGL_NAME_CACHE_SIZE)
513 {
515 }
516 else
517 {
519
521
523
524 n -= Leftover;
526
528 NextTextureName = n;
529 }
530 }
531#else
533#endif
534 }
535
536 static FORCEINLINE void CompressedTexSubImage3D(GLenum Target, GLint Level, GLint XOffset, GLint YOffset, GLint ZOffset, GLsizei Width, GLsizei Height, GLsizei Depth, GLenum Format, GLsizei ImageSize, const GLvoid* PixelData)
537 {
538 glCompressedTexSubImage3D( Target, Level, XOffset, YOffset, ZOffset, Width, Height, Depth, Format, ImageSize, PixelData);
539 }
540
541 static FORCEINLINE void GenerateMipmap( GLenum Target )
542 {
543 glGenerateMipmap( Target);
544 }
545
547 {
548 return (const ANSICHAR*)glGetStringi(Name, Index);
549 }
550
551 static FORCEINLINE GLuint GetMajorVersion()
552 {
553 GLint MajorVersion = 0;
554 glGetIntegerv(GL_MAJOR_VERSION, &MajorVersion);
555 return MajorVersion;
556 }
557
558 static FORCEINLINE GLuint GetMinorVersion()
559 {
560 GLint MinorVersion = 0;
561 glGetIntegerv(GL_MINOR_VERSION, &MinorVersion);
562 return MinorVersion;
563 }
565 {
568 }
569 static FORCEINLINE void ProgramUniform1i(GLuint Program, GLint Location, GLint V0)
570 {
571 glUniform1i(Location, V0);
572 }
574 {
575 glUniform4iv(Location, Count, Value);
576 }
578 {
579 glUniform4fv(Location, Count, Value);
580 }
582 {
583 glUniform4uiv(Location, Count, Value);
584 }
585 static FORCEINLINE void GetProgramPipelineiv(GLuint Pipeline, GLenum Pname, GLint* Params)
586 {
587 glGetProgramPipelineiv(Pipeline, Pname, Params);
588 }
590 {
592 }
594 {
596 }
598 {
600 }
601
602 static FORCEINLINE ERHIFeatureLevel::Type GetFeatureLevel()
603 {
605 }
606
607 static FORCEINLINE EShaderPlatform GetShaderPlatform()
608 {
610 }
611
612 static FORCEINLINE FString GetAdapterName()
613 {
615 }
616
617 static FPlatformOpenGLDevice* CreateDevice() UGL_REQUIRED(NULL)
618 static FPlatformOpenGLContext* CreateContext( FPlatformOpenGLDevice* Device, void* WindowHandle ) UGL_REQUIRED(NULL)
619
620 static void ProcessQueryGLInt();
621 static void ProcessExtensions(const FString& ExtensionsString);
622
623 static FORCEINLINE int32 GetReadHalfFloatPixelsEnum() { return GL_HALF_FLOAT; }
624
626
628protected:
631 static GLsizei NextBufferName;
635
637
638 static bool bDebugContext;
640};
641
642#endif // UGL_PLATFORM_SUPPORTS_GL3
#define NULL
Definition oodle2base.h:134
typedef GLboolean(GL_APIENTRYP PFNeglPresentationTimeANDROID)(EGLDisplay dpy
#define GLdouble
Definition AndroidOpenGLPlatform.h:12
GLsync UGLsync
Definition AndroidOpenGLPlatform.h:11
khronos_uint64_t GLuint64
Definition AndroidOpenGLPlatform.h:14
#define FORCEINLINE
Definition AndroidPlatform.h:140
#define check(expr)
Definition AssertionMacros.h:314
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
FPlatformTypes::ANSICHAR ANSICHAR
An ANSI character. Normally a signed type.
Definition Platform.h:1131
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
return true
Definition ExternalRpcRegistry.cpp:601
#define X(Name, Desc)
Definition FormatStringSan.h:47
#define UGL_REQUIRED(ReturnValue)
Definition OpenGLBase.h:20
#define GL_MAP_COHERENT_BIT
Definition OpenGLPlatform.h:165
#define GL_MAP_PERSISTENT_BIT
Definition OpenGLPlatform.h:162
#define GL_MAP_WRITE_BIT
Definition OpenGLPlatform.h:159
#define GL_HALF_FLOAT
Definition OpenGLPlatform.h:13
EResourceLockMode
Definition RHIDefinitions.h:785
EShaderPlatform
Definition RHIShaderPlatform.h:11
@ SP_OPENGL_PCES3_1
Definition RHIShaderPlatform.h:18
@ SP_OPENGL_ES3_1_ANDROID
Definition RHIShaderPlatform.h:25
void SetSamplerParameter(FRHIBatchedShaderParameters &BatchedParameters, const FShaderResourceParameter &Parameter, FRHISamplerState *SamplerStateRHI)
Definition ShaderParameterUtils.h:94
#define ANSI_TO_TCHAR(str)
Definition StringConv.h:1020
uint32 Offset
Definition VulkanMemory.cpp:4033
uint32 Size
Definition VulkanMemory.cpp:4034
uint32_t uint32
Definition binka_ue_file_header.h:6
Definition OpenGLBase.h:38
static FORCEINLINE void GLuint QueryId static UGL_OPTIONAL_VOID FORCEINLINE void EQueryMode GLuint64 *OutResult static UGL_OPTIONAL_VOID FORCEINLINE void GLbitfield Flags GLbitfield GLuint64 Timeout GLuint *Samplers static UGL_OPTIONAL_VOID FORCEINLINE void DeleteSamplers(GLsizei Count, GLuint *Samplers) UGL_OPTIONAL_VOID static FORCEINLINE void SetSamplerParameter(GLuint Sampler
static FORCEINLINE void GLenum GLuint GLint GLsizei GLint GLsizei NumViews static UGL_REQUIRED_VOID FORCEINLINE void const GLenum *Buffers static UGL_REQUIRED_VOID FORCEINLINE void GLuint Index static UGL_REQUIRED_VOID FORCEINLINE void GLboolean GLboolean GLboolean GLboolean Alpha static UGL_REQUIRED_VOID FORCEINLINE void GLint GLenum GLsizei const GLvoid *Pointer static UGL_REQUIRED_VOID FORCEINLINE void const GLshort *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLushort *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLubyte *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLbyte *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLbyte *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLint *Values static UGL_REQUIRED_VOID FORCEINLINE void GLint GLsizei GLsizei InstanceCount static UGL_REQUIRED_VOID FORCEINLINE void DrawElementsInstanced(GLenum Mode, GLsizei Count, GLenum Type, const GLvoid *Indices, GLsizei InstanceCount) UGL_REQUIRED_VOID static FORCEINLINE void DrawRangeElements(GLenum Mode
static FORCEINLINE void GLuint QueryId static UGL_OPTIONAL_VOID FORCEINLINE void EQueryMode GLuint64 *OutResult static UGL_OPTIONAL_VOID FORCEINLINE void GLbitfield Flags GLbitfield GLuint64 Timeout GLuint *Samplers static UGL_OPTIONAL_VOID FORCEINLINE void GLenum GLint Value static UGL_OPTIONAL_VOID FORCEINLINE void GLenum Mode static UGL_OPTIONAL_VOID FORCEINLINE void VertexAttribDivisor(GLuint Index, GLuint Divisor) UGL_OPTIONAL_VOID static FORCEINLINE void PushGroupMarker(const ANSICHAR *Name) UGL_OPTIONAL_VOID static FORCEINLINE void PopGroupMarker() UGL_OPTIONAL_VOID static FORCEINLINE void LabelObject(GLenum Type
static FORCEINLINE void GLenum GLuint GLint GLsizei GLint GLsizei NumViews static UGL_REQUIRED_VOID FORCEINLINE void const GLenum *Buffers static UGL_REQUIRED_VOID FORCEINLINE void GLuint Index static UGL_REQUIRED_VOID FORCEINLINE void DisableIndexed(GLenum Parameter, GLuint Index) UGL_REQUIRED_VOID static FORCEINLINE void ColorMaskIndexed(GLuint Index
static FORCEINLINE bool SupportsBufferStorage()
Definition OpenGLBase.h:107
static FORCEINLINE void GLenum GLuint GLint GLsizei GLint GLsizei NumViews static UGL_REQUIRED_VOID FORCEINLINE void const GLenum *Buffers static UGL_REQUIRED_VOID FORCEINLINE void GLuint Index static UGL_REQUIRED_VOID FORCEINLINE void GLboolean GLboolean GLboolean GLboolean Alpha static UGL_REQUIRED_VOID FORCEINLINE void GLint GLenum GLsizei const GLvoid *Pointer static UGL_REQUIRED_VOID FORCEINLINE void const GLshort *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLushort *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLubyte *Values static UGL_REQUIRED_VOID FORCEINLINE void VertexAttribI4ubv(GLuint AttributeIndex, const GLubyte *Values) UGL_REQUIRED_VOID static FORCEINLINE void VertexAttrib4Nbv(GLuint AttributeIndex
static FORCEINLINE void GLenum GLint *Params static UGL_OPTIONAL_VOID FORCEINLINE void ValidateProgramPipeline(GLuint Pipeline) UGL_OPTIONAL_VOID static FORCEINLINE void GetProgramPipelineInfoLog(GLuint Pipeline
static FORCEINLINE bool IsDebugContent()
Definition OpenGLBase.h:151
static FORCEINLINE void GLuint QueryId static UGL_OPTIONAL_VOID FORCEINLINE void EQueryMode GLuint64 *OutResult static UGL_OPTIONAL_VOID FORCEINLINE void GLbitfield Flags GLbitfield GLuint64 Timeout GLuint *Samplers static UGL_OPTIONAL_VOID FORCEINLINE void GLenum GLint Value static UGL_OPTIONAL_VOID FORCEINLINE void GLenum Mode static UGL_OPTIONAL_VOID FORCEINLINE void GLuint const ANSICHAR *Name static UGL_OPTIONAL_VOID FORCEINLINE GLsizei GLsizei const GLenum *Attachments static UGL_OPTIONAL_VOID FORCEINLINE void uint32 uint32 InSize static UGL_REQUIRED_VOID FORCEINLINE void GLuint *QueryIDs static UGL_REQUIRED_VOID FORCEINLINE void EQueryMode GLuint *OutResult static UGL_REQUIRED_VOID FORCEINLINE void BindBufferBase(GLenum Target, GLuint Index, GLuint Buffer) UGL_REQUIRED_VOID static FORCEINLINE void BindBufferRange(GLenum Target
static FORCEINLINE void GLenum GLuint GLint GLsizei GLint GLsizei NumViews static UGL_REQUIRED_VOID FORCEINLINE void const GLenum *Buffers static UGL_REQUIRED_VOID FORCEINLINE void GLuint Index static UGL_REQUIRED_VOID FORCEINLINE void GLboolean GLboolean GLboolean GLboolean Alpha static UGL_REQUIRED_VOID FORCEINLINE void GLint GLenum GLsizei const GLvoid *Pointer static UGL_REQUIRED_VOID FORCEINLINE void const GLshort *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLushort *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLubyte *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLbyte *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLbyte *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLint *Values static UGL_REQUIRED_VOID FORCEINLINE void GLint GLsizei GLsizei InstanceCount static UGL_REQUIRED_VOID FORCEINLINE void GLuint GLuint GLsizei GLenum const GLvoid *Indices static UGL_REQUIRED_VOID FORCEINLINE void GLint GLfloat GLint Stencil static UGL_REQUIRED_VOID FORCEINLINE void GLint GLint GLsizei GLsizei GLsizei GLint GLenum GLenum const GLvoid *PixelData static UGL_REQUIRED_VOID FORCEINLINE void CompressedTexImage3D(GLenum Target, GLint Level, GLenum InternalFormat, GLsizei Width, GLsizei Height, GLsizei Depth, GLint Border, GLsizei ImageSize, const GLvoid *PixelData) UGL_REQUIRED_VOID static FORCEINLINE void TexImage2DMultisample(GLenum Target
static FORCEINLINE void GLenum GLuint GLint GLsizei GLint GLsizei NumViews static UGL_REQUIRED_VOID FORCEINLINE void const GLenum *Buffers static UGL_REQUIRED_VOID FORCEINLINE void GLuint Index static UGL_REQUIRED_VOID FORCEINLINE void GLboolean GLboolean GLboolean GLboolean Alpha static UGL_REQUIRED_VOID FORCEINLINE void GLint GLenum GLsizei const GLvoid *Pointer static UGL_REQUIRED_VOID FORCEINLINE void const GLshort *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLushort *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLubyte *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLbyte *Values static UGL_REQUIRED_VOID FORCEINLINE void VertexAttrib4bv(GLuint AttributeIndex, const GLbyte *Values) UGL_REQUIRED_VOID static FORCEINLINE void VertexAttribI4bv(GLuint AttributeIndex
static FORCEINLINE void GLenum GLuint GLint GLsizei GLint GLsizei NumViews static UGL_REQUIRED_VOID FORCEINLINE void const GLenum *Buffers static UGL_REQUIRED_VOID FORCEINLINE void GLuint Index static UGL_REQUIRED_VOID FORCEINLINE void GLboolean GLboolean GLboolean GLboolean Alpha static UGL_REQUIRED_VOID FORCEINLINE void GLint GLenum GLsizei const GLvoid *Pointer static UGL_REQUIRED_VOID FORCEINLINE void const GLshort *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLushort *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLubyte *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLbyte *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLbyte *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLint *Values static UGL_REQUIRED_VOID FORCEINLINE void GLint GLsizei GLsizei InstanceCount static UGL_REQUIRED_VOID FORCEINLINE void GLuint GLuint GLsizei GLenum const GLvoid *Indices static UGL_REQUIRED_VOID FORCEINLINE void GLint GLfloat GLint Stencil static UGL_REQUIRED_VOID FORCEINLINE void GLint GLint GLsizei GLsizei GLsizei GLint GLenum GLenum const GLvoid *PixelData static UGL_REQUIRED_VOID FORCEINLINE void GLsizei GLint GLsizei GLsizei GLboolean FixedSampleLocations static UGL_REQUIRED_VOID FORCEINLINE void GLenum GLuint GLintptr GLsizeiptr Size static UGL_REQUIRED_VOID FORCEINLINE void GLint GLint GLint GLint GLint GLsizei GLsizei Height static UGL_REQUIRED_VOID FORCEINLINE void CopyTexSubImage3D(GLenum Target, GLint Level, GLint XOffset, GLint YOffset, GLint ZOffset, GLint X, GLint Y, GLsizei Width, GLsizei Height) UGL_REQUIRED_VOID static FORCEINLINE void GetCompressedTexImage(GLenum Target
static FORCEINLINE GLuint CreateProgram()
Definition OpenGLBase.h:327
static FORCEINLINE void GLenum GLuint GLint GLsizei GLint GLsizei NumViews static UGL_REQUIRED_VOID FORCEINLINE void const GLenum *Buffers static UGL_REQUIRED_VOID FORCEINLINE void GLuint Index static UGL_REQUIRED_VOID FORCEINLINE void GLboolean GLboolean GLboolean GLboolean Alpha static UGL_REQUIRED_VOID FORCEINLINE void GLint GLenum GLsizei const GLvoid *Pointer static UGL_REQUIRED_VOID FORCEINLINE void const GLshort *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLushort *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLubyte *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLbyte *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLbyte *Values static UGL_REQUIRED_VOID FORCEINLINE void VertexAttrib4dv(GLuint AttributeIndex, const GLdouble *Values) UGL_REQUIRED_VOID static FORCEINLINE void VertexAttribI4iv(GLuint AttributeIndex
static FORCEINLINE void ProgramUniform4iv(GLuint Program, GLint Location, GLsizei Count, const GLint *Value)
Definition OpenGLBase.h:289
@ QM_Result
Definition OpenGLBase.h:52
static FORCEINLINE void GLuint QueryId static UGL_OPTIONAL_VOID FORCEINLINE void EQueryMode GLuint64 *OutResult static UGL_OPTIONAL_VOID FORCEINLINE void GLbitfield Flags GLbitfield GLuint64 Timeout GLuint *Samplers static UGL_OPTIONAL_VOID FORCEINLINE void GLenum GLint Value static UGL_OPTIONAL_VOID FORCEINLINE void GLenum Mode static UGL_OPTIONAL_VOID FORCEINLINE void GLuint const ANSICHAR *Name static UGL_OPTIONAL_VOID FORCEINLINE GLsizei GLsizei const GLenum *Attachments static UGL_OPTIONAL_VOID FORCEINLINE void uint32 uint32 InSize static UGL_REQUIRED_VOID FORCEINLINE void GLuint *QueryIDs static UGL_REQUIRED_VOID FORCEINLINE void EQueryMode GLuint *OutResult static UGL_REQUIRED_VOID FORCEINLINE void GLuint GLuint GLintptr GLsizeiptr Size static UGL_REQUIRED_VOID FORCEINLINE GLuint GLuint GLuint UniformBlockBinding static UGL_REQUIRED_VOID FORCEINLINE void Uniform4uiv(GLint Location, GLsizei Count, const GLuint *Value) UGL_REQUIRED_VOID static FORCEINLINE void TexParameter(GLenum Target
static FORCEINLINE void GLenum GLuint GLint GLsizei GLint GLsizei NumViews static UGL_REQUIRED_VOID FORCEINLINE void const GLenum *Buffers static UGL_REQUIRED_VOID FORCEINLINE void GLuint Index static UGL_REQUIRED_VOID FORCEINLINE void GLboolean GLboolean GLboolean GLboolean Alpha static UGL_REQUIRED_VOID FORCEINLINE void GLint GLenum GLsizei const GLvoid *Pointer static UGL_REQUIRED_VOID FORCEINLINE void const GLshort *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLushort *Values static UGL_REQUIRED_VOID FORCEINLINE void VertexAttrib4Nubv(GLuint AttributeIndex, const GLubyte *Values) UGL_REQUIRED_VOID static FORCEINLINE void VertexAttrib4ubv(GLuint AttributeIndex
static FORCEINLINE void GLuint QueryId static UGL_OPTIONAL_VOID FORCEINLINE void EQueryMode GLuint64 *OutResult static UGL_OPTIONAL_VOID FORCEINLINE void GLbitfield Flags GLbitfield GLuint64 Timeout GLuint *Samplers static UGL_OPTIONAL_VOID FORCEINLINE void GLenum GLint Value static UGL_OPTIONAL_VOID FORCEINLINE void GLenum Mode static UGL_OPTIONAL_VOID FORCEINLINE void GLuint const ANSICHAR *Name static UGL_OPTIONAL_VOID FORCEINLINE GLsizei GLsizei const GLenum *Attachments static UGL_OPTIONAL_VOID FORCEINLINE void * MapBufferRange(GLenum Type, uint32 InOffset, uint32 InSize, EResourceLockMode LockMode) UGL_REQUIRED(NULL) static FORCEINLINE void UnmapBufferRange(GLenum Type
static bool bSupportsVolumeTextureRendering
Definition OpenGLBase.h:376
static FORCEINLINE void GLenum GLuint GLint GLsizei GLint GLsizei NumViews static UGL_REQUIRED_VOID FORCEINLINE void const GLenum *Buffers static UGL_REQUIRED_VOID FORCEINLINE void GLuint Index static UGL_REQUIRED_VOID FORCEINLINE void GLboolean GLboolean GLboolean GLboolean Alpha static UGL_REQUIRED_VOID FORCEINLINE void VertexAttribPointer(GLuint Index, GLint Size, GLenum Type, GLboolean Normalized, GLsizei Stride, const GLvoid *Pointer) UGL_REQUIRED_VOID static FORCEINLINE void VertexAttribIPointer(GLuint Index
static bool bAmdWorkaround
Definition OpenGLBase.h:385
static FORCEINLINE void GLenum GLuint GLint GLsizei GLint GLsizei NumViews static UGL_REQUIRED_VOID FORCEINLINE void const GLenum *Buffers static UGL_REQUIRED_VOID FORCEINLINE void GLuint Index static UGL_REQUIRED_VOID FORCEINLINE void GLboolean GLboolean GLboolean GLboolean Alpha static UGL_REQUIRED_VOID FORCEINLINE void GLint GLenum GLsizei const GLvoid *Pointer static UGL_REQUIRED_VOID FORCEINLINE void const GLshort *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLushort *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLubyte *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLbyte *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLbyte *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLint *Values static UGL_REQUIRED_VOID FORCEINLINE void GLint GLsizei GLsizei InstanceCount static UGL_REQUIRED_VOID FORCEINLINE void GLuint GLuint GLsizei GLenum const GLvoid *Indices static UGL_REQUIRED_VOID FORCEINLINE void ClearBufferfv(GLenum Buffer, GLint DrawBufferIndex, const GLfloat *Value) UGL_REQUIRED_VOID static FORCEINLINE void ClearBufferfi(GLenum Buffer
static FORCEINLINE void GLuint QueryId static UGL_OPTIONAL_VOID FORCEINLINE void EQueryMode GLuint64 *OutResult static UGL_OPTIONAL_VOID FORCEINLINE void GLbitfield Flags GLbitfield GLuint64 Timeout GLuint *Samplers static UGL_OPTIONAL_VOID FORCEINLINE void GLenum GLint Value static UGL_OPTIONAL_VOID FORCEINLINE void GLenum Mode static UGL_OPTIONAL_VOID FORCEINLINE void GLuint const ANSICHAR *Name static UGL_OPTIONAL_VOID FORCEINLINE GLsizei GLsizei const GLenum *Attachments static UGL_OPTIONAL_VOID FORCEINLINE void uint32 uint32 InSize static UGL_REQUIRED_VOID FORCEINLINE void GLuint *QueryIDs static UGL_REQUIRED_VOID FORCEINLINE void DeleteQueries(GLsizei NumQueries, const GLuint *QueryIDs) UGL_REQUIRED_VOID static FORCEINLINE void GetQueryObject(GLuint QueryId
static FORCEINLINE void GLuint QueryId static UGL_OPTIONAL_VOID FORCEINLINE void EQueryMode GLuint64 *OutResult static UGL_OPTIONAL_VOID FORCEINLINE void GLbitfield Flags GLbitfield GLuint64 Timeout GLuint *Samplers static UGL_OPTIONAL_VOID FORCEINLINE void GLenum GLint Value static UGL_OPTIONAL_VOID FORCEINLINE void GLenum Mode static UGL_OPTIONAL_VOID FORCEINLINE void GLuint const ANSICHAR *Name static UGL_OPTIONAL_VOID FORCEINLINE GLsizei GLsizei const GLenum *Attachments static UGL_OPTIONAL_VOID FORCEINLINE void uint32 uint32 InSize static UGL_REQUIRED_VOID FORCEINLINE void UnmapBuffer(GLenum Type) UGL_REQUIRED_VOID static FORCEINLINE void GenQueries(GLsizei NumQueries
static FORCEINLINE void GLenum GLuint GLint GLsizei GLint GLsizei NumViews static UGL_REQUIRED_VOID FORCEINLINE void const GLenum *Buffers static UGL_REQUIRED_VOID FORCEINLINE void GLuint Index static UGL_REQUIRED_VOID FORCEINLINE void GLboolean GLboolean GLboolean GLboolean Alpha static UGL_REQUIRED_VOID FORCEINLINE void GLint GLenum GLsizei const GLvoid *Pointer static UGL_REQUIRED_VOID FORCEINLINE void const GLshort *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLushort *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLubyte *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLbyte *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLbyte *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLint *Values static UGL_REQUIRED_VOID FORCEINLINE void GLint GLsizei GLsizei InstanceCount static UGL_REQUIRED_VOID FORCEINLINE void GLuint GLuint GLsizei GLenum const GLvoid *Indices static UGL_REQUIRED_VOID FORCEINLINE void GLint GLfloat GLint Stencil static UGL_REQUIRED_VOID FORCEINLINE void GLint GLint GLsizei GLsizei GLsizei GLint GLenum GLenum const GLvoid *PixelData static UGL_REQUIRED_VOID FORCEINLINE void GLsizei GLint GLsizei GLsizei GLboolean FixedSampleLocations static UGL_REQUIRED_VOID FORCEINLINE void GLenum GLuint GLintptr GLsizeiptr Size static UGL_REQUIRED_VOID FORCEINLINE void GLint GLint GLint GLint GLint GLsizei GLsizei Height static UGL_REQUIRED_VOID FORCEINLINE void GLint GLvoid *OutImageData static UGL_REQUIRED_VOID FORCEINLINE void GLenum GLintptr GLintptr GLsizeiptr Size static UGL_REQUIRED_VOID FORCEINLINE const ANSICHAR * GetStringIndexed(GLenum Name, GLuint Index) UGL_REQUIRED(NULL) static FORCEINLINE GLuint GetMajorVersion() UGL_REQUIRED(0) static FORCEINLINE GLuint GetMinorVersion() UGL_REQUIRED(0) static FORCEINLINE ERHIFeatureLevel
Definition OpenGLBase.h:248
static FORCEINLINE bool AmdWorkaround()
Definition OpenGLBase.h:111
static FORCEINLINE void GLuint QueryId static UGL_OPTIONAL_VOID FORCEINLINE void EQueryMode GLuint64 *OutResult static UGL_OPTIONAL_VOID FORCEINLINE void GLbitfield Flags GLbitfield GLuint64 Timeout GLuint *Samplers static UGL_OPTIONAL_VOID FORCEINLINE void GLenum GLint Value static UGL_OPTIONAL_VOID FORCEINLINE void GLenum Mode static UGL_OPTIONAL_VOID FORCEINLINE void GLuint const ANSICHAR *Name static UGL_OPTIONAL_VOID FORCEINLINE GLsizei GLsizei const GLenum *Attachments static UGL_OPTIONAL_VOID FORCEINLINE void uint32 uint32 InSize static UGL_REQUIRED_VOID FORCEINLINE void GLuint *QueryIDs static UGL_REQUIRED_VOID FORCEINLINE void EQueryMode GLuint *OutResult static UGL_REQUIRED_VOID FORCEINLINE void GLuint GLuint GLintptr GLsizeiptr Size static UGL_REQUIRED_VOID FORCEINLINE GLuint GetUniformBlockIndex(GLuint Program, const GLchar *UniformBlockName) UGL_REQUIRED(-1) static FORCEINLINE void UniformBlockBinding(GLuint Program
static FORCEINLINE void GLenum GLuint GLint GLsizei GLint GLsizei NumViews static UGL_REQUIRED_VOID FORCEINLINE void const GLenum *Buffers static UGL_REQUIRED_VOID FORCEINLINE void GLuint Index static UGL_REQUIRED_VOID FORCEINLINE void GLboolean GLboolean GLboolean GLboolean Alpha static UGL_REQUIRED_VOID FORCEINLINE void GLint GLenum GLsizei const GLvoid *Pointer static UGL_REQUIRED_VOID FORCEINLINE void const GLshort *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLushort *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLubyte *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLbyte *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLbyte *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLint *Values static UGL_REQUIRED_VOID FORCEINLINE void GLint GLsizei GLsizei InstanceCount static UGL_REQUIRED_VOID FORCEINLINE void GLuint GLuint GLsizei GLenum const GLvoid *Indices static UGL_REQUIRED_VOID FORCEINLINE void GLint GLfloat GLint Stencil static UGL_REQUIRED_VOID FORCEINLINE void ClearBufferiv(GLenum Buffer, GLint DrawBufferIndex, const GLint *Value) UGL_REQUIRED_VOID static FORCEINLINE void ClearDepth(GLdouble Depth) UGL_REQUIRED_VOID static FORCEINLINE void TexImage3D(GLenum Target
static FORCEINLINE void GLuint QueryId static UGL_OPTIONAL_VOID FORCEINLINE void EndQuery(GLenum QueryType) UGL_OPTIONAL_VOID static FORCEINLINE void GetQueryObject(GLuint QueryId
static FORCEINLINE void GLenum GLuint GLint GLsizei GLint GLsizei NumViews static UGL_REQUIRED_VOID FORCEINLINE void const GLenum *Buffers static UGL_REQUIRED_VOID FORCEINLINE void GLuint Index static UGL_REQUIRED_VOID FORCEINLINE void GLboolean GLboolean GLboolean GLboolean Alpha static UGL_REQUIRED_VOID FORCEINLINE void GLint GLenum GLsizei const GLvoid *Pointer static UGL_REQUIRED_VOID FORCEINLINE void const GLshort *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLushort *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLubyte *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLbyte *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLbyte *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLint *Values static UGL_REQUIRED_VOID FORCEINLINE void GLint GLsizei GLsizei InstanceCount static UGL_REQUIRED_VOID FORCEINLINE void GLuint GLuint GLsizei GLenum const GLvoid *Indices static UGL_REQUIRED_VOID FORCEINLINE void GLint GLfloat GLint Stencil static UGL_REQUIRED_VOID FORCEINLINE void GLint GLint GLsizei GLsizei GLsizei GLint GLenum GLenum const GLvoid *PixelData static UGL_REQUIRED_VOID FORCEINLINE void GLsizei GLint GLsizei GLsizei GLboolean FixedSampleLocations static UGL_REQUIRED_VOID FORCEINLINE void TexBuffer(GLenum Target, GLenum InternalFormat, GLuint Buffer) UGL_REQUIRED_VOID static FORCEINLINE void TexBufferRange(GLenum Target
static FORCEINLINE GLuint CreateShader(GLenum Type)
Definition OpenGLBase.h:326
static FORCEINLINE void GLenum GLuint GLint GLsizei GLint GLsizei NumViews static UGL_REQUIRED_VOID FORCEINLINE void const GLenum *Buffers static UGL_REQUIRED_VOID FORCEINLINE void GLuint Index static UGL_REQUIRED_VOID FORCEINLINE void GLboolean GLboolean GLboolean GLboolean Alpha static UGL_REQUIRED_VOID FORCEINLINE void GLint GLenum GLsizei const GLvoid *Pointer static UGL_REQUIRED_VOID FORCEINLINE void VertexAttrib4Nsv(GLuint AttributeIndex, const GLshort *Values) UGL_REQUIRED_VOID static FORCEINLINE void VertexAttrib4sv(GLuint AttributeIndex
static FORCEINLINE void GLenum GLuint GLint GLsizei GLint GLsizei NumViews static UGL_REQUIRED_VOID FORCEINLINE void BlitFramebuffer(GLint SrcX0, GLint SrcY0, GLint SrcX1, GLint SrcY1, GLint DstX0, GLint DstY0, GLint DstX1, GLint DstY1, GLbitfield Mask, GLenum Filter) UGL_REQUIRED_VOID static FORCEINLINE void DrawBuffers(GLsizei NumBuffers
static FORCEINLINE void ProgramUniform1i(GLuint Program, GLint Location, GLint V0)
Definition OpenGLBase.h:288
static FORCEINLINE void GLuint QueryId static UGL_OPTIONAL_VOID FORCEINLINE void EQueryMode GLuint64 *OutResult static UGL_OPTIONAL_VOID FORCEINLINE void BindFragDataLocation(GLuint Program, GLuint Color, const GLchar *Name) UGL_OPTIONAL_VOID static FORCEINLINE void ReadBuffer(GLenum Mode) UGL_OPTIONAL_VOID static FORCEINLINE void DrawBuffer(GLenum Mode) UGL_OPTIONAL_VOID static FORCEINLINE void DeleteSync(UGLsync Sync) UGL_OPTIONAL_VOID static FORCEINLINE UGLsync FenceSync(GLenum Condition
@ FR_ConditionSatisfied
Definition OpenGLBase.h:60
@ FR_TimeoutExpired
Definition OpenGLBase.h:59
@ FR_AlreadySignaled
Definition OpenGLBase.h:58
@ FR_WaitFailed
Definition OpenGLBase.h:61
static FORCEINLINE void GLenum GLuint GLint GLsizei GLint GLsizei NumViews static UGL_REQUIRED_VOID FORCEINLINE void const GLenum *Buffers static UGL_REQUIRED_VOID FORCEINLINE void GLuint Index static UGL_REQUIRED_VOID FORCEINLINE void GLboolean GLboolean GLboolean GLboolean Alpha static UGL_REQUIRED_VOID FORCEINLINE void GLint GLenum GLsizei const GLvoid *Pointer static UGL_REQUIRED_VOID FORCEINLINE void const GLshort *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLushort *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLubyte *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLbyte *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLbyte *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLint *Values static UGL_REQUIRED_VOID FORCEINLINE void GLint GLsizei GLsizei InstanceCount static UGL_REQUIRED_VOID FORCEINLINE void GLuint GLuint GLsizei GLenum const GLvoid *Indices static UGL_REQUIRED_VOID FORCEINLINE void GLint GLfloat GLint Stencil static UGL_REQUIRED_VOID FORCEINLINE void GLint GLint GLsizei GLsizei GLsizei GLint GLenum GLenum const GLvoid *PixelData static UGL_REQUIRED_VOID FORCEINLINE void GLsizei GLint GLsizei GLsizei GLboolean FixedSampleLocations static UGL_REQUIRED_VOID FORCEINLINE void GLenum GLuint GLintptr GLsizeiptr Size static UGL_REQUIRED_VOID FORCEINLINE void GLint GLint GLint GLint GLint GLsizei GLsizei Height static UGL_REQUIRED_VOID FORCEINLINE void GLint GLvoid *OutImageData static UGL_REQUIRED_VOID FORCEINLINE void GetTexImage(GLenum Target, GLint Level, GLenum Format, GLenum Type, GLvoid *OutPixelData) UGL_REQUIRED_VOID static FORCEINLINE void CopyBufferSubData(GLenum ReadTarget
static FORCEINLINE void GLenum GLint *Params static UGL_OPTIONAL_VOID FORCEINLINE void GLsizei GLsizei GLchar *InfoLog static UGL_OPTIONAL_VOID FORCEINLINE bool IsProgramPipeline(GLuint Pipeline) UGL_OPTIONAL(false) static FORCEINLINE GLuint64 GetTextureSamplerHandle(GLuint Texture
static bool bSupportsSeamlessCubemap
Definition OpenGLBase.h:373
static FORCEINLINE void GLenum GLuint GLint GLsizei GLint GLsizei NumViews static UGL_REQUIRED_VOID FORCEINLINE void const GLenum *Buffers static UGL_REQUIRED_VOID FORCEINLINE void GLuint Index static UGL_REQUIRED_VOID FORCEINLINE void GLboolean GLboolean GLboolean GLboolean Alpha static UGL_REQUIRED_VOID FORCEINLINE void GLint GLenum GLsizei const GLvoid *Pointer static UGL_REQUIRED_VOID FORCEINLINE void const GLshort *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLushort *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLubyte *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLbyte *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLbyte *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLint *Values static UGL_REQUIRED_VOID FORCEINLINE void GLint GLsizei GLsizei InstanceCount static UGL_REQUIRED_VOID FORCEINLINE void GLuint GLuint GLsizei GLenum const GLvoid *Indices static UGL_REQUIRED_VOID FORCEINLINE void GLint GLfloat GLint Stencil static UGL_REQUIRED_VOID FORCEINLINE void GLint GLint GLsizei GLsizei GLsizei GLint GLenum GLenum const GLvoid *PixelData static UGL_REQUIRED_VOID FORCEINLINE void GLsizei GLint GLsizei GLsizei GLboolean FixedSampleLocations static UGL_REQUIRED_VOID FORCEINLINE void GLenum GLuint GLintptr GLsizeiptr Size static UGL_REQUIRED_VOID FORCEINLINE void TexSubImage3D(GLenum Target, GLint Level, GLint XOffset, GLint YOffset, GLint ZOffset, GLsizei Width, GLsizei Height, GLsizei Depth, GLenum Format, GLenum Type, const GLvoid *PixelData) UGL_REQUIRED_VOID static FORCEINLINE void CopyTexSubImage2D(GLenum Target
static FORCEINLINE void GLenum GLuint GLint GLsizei GLint GLsizei NumViews static UGL_REQUIRED_VOID FORCEINLINE void const GLenum *Buffers static UGL_REQUIRED_VOID FORCEINLINE void DepthRange(GLdouble Near, GLdouble Far) UGL_REQUIRED_VOID static FORCEINLINE void EnableIndexed(GLenum Parameter
static FORCEINLINE void GLenum GLenum GLuint GLint GLint ZOffset static UGL_REQUIRED_VOID FORCEINLINE void FramebufferTextureLayer(GLenum Target, GLenum Attachment, GLuint Texture, GLint Level, GLint Layer) UGL_REQUIRED_VOID static FORCEINLINE void FramebufferRenderbuffer(GLenum Target
static FORCEINLINE void ProgramUniform4fv(GLuint Program, GLint Location, GLsizei Count, const GLfloat *Value)
Definition OpenGLBase.h:290
static FORCEINLINE bool SupportsTimestampQueries()
Definition OpenGLBase.h:70
static FORCEINLINE void GLuint QueryId static UGL_OPTIONAL_VOID FORCEINLINE void EQueryMode GLuint64 *OutResult static UGL_OPTIONAL_VOID FORCEINLINE void GLbitfield Flags GLbitfield GLuint64 Timeout GLuint *Samplers static UGL_OPTIONAL_VOID FORCEINLINE void GLenum GLint Value static UGL_OPTIONAL_VOID FORCEINLINE void BindSampler(GLuint Unit, GLuint Sampler) UGL_OPTIONAL_VOID static FORCEINLINE void PolygonMode(GLenum Face
static FORCEINLINE void GLenum GLuint GLint GLsizei GLint GLsizei NumViews static UGL_REQUIRED_VOID FORCEINLINE void const GLenum *Buffers static UGL_REQUIRED_VOID FORCEINLINE void GLuint Index static UGL_REQUIRED_VOID FORCEINLINE void GLboolean GLboolean GLboolean GLboolean Alpha static UGL_REQUIRED_VOID FORCEINLINE void GLint GLenum GLsizei const GLvoid *Pointer static UGL_REQUIRED_VOID FORCEINLINE void const GLshort *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLushort *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLubyte *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLbyte *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLbyte *Values static UGL_REQUIRED_VOID FORCEINLINE void const GLint *Values static UGL_REQUIRED_VOID FORCEINLINE void VertexAttribI4uiv(GLuint AttributeIndex, const GLuint *Values) UGL_REQUIRED_VOID static FORCEINLINE void DrawArraysInstanced(GLenum Mode
static FORCEINLINE void QueryTimestampCounter(GLuint QueryID) UGL_OPTIONAL_VOID static FORCEINLINE void BeginQuery(GLenum QueryType
static FORCEINLINE bool SupportsVolumeTextureRendering()
Definition OpenGLBase.h:87
static FORCEINLINE void GLenum GLuint GLint GLsizei GLint GLsizei NumViews static UGL_REQUIRED_VOID FORCEINLINE void const GLenum *Buffers static UGL_REQUIRED_VOID FORCEINLINE void GLuint Index static UGL_REQUIRED_VOID FORCEINLINE void GLboolean GLboolean GLboolean GLboolean Alpha static UGL_REQUIRED_VOID FORCEINLINE void GLint GLenum GLsizei const GLvoid *Pointer static UGL_REQUIRED_VOID FORCEINLINE void const GLshort *Values static UGL_REQUIRED_VOID FORCEINLINE void VertexAttribI4sv(GLuint AttributeIndex, const GLshort *Values) UGL_REQUIRED_VOID static FORCEINLINE void VertexAttribI4usv(GLuint AttributeIndex
static FORCEINLINE bool SupportsSeamlessCubeMap()
Definition OpenGLBase.h:105
static FORCEINLINE void ProgramUniform4uiv(GLuint Program, GLint Location, GLsizei Count, const GLuint *Value) UGL_REQUIRED_VOID static FORCEINLINE void GetProgramPipelineiv(GLuint Pipeline
static FORCEINLINE void GLuint QueryId static UGL_OPTIONAL_VOID FORCEINLINE void EQueryMode GLuint64 *OutResult static UGL_OPTIONAL_VOID FORCEINLINE void GLbitfield Flags GLbitfield GLuint64 Timeout GLuint *Samplers static UGL_OPTIONAL_VOID FORCEINLINE void GLenum GLint Value static UGL_OPTIONAL_VOID FORCEINLINE void GLenum Mode static UGL_OPTIONAL_VOID FORCEINLINE void GLuint const ANSICHAR *Name static UGL_OPTIONAL_VOID FORCEINLINE GLsizei GLsizei const GLenum *Attachments static UGL_OPTIONAL_VOID FORCEINLINE void uint32 uint32 InSize static UGL_REQUIRED_VOID FORCEINLINE void GLuint *QueryIDs static UGL_REQUIRED_VOID FORCEINLINE void EQueryMode GLuint *OutResult static UGL_REQUIRED_VOID FORCEINLINE void GLuint GLuint GLintptr GLsizeiptr Size static UGL_REQUIRED_VOID FORCEINLINE GLuint GLuint GLuint UniformBlockBinding static UGL_REQUIRED_VOID FORCEINLINE void GLenum GLint Value static UGL_REQUIRED_VOID FORCEINLINE void FramebufferTexture(GLenum Target, GLenum Attachment, GLuint Texture, GLint Level) UGL_REQUIRED_VOID static FORCEINLINE void FramebufferTexture2D(GLenum Target
Definition Array.h:670
UE_REWRITE SizeType Num() const
Definition Array.h:1144
UE_NODEBUG UE_FORCEINLINE_HINT SizeType Add(ElementType &&Item)
Definition Array.h:2696
ElementType Pop(EAllowShrinking AllowShrinking=UE::Core::Private::AllowShrinkingByDefault< AllocatorType >())
Definition Array.h:1196
Definition UnrealString.h.inl:34
Type
Definition RHIFeatureLevel.h:20
@ ES3_1
Definition RHIFeatureLevel.h:25
PFNGLFRAMEBUFFERTEXTUREPROC glFramebufferTexture
Definition AndroidOpenGLFunctions.cpp:64
UE_STRING_CLASS Result(Forward< LhsType >(Lhs), RhsLen)
Definition String.cpp.inl:732
U16 Index
Definition radfft.cpp:71
static UE_FORCEINLINE_HINT void * Memcpy(void *Dest, const void *Src, SIZE_T Count)
Definition UnrealMemory.h:160
Definition LinuxOpenGLPlatform.cpp:39
Definition LinuxOpenGLPlatform.cpp:175