OpenGL ES

OpenGL ES
OpenGL ES
OpenGL ES logo
로고
원저작자ARB
개발자크로노스 그룹
초기 릴리즈2003년 7월 28일;19년 전(2003-07-28)
안정된 릴리스
3[1].2 / 2015년 8월 10일, 6년 전(2015-08-10)
운영 체제크로스 플랫폼
플랫폼크로스 플랫폼
유형API
면허증.무료, 로열티 또는 라이선스
웹 사이트www.khronos.org/opengles

OpenGL for Embedded Systems(OpenGL ES 또는 GLES)는 비디오 게임에서 사용되는 그래픽스 등 2D3D 그래픽스렌더링하기 위한 OpenGL 컴퓨터 그래픽스 렌더링 애플리케이션 프로그래밍 인터페이스(API)의[2] 서브셋입니다.일반적으로 그래픽 처리 유닛(GPU)을 사용하여 하드웨어 가속됩니다.스마트폰, 태블릿 컴퓨터, 비디오 게임 콘솔 및 PDA같은 임베디드 시스템을 위해 설계되었습니다.OpenGL ES는 "역사적으로 가장 널리 도입된 3D 그래픽스 API"[3]입니다.

API는 크로스 언어 및 멀티 플랫폼입니다.OpenGL ES에서는 GLUT 및 GLU 라이브러리를 사용할 수 없습니다.OpenGL ES는 비영리 기술 컨소시엄 Khronos Group에서 관리합니다.Khronos의 차세대 API인 Vulkan은 모바일 [4]및 데스크톱 디바이스용 심플한 고성능 드라이버를 위해 제작되었습니다.

버전

현재 OpenGL ES 사양의 여러 버전이 존재합니다.OpenGL ES 1.0은 OpenGL 1.3 사양에 따라 작성되며 OpenGL ES 1.1은 OpenGL 1.5 사양에 따라 정의되며 OpenGL ES 2.0은 OpenGL 2.0 사양에 따라 정의됩니다.즉, 예를 들어 OpenGL ES 1.0용으로 작성된 어플리케이션은 데스크톱 OpenGL 1.3으로 쉽게 이동할 수 있어야 합니다.OpenGL ES는 API를 제거한 버전이기 때문에 사용하는 특정 기능에 따라 그 반대의 경우도 있고 그렇지 않을 수도 있습니다.

OpenGL ES는 OpenGL [5]SL과는 다른 자체 버전의 쉐이딩 언어(OpenGL ESL)를 갖추고 있습니다.

버전 1.0 및 1.1에는 공통(CM) 및 공통 라이트(CL) 프로파일이 있습니다.단, 공통 라이트 프로파일은 부동 소수점 데이터 타입이 아닌 고정 소수점만 지원하지만 공통 라이트 프로파일은 둘 다 지원한다는 점이 다릅니다.

OpenGL ES 1.0

OpenGL ES 1.0은 2003년 7월 28일에 공개되었습니다.OpenGL ES 1.0은 오리지널 OpenGL 1.3 API를 기반으로 하며 많은 기능이 제거되고 약간의 기능이 추가되었습니다.OpenGL과 OpenGL ES의 중요한 차이점 중 하나는 OpenGL ES가 OpenGL 라이브러리의 호출을 다음과 같이 묶을 필요가 없다는 것입니다.glBegin그리고.glEnd다른 중요한 차이점은 원시 렌더링 함수의 호출 시멘틱스가 정점 배열을 위해 변경되었고 정점 좌표에 고정점 데이터 유형이 도입되었다는 것입니다.또한 FPU(부동소수점 단위)가 없는 경우가 많은 임베디드 프로세서의 연산 능력을 더 잘 지원하기 위해 속성이 추가되었습니다.버전 1.0에서는 다음과 같은 많은 다른 기능과 렌더링 프리미티브가 제거되어 경량 인터페이스가 생성되었습니다.

  • 쿼드 및 폴리곤 렌더링 프리미티브
  • 텍스젠, 선 및 폴리곤 스티플
  • (알파 테두리 조각이 아닌) 멀티샘플을 사용한 렌더링은 계속 가능하지만 폴리곤 모드 및 안티에이리어스 폴리곤 렌더링은 지원되지 않습니다.
  • ARB_Image픽셀 클래스 조작, 비트맵 및 3D 텍스처는 지원되지 않습니다.
  • 전면 버퍼 및 축적 버퍼를 포함한 보다 기술적인 그리기 모드 중 몇 가지가 제거됩니다.
  • 픽셀, 평가자 및 사용자 선택 작업을 개별적으로 복사하는 비트맵 작업은 허용되지 않습니다.
  • 상태 속성에 대한 푸시 및 팝 조작과 마찬가지로 표시 목록 및 피드백이 제거된다.
  • 후면 매개변수 및 사용자 정의 클립 평면 등 일부 재료 매개변수가 제거되었습니다.

실제 버전은 1.0.0.[6]2입니다.

내선번호 #번호 정렬 세부 사항
OES_byte_좌표 OpenGL ES 확장 #4 (구 OpenGL Extension #291)
OES_compressed_paletted_texture OpenGL ES 확장 #6 (구 OpenGL Extension #294)
OES_fixed_point(고정점) OpenGL ES 확장 #9 (구 OpenGL Extension #292)
OES_query_matrix OpenGL ES 확장 #16 (구 OpenGL Extension #296)
OES_read_format OpenGL ES 확장 #17 (구 OpenGL Extension #295)
OES_single_precision OpenGL ES 확장 #18 (구 OpenGL Extension #293)
선택적. Mesa(대부분의 드라이버)
OES_압축_ETC1_RGB8_texture OpenGL ES 확장 #5

OpenGL ES 1.1

OpenGL ES 1.1은 멀티스텔링에 대한 필수 지원, 더 나은 멀티스텔링 지원(조합원 및 도트 제품 텍스처 작업 포함), 자동 mipmap 생성, 정점 버퍼 객체, 상태 쿼리, 사용자 클립 평면 및 포인트 [7]렌더링에 대한 더 나은 제어 등의 기능을 추가했습니다.실제 버전은 1.1.[8]12입니다.

내선번호 #번호 정렬
OES_draw_texture OpenGL ES 확장 #7
OES_matrix_get OpenGL ES 확장 #11
OES_point_size_array OpenGL ES 확장 번호14
OES_point_sprite OpenGL ES 확장 #15
선택적. Mesa(모든 드라이버)
OES_framebuffer_object OpenGL ES Extension #10 (ES 2.0에서 [9]코어가 됨)
OES_EGL_이미지 OpenGL ES 확장 #23
OES_EGL_image_외부 OpenGL ES 확장 #87
OES_required_internal 포맷 OpenGL ES 확장 # TBD

OpenGL ES 2.0

OpenGL ES 2.0은 2007년 [10]3월에 공개되었습니다.대략 OpenGL 2.0을 기반으로 하지만 OpenGL 3.0에서 3.1로의 [11]이행과 유사하게 대부분의 고정 함수 렌더링 파이프라인을 제거하여 프로그래밍 가능한 파이프라인을 선호합니다.쉐이더의 제어 흐름은 일반적으로 포워드 브랜치 및 컴파일 시에 [12]최대 반복 횟수를 쉽게 결정할 수 있는 루프로 제한됩니다.변환 및 조명 스테이지의 거의 모든 렌더링 기능(예: 고정 기능 API에 의해 이전에 지정된 재료의 사양 및 광 파라미터)은 그래픽 프로그래머가 작성한 셰이더로 대체됩니다.따라서 OpenGL ES 2.0은 OpenGL ES 1.1과 하위 호환성이 없습니다. OpenGL과 OpenGL ES 2.0의 데스크톱 버전 간의 일부 비호환성은 OpenGL 4.1까지 지속되었으며, 이 버전에는GL_ARB_ES2_compatibility내선 [13]번호실제 버전은 2.0.[14]25입니다.

Khronos 그룹은 OpenGL ES 2.0과 일반 OpenGL 2.0의 [15]차이점을 설명하는 문서를 작성했습니다.

내선번호 #번호 정렬
OES_texture_cube_map OpenGL ES 확장 #20
OES_texture_npot OpenGL ES 확장 번호 37
OES_depth24 OpenGL ES 확장 #24
OES_depth_texture OpenGL ES 확장 #44
OES_element_index_uint OpenGL ES 확장 #26
OES_fbo_render_mipmap OpenGL ES 확장 #27
OES_get_program_binary OpenGL ES 확장 #47
OES_맵 버퍼 OpenGL ES 확장 #29
OES_packed_depth_stencil OpenGL ES 확장 #43
OES_rgb8_rgba8 OpenGL ES 확장 #30
OES_stencil8 OpenGL ES 확장 #33
OES_vertex_half_float OpenGL ES 확장 번호 38
추가의 MESA(모든 드라이버)
OES_EGL_이미지 OpenGL ES 확장 #23 (1.1에서는 다름)
OES_EGL_image_외부 OpenGL ES 확장 #87 (1.1에서는 다름)
OES_texture_3d OpenGL ES Extension #34 ([16]ES 3.0에서 코어가 됨)
OES_texture_float_선형 OES_texture_half_float_선형 OpenGL ES 확장 #35, ES 3.0 및 3.1로 확장
OES_texture_float OES_texture_half_float OpenGL ES 확장 #36, ES 3.0 및 3.1로 확장
OES_standard_파생물 OpenGL ES 확장 #45
OES_vertex_array_object OpenGL ES Extension #71 (ES 3.0에서 [16]코어가 됨)
OES_surfaceless_context OpenGL ES 확장번호 116
OES_depth_texture_cube_map OpenGL ES 확장번호 136
EXT_texture_filter_ 이방성 OpenGL ES 확장 #41
EXT_texture_type_2_10_10_10_10_10_리비전 OpenGL ES 확장 #42
EXT_texture_compression_dxt1 OpenGL ES 확장 #49
EXT_texture_format_BGRA88888 OpenGL ES 확장 #51
EXT_discard_framebuffer OpenGL ES 확장 #64
EXT_blend_minmax OpenGL ES 확장 #65
EXT_read_format_bgra OpenGL ES 확장 #66
EXT_multi_draw_arrays OpenGL ES 확장 #69
EXT_frag_depth OpenGL ES 확장 #86
EXT_unpack_subimage OpenGL ES 확장 #90
EXT_texture_rg OpenGL ES 확장 #103
EXT_draw_buffers OpenGL ES 확장 #151
EXT_압축_ETC1_RGB8_sub_texture OpenGL ES 확장 번호188
NV_draw_buffers OpenGL ES 확장 #91
NV_fbo_color_attachments OpenGL ES 확장 #92
NV_read_buffer OpenGL ES 확장 #93
NV_read_depth_stencil OpenGL ES 확장 #94
ANGLE_texture_compression_dxt OpenGL ES 확장번호 111

OpenGL ES 3.0

OpenGL ES 3.0 사양은[17] 2012년 [18]8월에 공개되었습니다.OpenGL ES 3.0은 OpenGL ES 2.0과 하위 호환되므로 애플리케이션에 새로운 비주얼 기능을 점진적으로 추가할 수 있습니다.OpenGL 4.3은 OpenGL ES 3.0과의 완전한 호환성을 제공합니다.버전 3.0은 WebGL 2.0의 [19]기반이기도 합니다.실제 버전은 3.0.[20]6입니다.

OpenGL ES 3.0 사양의 신기능은 다음과 같습니다.

  • 렌더링 파이프라인에 대한 여러 기능 향상: 폐색 쿼리, 변환 피드백, 인스턴스 렌더링, 4개 이상의 렌더링 대상 지원,
  • 고품질 ETC2 / EAC 텍스처 압축이 표준 기능으로 제공되므로 플랫폼마다 다른 텍스처 세트가 필요하지 않습니다.
  • 정수 및 32비트 부동소수점 연산을 완전히 지원하는 새로운 버전의 GLSL ES 쉐이딩[21] 언어
  • 플로팅 포인트 텍스처, 3D 텍스처, 깊이 텍스처, 정점 텍스처, NPOT 텍스처, R/RG 텍스처, 불변의 텍스처, 2D 어레이 텍스처, 스위즐, LODmip 레벨 클램프, 심리스 큐브 맵 및 썬플라 오브젝트 지원 등 대폭 강화된 텍스처 기능
  • 다양한 필수 텍스처와 명확한 크기의 렌더링 포맷을 제공하여 구현의 다양성을 줄이고 휴대용 응용 프로그램을 훨씬 쉽게 작성할 수 있습니다.
내선번호 #번호 정렬 세부 사항
KHR_context_flush_control OpenGL ES 확장 #191 (GL_KHR_context_flush_control 전용)
추가의 MESA(모든 드라이버)
OES_texture_compression_astc OpenGL ES 확장 번호 162
EXT_texture_border_clamp OpenGL ES 확장 번호 182
EXT_draw_elements_base_vertex OpenGL ES 확장 번호204
OES_EGL_image_external_essl3 OpenGL ES 확장 #220
MESA_shader_integer_functions OpenGL ES 확장 #495

OpenGL ES 3.1

OpenGL ES 3.1 사양은[22] 2014년 3월에 공개되었습니다.OpenGL ES 3.1의 신기능은 다음과 같습니다.[23]

  • 셰이더 계산
  • 독립 정점 및 프래그먼트 셰이더
  • 간접 그리기 명령

OpenGL ES 3.1은 OpenGL ES 2.0 및 3.0과 하위 호환되므로 응용 프로그램에서 새로운 기능을 점진적으로 통합할 수 있습니다.실제 버전은 3.1-(2016년 [24]11월)입니다.

내선번호 #번호 정렬
ARB_arrays_of_arrays ARB 확장 #120
ARB_compute_shader ARB 확장 #122
ARB_explicit_uniform_location ARB 확장 #128
ARB_framebuffer_no_attachments ARB 확장 #130
ARB_program_interface_query ARB 내선번호 134
ARB_shader_atomic_counters ARB 확장 번호 114
ARB_shader_image_load_store ARB 확장 번호 115
ARB_shader_storage_buffer_object ARB 확장 번호 137
ARB_separate_shader_objects ARB 확장 #97
ARB_stencil_texturing ARB 확장 번호 138
ARB_vertex_attribut_binding ARB 확장 번호 125
ARB_draw_간접 ARB 확장 #87
ARB_shading_language_packing ARB 확장 번호 116
ARB_shader_image_size ARB 확장 번호 136
ARB_texture_스토리지_멀티샘플 ARB 확장 번호 141
ARB_texture_멀티샘플 ARB 확장 #67
EXT_shader_integer_mix OpenGL ES 확장 번호 161
선택적. Mesa (모든 드라이버 OpenGL ES 3.1+)
ARB_sample_locations ARB 확장 번호 181
OES_texture_뷰 OpenGL ES 확장 번호218
NV_image_formats OpenGL ES 확장 #200
EXT_render_snorm OpenGL ES 확장 번호206
EXT_texture_norm16 OpenGL ES 확장 번호207

OpenGL ES 3.2

OpenGL ES 3.2 사양은[25] 2015년 8월에 공개되었습니다.OpenGL ES 3.2의 신기능은 다음과 같습니다.

  • GPU의 복잡한 장면을 효율적으로 처리하기 위한 지오메트리 및 테셀레이션 셰이더.
  • 부동소수점 렌더링 타깃을 통해 보다 정밀도가 높은 컴퓨팅 작업에서 유연성을 높입니다.
  • ASTC 압축: 텍스처 처리에 사용되는 메모리 풋프린트와 대역폭을 줄입니다.
  • 여러 색상의 첨부 파일을 정교하게 합성 및 취급할 수 있는 블렌딩 기능 강화.
  • 텍스처 버퍼, 멀티샘플 2D 어레이, 큐브 맵 어레이 등의 고급 텍스처 타깃.
  • 디버깅 및 견고성 기능을 통해 코드 개발과 안전한 실행이 용이합니다.

실제 상태는 2019년 [26][27]7월 3.2.6일입니다.

내선번호 #번호 정렬
KHR_blend_equation_advanced OpenGL ES 확장 번호168
EXT_color_buffer_float OpenGL ES 확장 번호 137
KHR_debug OpenGL ES 확장 #118
KHR_강성 OpenGL ES 확장 #190
OES_copy_image OpenGL ES 확장 번호208
OES_draw_buffers_indexed OpenGL ES 확장 번호209
OES_draw_elements_base_vertex OpenGL ES 확장 번호 219
OES_기하학_섀도 OpenGL ES 확장 번호210
OES_gpu_shader5 OpenGL ES 확장 #211
OES_sample_shading OpenGL ES 확장 번호 169
OES_sample_variables OpenGL ES 확장 #170
OES_shader_image_atomic OpenGL ES 확장 #171
OES_shader_io_blocks OpenGL ES 확장 번호 213
OES_shader_multisample_interpolation OpenGL ES 확장 #172
OES_테세레이션_섀도 OpenGL ES 확장 #214
OES_texture_border_clamp OpenGL ES 확장 #215
OES_texture_버퍼 OpenGL ES 확장 #216
OES_texture_cube_map_array OpenGL ES 확장 #217
OES_texture_stencil8 OpenGL ES 확장 #173
OES_texture_storage_multisample_2d_array OpenGL ES 확장 #174
KHR_texture_compression_astc_ldr OpenGL ES Extension #117 (LDR만)
OES_primitive_bounding_box OpenGL ES 확장 번호212
선택적. Mesa (모든 드라이버 OpenGL ES 3.2 이상)
KHR_texture_compression_astc_hdr OpenGL ES 확장 #117(LDR 포함), ARB 확장 #118
KHR_blend_equation_advanced_comminent OpenGL ES 확장 번호168
KHR_texture_compression_astc_sliced_3d OpenGL ES 내선번호 249(ARB 내선번호 189)

OES_viewport_array

OpenGL ES 확장 #267

일부 확장 기능은 다음 OpenGL ES 버전의 Mesa에서 개발 또는 개발 중입니다(Mesamatrix 참조).

차세대 API는 Vulkan입니다.[28]

플랫폼 사용 현황

기업 및 해당 제품의 전체 목록은 여기를 참조하십시오.

OpenGL ES 1.0

OpenGL ES 1.0은 Android [33]Symbian[30] 운영체제[29]QNX[31] 의해 공식 3D 그래픽 API를 추가하였습니다. 또한 플레이스테이션 3에서는 GLSL 대신 Nvidia의 Cg와 함께 공식 그래픽 API[32] 중 하나(다른 하나는 로우 레벨 libgcm 라이브러리)로 지원됩니다.PlayStation 3에는 OpenGL ES 2.0 버전의 여러 기능도 포함되어 있습니다.

OpenGL ES 1.1

OpenGL ES 1.1 버전은 다음에서 지원됩니다.

OpenGL ES 2.0

지원 대상자:

OpenGL ES 3.0

지원 대상자:

다음 GPU의 [43][44]일부 최신 버전에서 지원됩니다.

  • Adreno 300 및 400 시리즈(Android, BlackBerry 10, Windows 10 RT)
  • Mali T600 시리즈 이후 (Android, Linux, Windows 7)
  • PowerVR Series 6 (iOS, Linux)
  • Vivante (Android, OS X 10.8.3, Windows 7)
  • Nvidia(Android), Tesla G80+: Linux, Windows 7+
  • 인텔 HD 그래픽스 Sandy Bridge 이상 (Linux)[39]
  • AMD Terascale 및 실제 GCN 아키텍처(Windows, Linux)
  • LLVMpipe 및 Softpipe: Mesa의[40] 소프트 드라이버
  • VIRGL: 2018년 Mesa 18.1 가상 머신용 가상 드라이버(Mesamatrix.net 참조)

OpenGL ES 3.1

Windows, Linux, Android (버전 5.0 이후)에서 다음을 포함한 적절한 하드웨어 및 [45]드라이버를 갖춘 디바이스에서 지원됩니다.

  • 아드레노 400 시리즈[46][47]
  • Adreno 500 시리즈 (Linux 및 Android용 Mesa 18.1)
  • AMD Terascale 및 실제 GCN 아키텍처(Windows, Linux(r600, radeon))SI)
  • 인텔 ATOM Z3700 시리즈용 인텔 HD 그래픽스 (Android)
  • 인텔 Celeron N 및 J 시리즈용 인텔 HD 그래픽스 (Android)
  • 인텔 Pentium N 및 J 시리즈용 인텔 HD 그래픽스 (Android)
  • 인텔 HD 그래픽스 Haswell 이상 (Linux Mesa: 이전 Ivy Bridge는 거의 스텐실 [39]텍스처링 없음)
  • Mali T6xx (midgard) 시리즈[48] 이후 (Android, Linux)
  • Nvidia GeForce 400 시리즈 이후 (Windows, Linux)
  • Nvidia Tegra K1 (Android, Linux)
  • Nvidia Tegra X1 (Android)
  • PowerVR 시리즈 6, 6XE, 6XT, 7XE 및 7XT (Linux, Android)
  • Vivante GC2000 시리즈 이후(GC800 및 GC1000의 [49]경우 옵션)
  • panfrost: ARM panfrost 지원(Linux Mesa 22.0)
  • v3d: Broadcom ARM 라즈베리용 드라이버(Linux)
  • VIRGL: 2018년 Mesa 18.1 가상 머신용 가상 드라이버(Mesamatrix.net 참조)
  • LLVMpipe: Mesa 20.2 소프트웨어 드라이버(Linux)
  • softpipe: Mesa 20.3 소프트웨어 드라이버(Linux)
  • Zink: Mesa 21.1 (Linux) 에뮬레이션 드라이버
  • d3d12: Microsoft 10+용 WSL2 Linux 드라이버 (Mesa 22.0)

Android 확장팩

Android Extension Pack(AEP)은 OpenGL ES 3.1 확장자 세트이며, 2014년 Google이 선보인 단일 확장자로 모두 번들되어 있습니다.이를 통해 응용 프로그램은 확장 세트의 모든 기능을 사용하고 단일 확장 세트의 존재 여부만 테스트할 수 있습니다.AEP는 공식적으로 GLES 3.1 리비전보다 테셀레이션과 같은 추가 기능을 제공하기 위해 안드로이드 롤리팝에 공식적으로 추가되었다.OpenGL ES 3.2 업데이트는 주로 데스크톱 OpenGL에 [50]이미 있는 AEP 추가 정보로 구성됩니다.

OpenGL ES 3.2

Android Extension Pack(AEP)을 내장한 OpenGL ES 3.2는 "작년의 OpenGL ES 3.1보다 몇 가지 향상된 기능을 자랑합니다. 둘 다 AEP의 유사한 기능을 사용합니다.AEP에서 OpenGL ES 3.2 준거 하드웨어는 추가 지오메트리 상세, 새로운 지오메트리 셰이더, 작은 메모리 대역폭 풋프린트를 위한 ASTC 텍스처 압축, 고정밀 컴퓨팅 프로세스를 위한 부동소수점 렌더링 타깃 및 개발자를 위한 새로운 디버깅 기능을 지원합니다.이러한 하이엔드 기능은 이미 그룹의 OpenGL 4 [51][3]사양에 포함되어 있습니다."

Windows, Linux, Android(버전 6.0 이후 버전 7.0 이상 Vulkan 1.0 및 OpenGL ES 3.2 필요)에서 다음을 포함한 적절한 하드웨어 및 드라이버가 있는 장치에서 지원됩니다.

  • Adreno 420 이후 (Android, Linux(Freedreno))
  • AMD GCN 아키텍처(Windows, Linux(Mesa 18.2, Radeon 탑재)SI)
  • 인텔 HD 그래픽스 Skylake 이상 (Linux)[39]
  • Mali-T760 이후 (Android, Linux)
  • Nvidia GeForce 400 시리즈(Fermi) 이후(Windows, Linux)[52]
  • VIRGL: 2018년 Mesa 18.1 가상 머신용 가상 드라이버(Mesamatrix.net 참조)
  • LLVMpipe: Mesa 20 소프트웨어 드라이버(Linux)
  • Zink: Mesa 21.2의 벌칸 에뮬레이션 드라이버(Linux)

Apple 디바이스의 폐지

OpenGL ES(및 OpenGL)는 Apple 운영체제에서는 권장되지 않지만 iOS 12 [53]이상에서도 작동합니다.

미래

임베디드 및 모바일 애플리케이션에서는 Vulkan을 채택하면 OpenGL ES를 대체할 것으로 여겨지기 때문에 현재 OpenGL ES의 새로운 코어 버전은 계획되어 있지 않습니다.OpenGL ES에 대한 확장 개발은 2017년 현재 계속되고 있습니다.[54]

OpenGL 호환성

GL ES를 사용하여 OpenGL 콜을 에뮬레이트하기 위해 몇 가지 라이브러리가 작성되었습니다.

  • Nvidia는 원래 Cass Everitt에 의해 시작된 Regal이라는 이름의 2절 BSD 라이센스 라이브러리를 제공합니다.2016년에 [55]마지막으로 업데이트되었습니다.예를 들어 구글의 [56]NaCl에서 Regal을 사용합니다.
  • MIT 라이선스 GL4ES는 GL ES 2.0/1.1을 사용하여 OpenGL 2.1/1.5를 에뮬레이트합니다.glshim을 [57]기반으로 합니다.

「 」를 참조해 주세요.

  • Direct3D – 고성능 3D 그래픽스용 Windows API(3D 액셀러레이션 하드웨어 지원)
  • DirectX – 그래픽스 및 비디오 관련 태스크 처리를 위한 Windows API
  • 메탈 – 애플 디바이스용 저레벨 고성능 3D 액셀러레이션 그래픽스 라이브러리
  • OpenSL ES – Khronos Group이 개발한 임베디드 시스템의 오디오용 API
  • Angle (소프트웨어)– OpenGL ES 호출을 DirectX 또는 Vulkan 호출로 변환하기 위해 구글이 개발한 라이브러리

레퍼런스

  1. ^ "Khronos Expands Scope of 3D Open Standard Ecosystem". 10 August 2015.
  2. ^ "OpenGL ES Overview". Khronos Group. 19 July 2011.
  3. ^ a b "3D Graphics API State of the Union: SIGGRAPH 2015" (PDF). Khronos. Industry will ship >1.7 billion devices in 2015
  4. ^ Hruska, Joel (4 March 2015). "Not dead yet: AMD's Mantle powers new Vulkan API, VR efforts". ExtremeTech. Ziff Davis.
  5. ^ "What versions of GLSL can I use in OpenGL ES 2.0?". Stack Overflow.
  6. ^ https://www.khronos.org/registry/OpenGL/specs/es/1.0/opengles_spec_1_0.pdf[베어 URL PDF]
  7. ^ http://developer.amd.com/wordpress/media/2012/10/GDC06-GLES_Tutorial_Day-Munshi-OpenGLES_Overview.pdf[베어 URL PDF]
  8. ^ https://www.khronos.org/registry/OpenGL/specs/es/1.1/es_full_spec_1.1.pdf[베어 URL PDF]
  9. ^ "stack overflow: glGenFramebuffersOES vs glGenFramebuffers?". Retrieved 2022-04-19.
  10. ^ "Khronos Press Releases - OpenGL ES 2.0". Khronos.org. 2007-03-05. Archived from the original on 2010-12-28. Retrieved 2010-12-23.
  11. ^ Edward Angel, Dave Shreiner, 인터랙티브 컴퓨터 그래픽스: 셰이더 기반의 OpenGL을 사용한 톱다운 접근법, 제6판, xxi-xxii, ISBN 978-0-13-254523-5
  12. ^ "The OpenGL® ES Shading Language" (PDF). Khronos.org. Retrieved 2013-02-16.
  13. ^ "The OpenGL(R)Graphics System: A Specification (Version 4.1 (Core Profile)" (PDF). July 25, 2010.
  14. ^ https://www.khronos.org/registry/OpenGL/specs/es/2.0/es_full_spec_2.0.pdf[베어 URL PDF]
  15. ^ "OpenGL© ES – Common Profile Specification 2.0.25 (Difference Specification)" (PDF). November 2, 2010.
  16. ^ a b "OpenGL ES 3.0 Programming Guide" (PDF). Pearson Education, Inc. Retrieved 2022-04-18.
  17. ^ "Khronos OpenGL ES Registry - The Khronos Group Inc". registry.khronos.org.
  18. ^ "Khronos Releases OpenGL ES 3.0 Specification to Bring Mobile 3D Graphics to the Next Level". Khronos.org. 2012-08-06. Retrieved 2012-08-06.
  19. ^ "WebGL 2.0 Specification". registry.khronos.org.
  20. ^ https://www.khronos.org/registry/OpenGL/specs/es/3.0/es_spec_3.0.pdf[베어 URL PDF]
  21. ^ "OpenGL ES 3.1 Reference Pages". registry.khronos.org.
  22. ^ "Khronos OpenGL ES Registry - The Khronos Group Inc". registry.khronos.org.
  23. ^ "Khronos Releases OpenGL ES 3.1 Specification". Khronos.org. 2014-03-17. Retrieved 2014-03-17.
  24. ^ https://www.khronos.org/registry/OpenGL/specs/es/3.1/es_spec_3.1.pdf[베어 URL PDF]
  25. ^ "Khronos OpenGL ES Registry - The Khronos Group Inc". registry.khronos.org.
  26. ^ https://www.khronos.org/registry/OpenGL/specs/es/3.2/es_spec_3.2.pdf[베어 URL PDF]
  27. ^ https://www.khronos.org/registry/OpenGL/specs/es/3.2/GLSL_ES_Specification_3.20.pdf[베어 URL PDF]
  28. ^ "Next Generation OpenGL Becomes Vulkan: Additional Details Released".
  29. ^ "Android Platform". Android Developers.
  30. ^ "Symbian OS v9.5 product sheet". Symbian. Archived from the original on 2008-03-27.
  31. ^ "Using OpenGL ES". QNX Software Development Platform (v6.5.0). QNX. Retrieved 2011-01-08.
  32. ^ "OpenGL ES demo in PPT format". 21 November 2021.
  33. ^ "OpenGL ES/PSGL Presentation in PPT format". Sony. Khronos. 21 November 2021.
  34. ^ "New in this beta release". Release Notes - BlackBerry Java Application. Research in Motion. Archived from the original on 2009-12-02. Retrieved 2009-12-08.
  35. ^ Koh, Damian (2009-11-29). "What to expect for BlackBerry smartphones". CNET Asia. Archived from the original on 2009-12-13. Retrieved 2009-12-08.
  36. ^ a b "PDK - Overview". HP Palm Developer Center. Archived from the original on 2011-01-01. Retrieved 2010-12-23.
  37. ^ "DMP announces OpenGL ES 1.1 conformant PICA 200 adopted by Nintendo". 2010-06-21. Retrieved 2013-06-02.
  38. ^ "Android 2.2 specifications". 2010-07-01. Archived from the original on 2010-10-11.
  39. ^ a b c d "Mesa OpenGL Extensions and Capabilities". people.freedesktop.org.
  40. ^ a b "Mesa OpenGL Extensions and Capabilities". people.freedesktop.org.
  41. ^ "Maemo software - Nokia > Nokia N900 mobile computer > Technical specifications". Nokia Corporation. Archived from the original on 29 October 2009. Retrieved 12 January 2010.
  42. ^ "iOS 8 for Developers". Apple Developer.
  43. ^ "Khronos Conformant Products". 21 November 2021.
  44. ^ Sag, Anshel (2013-04-11). "The State of OpenGL ES 3.0: Who's Got What". Bright Side of News. Archived from the original on 2013-06-15. Retrieved 2015-12-22.
  45. ^ "OpenGL ES3.1 Conformant Products". Retrieved 2014-08-11.
  46. ^ "Adreno™ Graphics Processing Units". Qualcomm. Retrieved 2014-08-11.
  47. ^ "GL ES 3.1 on Adreno 3xx?". Retrieved 2014-08-11.
  48. ^ "ARM's Mali Midgard Architecture Explored". AnandTech. Retrieved 2014-08-11.
  49. ^ "Vivante Vega Cores for 3D". Vivante. Retrieved 2014-12-10.
  50. ^ "Khronos Debuts OpenGL ES 3.2 & New GL Extensions, But No Vulkan This Week". August 10, 2015. Retrieved August 11, 2015.
  51. ^ "OpenGL ES 3.2 and Vulkan – everything you need to know". Android Authority. 2015-08-15. Retrieved 2015-12-22.
  52. ^ "NVIDIA Releases 358.50 Game Ready Drivers For Star Wars Battlefront". AnandTech. Retrieved 2015-10-07.
  53. ^ Apple Inc. "What's New in iOS - Apple Developer". developer.apple.com. Retrieved 2018-08-07. Apps built using OpenGL ES will continue to run in iOS 12, but OpenGL ES is deprecated in iOS 13.
  54. ^ Khronos. "Vulkan, OpenGL, and OpenGL ES" (PDF). www.khronos.org. Retrieved 2020-04-24.
  55. ^ "p3/regal: Regal for OpenGL". GitHub. 18 October 2021.
  56. ^ McCutchan, John (7 September 2012). "In-depth: Bringing Regal OpenGL to Native Client". Gamasutra.
  57. ^ "GL4ES - The OpenGL driver for GLES Hardware". GitHub.

추가 정보

외부 링크