GL2ES2 on Desktop ================= GL2ES2 Profile with GL_ARB_ES2_compatibility: Extension is supported and recognized properly. It can be queried via GLContext.isGLES2Compatible() and impacts many ES2 related GL2ES2 wrapper functions like glShaderBinary(..). Having ES2 compatibility results in a full ES2 implementation even if using GL2ES2 via a desktop profile. Of course, ES2 extensions are not supported in this case. Native GLES2 on Desktop ======================= Ensure that the native ES2/EGL libraries are available in your LD_LIBRARY_PATH (or equivalent). Note that JOGL favors the spec lib names for it's lib name order: ES2: libGLESv2.so.2, libGLESv2.so, GLES20, GLESv2_CM EGL: libEGL.so.1, libEGL.so, EGL To utilize native ES2 on desktop (See TestGLProfile02NEWT and TestGearsES2NEWT) you have to request the actual profile 'GLES2' otherwise a request for e.g. GL2ES2 will utilize the highest common desktop profile. <... if(!GLProfile.isAvailable(GLProfile.GLES2)) { System.out.println("GLProfile GLES2 n/a"); return; } GLCapabilities caps = new GLCapabilities(GLProfile.get(GLProfile.GLES2)); ...> Linux: PVRVFrame 2.09.29.0649, Version_REL_2.10 Debian Wheezy/testing x64, NV 290.10, 32bit libraries: OK GL_VENDOR Imagination Technologies (Host GL: `NVIDIA Corporation`) GL_RENDERER PowerVR PVRVFrame 8.1 SGX (Host GL: `GeForce GTX 460/PCI/SSE2`) GL_VERSION OpenGL ES 2.0 ( SDK build: 2.09.29.0646 ) GL_EXTENSIONS GL_OES_byte_coordinates GL_OES_fixed_point GL_OES_query_matrix GL_OES_single_precision GL_OES_matrix_get GL_OES_read_format GL_IMG_read_format GL_OES_point_sprite GL_OES_query_matrix GL_OES_texture_env_crossbar GL_OES_texture_mirrored_repeat GL_OES_blend_subtract GL_OES_blend_func_separate GL_OES_blend_equation_separate GL_OES_stencil_wrap GL_OES_extended_matrix_palette GL_IMG_multisampled_render_to_texture GL_OES_vertex_half_float GL_OES_compressed_ETC1_RGB8_texture GL_OES_compressed_paletted_texture GL_OES_depth24 GL_OES_depth_texture GL_OES_required_internalformat GL_OES_vertex_array_object GL_OES_packed_depth_stencil GL_EXT_discard_framebuffer GL_OES_texture_float GL_OES_texture_half_float GL_OES_texture_cube_map GL_OES_rgb8_rgba8 GL_OES_stencil8 GL_OES_fragment_precision_high GL_OES_element_index_uint GL_IMG_texture_compression_pvrtc GL_OES_mapbuffer GL_OES_texture_npot GL_EXT_multi_draw_arrays GLX_EXTENSIONS Debian Wheezy/testing x64, NV 290.10, 64bit libraries: Failure (eglCreateContext EGL_BAD_ATTRIBUTE) Ubuntu 11.10 x64, AMD Catalyst 12.1, 32bit libraries: X Error of failed request: BadMatch (invalid parameter attributes) Major opcode of failed request: 137 (GLX) Minor opcode of failed request: 5 (X_GLXMakeCurrent) Serial number of failed request: 51 Current serial number in output stream: 51 dlopen tries: libGL.so OpenGL ES 2.0 Mesa (libegl1-mesa*, libgles2-mesa*) Debian Wheezy/testing x64, NV 290.10, 64bit libraries, libgles2-mesa 7.11.2-1: OK GL_VENDOR Mesa Project GL_RENDERER Software Rasterizer GL_VERSION OpenGL ES 2.0 Mesa 7.11.2 GL_EXTENSIONS GL_EXT_blend_minmax GL_EXT_multi_draw_arrays GL_EXT_texture_filter_anisotropic GL_OES_depth24 GL_OES_element_index_uint GL_OES_fbo_render_mipmap GL_OES_mapbuffer GL_OES_rgb8_rgba8 GL_OES_standard_derivatives GL_OES_stencil8 GL_OES_texture_3D GL_OES_texture_npot GL_OES_depth_texture GL_OES_packed_depth_stencil GL_EXT_texture_type_2_10_10_10_REV GLX_EXTENSIONS EGL_KHR_surfaceless_opengl EGL_KHR_surfaceless_gles1 EGL_KHR_surfaceless_gles2 Ubuntu 11.10 x64, AMD Catalyst 12.1, 64bit libraries, libgles2-mesa 7.11-0ubuntu3: Error (swrast error, null values) Windows: PVRVFrame 2.09.29.0649, Version_REL_2.10 Windows7 64bit, NV 290.10, 32bit libraries: OK GL_VENDOR Imagination Technologies (Host GL: `NVIDIA Corporation`) GL_RENDERER PowerVR PVRVFrame 8.1 SGX (Host GL: `GeForce GTX 460/PCIe/SSE2`) GL_VERSION OpenGL ES 2.0 ( SDK build: 2.09.29.0646 ) GL_EXTENSIONS GL_OES_byte_coordinates GL_OES_fixed_point GL_OES_query_matrix GL_OES_single_precision GL_OES_matrix_get GL_OES_read_format GL_IMG_read_format GL_OES_point_sprite GL_OES_query_matrix GL_OES_texture_env_crossbar GL_OES_texture_mirrored_repeat GL_OES_blend_subtract GL_OES_blend_func_separate GL_OES_blend_equation_separate GL_OES_stencil_wrap GL_OES_extended_matrix_palette GL_IMG_multisampled_render_to_texture GL_OES_vertex_half_float GL_OES_compressed_ETC1_RGB8_texture GL_OES_compressed_paletted_texture GL_OES_depth24 GL_OES_depth_texture GL_OES_required_internalformat GL_OES_vertex_array_object GL_OES_packed_depth_stencil GL_EXT_discard_framebuffer GL_OES_texture_float GL_OES_texture_half_float GL_OES_texture_cube_map GL_OES_rgb8_rgba8 GL_OES_stencil8 GL_OES_fragment_precision_high GL_OES_element_index_uint GL_IMG_texture_compression_pvrtc GL_OES_mapbuffer GL_OES_texture_npot GL_EXT_multi_draw_arrays GLX_EXTENSIONS ANGLE Windows7 64bit, NV 290.10, 32bit libraries: OK GL_VENDOR Google Inc. GL_RENDERER ANGLE (NVIDIA GeForce GTX 460) GL_VERSION OpenGL ES 2.0 (ANGLE 1.0.0.937) GL_EXTENSIONS GL_OES_element_index_uint GL_OES_packed_depth_stencil GL_OES_rgb8_rgba8 GL_OES_standard_derivatives GL_OES_texture_half_float GL_OES_texture_half_float_linear GL_OES_texture_float GL_OES_texture_float_linear GL_OES_texture_npot GL_EXT_read_format_bgra GL_EXT_robustness GL_EXT_texture_compression_dxt1 GL_EXT_texture_format_BGRA8888 GL_EXT_texture_storage GL_ANGLE_framebuffer_blit GL_ANGLE_framebuffer_multisample GL_ANGLE_pack_reverse_row_order GL_ANGLE_texture_compression_dxt3 GL_ANGLE_texture_compression_dxt5 GL_ANGLE_texture_usage GL_ANGLE_translated_shader_source GL_NV_fence GLX_EXTENSIONS EGL_NV_post_sub_buffer EGL_ANGLE_query_surface_pointer EGL_ANGLE_d3d_share_handle_client_buffer EGL_ANGLE_surface_d3d_texture_2d_share_handle EGL_EXT_create_context_robustness GLSL true, shader-compiler: true