diff --git a/doc/glew.html b/doc/glew.html index 896d724..60e60eb 100644 --- a/doc/glew.html +++ b/doc/glew.html @@ -737,323 +737,325 @@ THE POSSIBILITY OF SUCH DAMAGE. 613 NV_internalformat_sample_query 614 NV_light_max_exponent 615 NV_memory_attachment -616 NV_mesh_shader -617 NV_multisample_coverage -618 NV_multisample_filter_hint -619 NV_non_square_matrices -620 NV_occlusion_query -621 NV_pack_subimage -622 NV_packed_depth_stencil -623 NV_packed_float -624 NV_packed_float_linear -625 NV_parameter_buffer_object -626 NV_parameter_buffer_object2 -627 NV_path_rendering -628 NV_path_rendering_shared_edge -629 NV_pixel_buffer_object -630 NV_pixel_data_range -631 NV_platform_binary -632 NV_point_sprite -633 NV_polygon_mode -634 NV_present_video -635 NV_primitive_restart -636 NV_query_resource_tag -637 NV_read_buffer -638 NV_read_buffer_front -639 NV_read_depth -640 NV_read_depth_stencil -641 NV_read_stencil -642 NV_register_combiners -643 NV_register_combiners2 -644 NV_representative_fragment_test -645 NV_robustness_video_memory_purge -646 NV_sRGB_formats -647 NV_sample_locations -648 NV_sample_mask_override_coverage -649 NV_scissor_exclusive -650 NV_shader_atomic_counters -651 NV_shader_atomic_float -652 NV_shader_atomic_float64 -653 NV_shader_atomic_fp16_vector -654 NV_shader_atomic_int64 -655 NV_shader_buffer_load -656 NV_shader_noperspective_interpolation -657 NV_shader_storage_buffer_object -658 NV_shader_subgroup_partitioned -659 NV_shader_texture_footprint -660 NV_shader_thread_group -661 NV_shader_thread_shuffle -662 NV_shading_rate_image -663 NV_shadow_samplers_array -664 NV_shadow_samplers_cube -665 NV_stereo_view_rendering -666 NV_tessellation_program5 -667 NV_texgen_emboss -668 NV_texgen_reflection -669 NV_texture_array -670 NV_texture_barrier -671 NV_texture_border_clamp -672 NV_texture_compression_latc -673 NV_texture_compression_s3tc -674 NV_texture_compression_s3tc_update -675 NV_texture_compression_vtc -676 NV_texture_env_combine4 -677 NV_texture_expand_normal -678 NV_texture_multisample -679 NV_texture_npot_2D_mipmap -680 NV_texture_rectangle -681 NV_texture_rectangle_compressed -682 NV_texture_shader -683 NV_texture_shader2 -684 NV_texture_shader3 -685 NV_transform_feedback -686 NV_transform_feedback2 -687 NV_uniform_buffer_unified_memory -688 NV_vdpau_interop -689 NV_vdpau_interop2 -690 NV_vertex_array_range -691 NV_vertex_array_range2 -692 NV_vertex_attrib_integer_64bit -693 NV_vertex_buffer_unified_memory -694 NV_vertex_program -695 NV_vertex_program1_1 -696 NV_vertex_program2 -697 NV_vertex_program2_option -698 NV_vertex_program3 -699 NV_vertex_program4 -700 NV_video_capture -701 NV_viewport_array -702 NV_viewport_array2 -703 NV_viewport_swizzle +616 NV_memory_object_sparse +617 NV_mesh_shader +618 NV_multisample_coverage +619 NV_multisample_filter_hint +620 NV_non_square_matrices +621 NV_occlusion_query +622 NV_pack_subimage +623 NV_packed_depth_stencil +624 NV_packed_float +625 NV_packed_float_linear +626 NV_parameter_buffer_object +627 NV_parameter_buffer_object2 +628 NV_path_rendering +629 NV_path_rendering_shared_edge +630 NV_pixel_buffer_object +631 NV_pixel_data_range +632 NV_platform_binary +633 NV_point_sprite +634 NV_polygon_mode +635 NV_present_video +636 NV_primitive_restart +637 NV_query_resource_tag +638 NV_read_buffer +639 NV_read_buffer_front +640 NV_read_depth +641 NV_read_depth_stencil +642 NV_read_stencil +643 NV_register_combiners +644 NV_register_combiners2 +645 NV_representative_fragment_test +646 NV_robustness_video_memory_purge +647 NV_sRGB_formats +648 NV_sample_locations +649 NV_sample_mask_override_coverage +650 NV_scissor_exclusive +651 NV_shader_atomic_counters +652 NV_shader_atomic_float +653 NV_shader_atomic_float64 +654 NV_shader_atomic_fp16_vector +655 NV_shader_atomic_int64 +656 NV_shader_buffer_load +657 NV_shader_noperspective_interpolation +658 NV_shader_storage_buffer_object +659 NV_shader_subgroup_partitioned +660 NV_shader_texture_footprint +661 NV_shader_thread_group +662 NV_shader_thread_shuffle +663 NV_shading_rate_image +664 NV_shadow_samplers_array +665 NV_shadow_samplers_cube +666 NV_stereo_view_rendering +667 NV_tessellation_program5 +668 NV_texgen_emboss +669 NV_texgen_reflection +670 NV_texture_array +671 NV_texture_barrier +672 NV_texture_border_clamp +673 NV_texture_compression_latc +674 NV_texture_compression_s3tc +675 NV_texture_compression_s3tc_update +676 NV_texture_compression_vtc +677 NV_texture_env_combine4 +678 NV_texture_expand_normal +679 NV_texture_multisample +680 NV_texture_npot_2D_mipmap +681 NV_texture_rectangle +682 NV_texture_rectangle_compressed +683 NV_texture_shader +684 NV_texture_shader2 +685 NV_texture_shader3 +686 NV_timeline_semaphore +687 NV_transform_feedback +688 NV_transform_feedback2 +689 NV_uniform_buffer_unified_memory +690 NV_vdpau_interop +691 NV_vdpau_interop2 +692 NV_vertex_array_range +693 NV_vertex_array_range2 +694 NV_vertex_attrib_integer_64bit +695 NV_vertex_buffer_unified_memory +696 NV_vertex_program +697 NV_vertex_program1_1 +698 NV_vertex_program2 +699 NV_vertex_program2_option +700 NV_vertex_program3 +701 NV_vertex_program4 +702 NV_video_capture +703 NV_viewport_array +704 NV_viewport_array2 +705 NV_viewport_swizzle
-704 OES_EGL_image -705 OES_EGL_image_external -706 OES_EGL_image_external_essl3 -707 OES_blend_equation_separate -708 OES_blend_func_separate -709 OES_blend_subtract -710 OES_byte_coordinates -711 OES_compressed_ETC1_RGB8_texture -712 OES_compressed_paletted_texture -713 OES_copy_image -714 OES_depth24 -715 OES_depth32 -716 OES_depth_texture -717 OES_depth_texture_cube_map -718 OES_draw_buffers_indexed -719 OES_draw_texture -720 OES_element_index_uint -721 OES_extended_matrix_palette -722 OES_fbo_render_mipmap -723 OES_fragment_precision_high -724 OES_framebuffer_object -725 OES_geometry_point_size -726 OES_geometry_shader -727 OES_get_program_binary -728 OES_gpu_shader5 -729 OES_mapbuffer -730 OES_matrix_get -731 OES_matrix_palette -732 OES_packed_depth_stencil -733 OES_point_size_array -734 OES_point_sprite -735 OES_read_format -736 OES_required_internalformat -737 OES_rgb8_rgba8 -738 OES_sample_shading -739 OES_sample_variables -740 OES_shader_image_atomic -741 OES_shader_io_blocks -742 OES_shader_multisample_interpolation -743 OES_single_precision -744 OES_standard_derivatives -745 OES_stencil1 -746 OES_stencil4 -747 OES_stencil8 -748 OES_surfaceless_context -749 OES_tessellation_point_size -750 OES_tessellation_shader -751 OES_texture_3D -752 OES_texture_border_clamp -753 OES_texture_buffer -754 OES_texture_compression_astc -755 OES_texture_cube_map -756 OES_texture_cube_map_array -757 OES_texture_env_crossbar -758 OES_texture_mirrored_repeat -759 OES_texture_npot -760 OES_texture_stencil8 -761 OES_texture_storage_multisample_2d_array -762 OES_texture_view -763 OES_vertex_array_object -764 OES_vertex_half_float -765 OES_vertex_type_10_10_10_2 +706 OES_EGL_image +707 OES_EGL_image_external +708 OES_EGL_image_external_essl3 +709 OES_blend_equation_separate +710 OES_blend_func_separate +711 OES_blend_subtract +712 OES_byte_coordinates +713 OES_compressed_ETC1_RGB8_texture +714 OES_compressed_paletted_texture +715 OES_copy_image +716 OES_depth24 +717 OES_depth32 +718 OES_depth_texture +719 OES_depth_texture_cube_map +720 OES_draw_buffers_indexed +721 OES_draw_texture +722 OES_element_index_uint +723 OES_extended_matrix_palette +724 OES_fbo_render_mipmap +725 OES_fragment_precision_high +726 OES_framebuffer_object +727 OES_geometry_point_size +728 OES_geometry_shader +729 OES_get_program_binary +730 OES_gpu_shader5 +731 OES_mapbuffer +732 OES_matrix_get +733 OES_matrix_palette +734 OES_packed_depth_stencil +735 OES_point_size_array +736 OES_point_sprite +737 OES_read_format +738 OES_required_internalformat +739 OES_rgb8_rgba8 +740 OES_sample_shading +741 OES_sample_variables +742 OES_shader_image_atomic +743 OES_shader_io_blocks +744 OES_shader_multisample_interpolation +745 OES_single_precision +746 OES_standard_derivatives +747 OES_stencil1 +748 OES_stencil4 +749 OES_stencil8 +750 OES_surfaceless_context +751 OES_tessellation_point_size +752 OES_tessellation_shader +753 OES_texture_3D +754 OES_texture_border_clamp +755 OES_texture_buffer +756 OES_texture_compression_astc +757 OES_texture_cube_map +758 OES_texture_cube_map_array +759 OES_texture_env_crossbar +760 OES_texture_mirrored_repeat +761 OES_texture_npot +762 OES_texture_stencil8 +763 OES_texture_storage_multisample_2d_array +764 OES_texture_view +765 OES_vertex_array_object +766 OES_vertex_half_float +767 OES_vertex_type_10_10_10_2
-766 OML_interlace -767 OML_resample -768 OML_subsample +768 OML_interlace +769 OML_resample +770 OML_subsample
-769 OVR_multiview -770 OVR_multiview2 -771 OVR_multiview_multisampled_render_to_texture +771 OVR_multiview +772 OVR_multiview2 +773 OVR_multiview_multisampled_render_to_texture
-772 PGI_misc_hints -773 PGI_vertex_hints +774 PGI_misc_hints +775 PGI_vertex_hints
-774 QCOM_YUV_texture_gather -775 QCOM_alpha_test -776 QCOM_binning_control -777 QCOM_driver_control -778 QCOM_extended_get -779 QCOM_extended_get2 -780 QCOM_framebuffer_foveated -781 QCOM_motion_estimation -782 QCOM_perfmon_global_mode -783 QCOM_shader_framebuffer_fetch_noncoherent -784 QCOM_shader_framebuffer_fetch_rate -785 QCOM_shading_rate -786 QCOM_texture_foveated -787 QCOM_texture_foveated_subsampled_layout -788 QCOM_tiled_rendering -789 QCOM_writeonly_rendering +776 QCOM_YUV_texture_gather +777 QCOM_alpha_test +778 QCOM_binning_control +779 QCOM_driver_control +780 QCOM_extended_get +781 QCOM_extended_get2 +782 QCOM_framebuffer_foveated +783 QCOM_motion_estimation +784 QCOM_perfmon_global_mode +785 QCOM_shader_framebuffer_fetch_noncoherent +786 QCOM_shader_framebuffer_fetch_rate +787 QCOM_shading_rate +788 QCOM_texture_foveated +789 QCOM_texture_foveated_subsampled_layout +790 QCOM_tiled_rendering +791 QCOM_writeonly_rendering
-790 REGAL_ES1_0_compatibility -791 REGAL_ES1_1_compatibility -792 REGAL_enable -793 REGAL_error_string -794 REGAL_extension_query -795 REGAL_log -796 REGAL_proc_address +792 REGAL_ES1_0_compatibility +793 REGAL_ES1_1_compatibility +794 REGAL_enable +795 REGAL_error_string +796 REGAL_extension_query +797 REGAL_log +798 REGAL_proc_address
-797 REND_screen_coordinates +799 REND_screen_coordinates
-798 S3_s3tc +800 S3_s3tc
-799 SGIS_clip_band_hint -800 SGIS_color_range -801 SGIS_detail_texture -802 SGIS_fog_function -803 SGIS_generate_mipmap -804 SGIS_line_texgen -805 SGIS_multisample -806 SGIS_multitexture -807 SGIS_pixel_texture -808 SGIS_point_line_texgen -809 SGIS_shared_multisample -810 SGIS_sharpen_texture -811 SGIS_texture4D -812 SGIS_texture_border_clamp -813 SGIS_texture_edge_clamp -814 SGIS_texture_filter4 -815 SGIS_texture_lod -816 SGIS_texture_select +801 SGIS_clip_band_hint +802 SGIS_color_range +803 SGIS_detail_texture +804 SGIS_fog_function +805 SGIS_generate_mipmap +806 SGIS_line_texgen +807 SGIS_multisample +808 SGIS_multitexture +809 SGIS_pixel_texture +810 SGIS_point_line_texgen +811 SGIS_shared_multisample +812 SGIS_sharpen_texture +813 SGIS_texture4D +814 SGIS_texture_border_clamp +815 SGIS_texture_edge_clamp +816 SGIS_texture_filter4 +817 SGIS_texture_lod +818 SGIS_texture_select
-817 SGIX_async -818 SGIX_async_histogram -819 SGIX_async_pixel -820 SGIX_bali_g_instruments -821 SGIX_bali_r_instruments -822 SGIX_bali_timer_instruments -823 SGIX_blend_alpha_minmax -824 SGIX_blend_cadd -825 SGIX_blend_cmultiply -826 SGIX_calligraphic_fragment -827 SGIX_clipmap -828 SGIX_color_matrix_accuracy -829 SGIX_color_table_index_mode -830 SGIX_complex_polar -831 SGIX_convolution_accuracy -832 SGIX_cube_map -833 SGIX_cylinder_texgen -834 SGIX_datapipe -835 SGIX_decimation -836 SGIX_depth_pass_instrument -837 SGIX_depth_texture -838 SGIX_dvc -839 SGIX_flush_raster -840 SGIX_fog_blend -841 SGIX_fog_factor_to_alpha -842 SGIX_fog_layers -843 SGIX_fog_offset -844 SGIX_fog_patchy -845 SGIX_fog_scale -846 SGIX_fog_texture -847 SGIX_fragment_lighting_space -848 SGIX_fragment_specular_lighting -849 SGIX_fragments_instrument -850 SGIX_framezoom -851 SGIX_icc_texture -852 SGIX_igloo_interface -853 SGIX_image_compression -854 SGIX_impact_pixel_texture -855 SGIX_instrument_error -856 SGIX_interlace -857 SGIX_ir_instrument1 -858 SGIX_line_quality_hint -859 SGIX_list_priority -860 SGIX_mpeg1 -861 SGIX_mpeg2 -862 SGIX_nonlinear_lighting_pervertex -863 SGIX_nurbs_eval -864 SGIX_occlusion_instrument -865 SGIX_packed_6bytes -866 SGIX_pixel_texture -867 SGIX_pixel_texture_bits -868 SGIX_pixel_texture_lod -869 SGIX_pixel_tiles -870 SGIX_polynomial_ffd -871 SGIX_quad_mesh -872 SGIX_reference_plane -873 SGIX_resample -874 SGIX_scalebias_hint -875 SGIX_shadow -876 SGIX_shadow_ambient -877 SGIX_slim -878 SGIX_spotlight_cutoff -879 SGIX_sprite -880 SGIX_subdiv_patch -881 SGIX_subsample -882 SGIX_tag_sample_buffer -883 SGIX_texture_add_env -884 SGIX_texture_coordinate_clamp -885 SGIX_texture_lod_bias -886 SGIX_texture_mipmap_anisotropic -887 SGIX_texture_multi_buffer -888 SGIX_texture_phase -889 SGIX_texture_range -890 SGIX_texture_scale_bias -891 SGIX_texture_supersample -892 SGIX_vector_ops -893 SGIX_vertex_array_object -894 SGIX_vertex_preclip -895 SGIX_vertex_preclip_hint -896 SGIX_ycrcb -897 SGIX_ycrcb_subsample -898 SGIX_ycrcba +819 SGIX_async +820 SGIX_async_histogram +821 SGIX_async_pixel +822 SGIX_bali_g_instruments +823 SGIX_bali_r_instruments +824 SGIX_bali_timer_instruments +825 SGIX_blend_alpha_minmax +826 SGIX_blend_cadd +827 SGIX_blend_cmultiply +828 SGIX_calligraphic_fragment +829 SGIX_clipmap +830 SGIX_color_matrix_accuracy +831 SGIX_color_table_index_mode +832 SGIX_complex_polar +833 SGIX_convolution_accuracy +834 SGIX_cube_map +835 SGIX_cylinder_texgen +836 SGIX_datapipe +837 SGIX_decimation +838 SGIX_depth_pass_instrument +839 SGIX_depth_texture +840 SGIX_dvc +841 SGIX_flush_raster +842 SGIX_fog_blend +843 SGIX_fog_factor_to_alpha +844 SGIX_fog_layers +845 SGIX_fog_offset +846 SGIX_fog_patchy +847 SGIX_fog_scale +848 SGIX_fog_texture +849 SGIX_fragment_lighting_space +850 SGIX_fragment_specular_lighting +851 SGIX_fragments_instrument +852 SGIX_framezoom +853 SGIX_icc_texture +854 SGIX_igloo_interface +855 SGIX_image_compression +856 SGIX_impact_pixel_texture +857 SGIX_instrument_error +858 SGIX_interlace +859 SGIX_ir_instrument1 +860 SGIX_line_quality_hint +861 SGIX_list_priority +862 SGIX_mpeg1 +863 SGIX_mpeg2 +864 SGIX_nonlinear_lighting_pervertex +865 SGIX_nurbs_eval +866 SGIX_occlusion_instrument +867 SGIX_packed_6bytes +868 SGIX_pixel_texture +869 SGIX_pixel_texture_bits +870 SGIX_pixel_texture_lod +871 SGIX_pixel_tiles +872 SGIX_polynomial_ffd +873 SGIX_quad_mesh +874 SGIX_reference_plane +875 SGIX_resample +876 SGIX_scalebias_hint +877 SGIX_shadow +878 SGIX_shadow_ambient +879 SGIX_slim +880 SGIX_spotlight_cutoff +881 SGIX_sprite +882 SGIX_subdiv_patch +883 SGIX_subsample +884 SGIX_tag_sample_buffer +885 SGIX_texture_add_env +886 SGIX_texture_coordinate_clamp +887 SGIX_texture_lod_bias +888 SGIX_texture_mipmap_anisotropic +889 SGIX_texture_multi_buffer +890 SGIX_texture_phase +891 SGIX_texture_range +892 SGIX_texture_scale_bias +893 SGIX_texture_supersample +894 SGIX_vector_ops +895 SGIX_vertex_array_object +896 SGIX_vertex_preclip +897 SGIX_vertex_preclip_hint +898 SGIX_ycrcb +899 SGIX_ycrcb_subsample +900 SGIX_ycrcba
-899 SGI_color_matrix -900 SGI_color_table -901 SGI_complex -902 SGI_complex_type -903 SGI_fft -904 SGI_texture_color_table +901 SGI_color_matrix +902 SGI_color_table +903 SGI_complex +904 SGI_complex_type +905 SGI_fft +906 SGI_texture_color_table
-905 SUNX_constant_data +907 SUNX_constant_data
-906 SUN_convolution_border_modes -907 SUN_global_alpha -908 SUN_mesh_array -909 SUN_read_video_pixels -910 SUN_slice_accum -911 SUN_triangle_list -912 SUN_vertex +908 SUN_convolution_border_modes +909 SUN_global_alpha +910 SUN_mesh_array +911 SUN_read_video_pixels +912 SUN_slice_accum +913 SUN_triangle_list +914 SUN_vertex
-913 VIV_shader_binary +915 VIV_shader_binary
-914 WIN_phong_shading -915 WIN_scene_markerXXX -916 WIN_specular_fog -917 WIN_swap_hint +916 WIN_phong_shading +917 WIN_scene_markerXXX +918 WIN_specular_fog +919 WIN_swap_hint diff --git a/include/GL/glew.h b/include/GL/glew.h index f2a72e1..4f5e9f8 100644 --- a/include/GL/glew.h +++ b/include/GL/glew.h @@ -16426,6 +16426,25 @@ typedef void (GLAPIENTRY * PFNGLTEXTUREATTACHMEMORYNVPROC) (GLuint texture, GLui #endif /* GL_NV_memory_attachment */ +/* ----------------------- GL_NV_memory_object_sparse ---------------------- */ + +#ifndef GL_NV_memory_object_sparse +#define GL_NV_memory_object_sparse 1 + +typedef void (GLAPIENTRY * PFNGLBUFFERPAGECOMMITMENTMEMNVPROC) (GLenum target, GLintptr offset, GLsizeiptr size, GLuint memory, GLuint64 offset, GLboolean commit); +typedef void (GLAPIENTRY * PFNGLNAMEDBUFFERPAGECOMMITMENTMEMNVPROC) (GLuint buffer, GLintptr offset, GLsizeiptr size, GLuint memory, GLuint64 offset, GLboolean commit); +typedef void (GLAPIENTRY * PFNGLTEXPAGECOMMITMENTMEMNVPROC) (GLenum target, GLint layer, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLuint memory, GLuint64 offset, GLboolean commit); +typedef void (GLAPIENTRY * PFNGLTEXTUREPAGECOMMITMENTMEMNVPROC) (GLuint texture, GLint layer, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLuint memory, GLuint64 offset, GLboolean commit); + +#define glBufferPageCommitmentMemNV GLEW_GET_FUN(__glewBufferPageCommitmentMemNV) +#define glNamedBufferPageCommitmentMemNV GLEW_GET_FUN(__glewNamedBufferPageCommitmentMemNV) +#define glTexPageCommitmentMemNV GLEW_GET_FUN(__glewTexPageCommitmentMemNV) +#define glTexturePageCommitmentMemNV GLEW_GET_FUN(__glewTexturePageCommitmentMemNV) + +#define GLEW_NV_memory_object_sparse GLEW_GET_VAR(__GLEW_NV_memory_object_sparse) + +#endif /* GL_NV_memory_object_sparse */ + /* --------------------------- GL_NV_mesh_shader --------------------------- */ #ifndef GL_NV_mesh_shader @@ -17952,6 +17971,29 @@ typedef void (GLAPIENTRY * PFNGLTEXTUREIMAGE3DMULTISAMPLENVPROC) (GLuint texture #endif /* GL_NV_texture_shader3 */ +/* ------------------------ GL_NV_timeline_semaphore ----------------------- */ + +#ifndef GL_NV_timeline_semaphore +#define GL_NV_timeline_semaphore 1 + +#define GL_TIMELINE_SEMAPHORE_VALUE_NV 0x9595 +#define GL_SEMAPHORE_TYPE_NV 0x95B3 +#define GL_SEMAPHORE_TYPE_BINARY_NV 0x95B4 +#define GL_SEMAPHORE_TYPE_TIMELINE_NV 0x95B5 +#define GL_MAX_TIMELINE_SEMAPHORE_VALUE_DIFFERENCE_NV 0x95B6 + +typedef void (GLAPIENTRY * PFNGLCREATESEMAPHORESNVPROC) (GLsizei n, GLuint* semaphores); +typedef void (GLAPIENTRY * PFNGLGETSEMAPHOREPARAMETERIVNVPROC) (GLuint semaphore, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLSEMAPHOREPARAMETERIVNVPROC) (GLuint semaphore, GLenum pname, const GLint* params); + +#define glCreateSemaphoresNV GLEW_GET_FUN(__glewCreateSemaphoresNV) +#define glGetSemaphoreParameterivNV GLEW_GET_FUN(__glewGetSemaphoreParameterivNV) +#define glSemaphoreParameterivNV GLEW_GET_FUN(__glewSemaphoreParameterivNV) + +#define GLEW_NV_timeline_semaphore GLEW_GET_VAR(__GLEW_NV_timeline_semaphore) + +#endif /* GL_NV_timeline_semaphore */ + /* ------------------------ GL_NV_transform_feedback ----------------------- */ #ifndef GL_NV_transform_feedback @@ -24785,6 +24827,11 @@ GLEW_FUN_EXPORT PFNGLRESETMEMORYOBJECTPARAMETERNVPROC __glewResetMemoryObjectPar GLEW_FUN_EXPORT PFNGLTEXATTACHMEMORYNVPROC __glewTexAttachMemoryNV; GLEW_FUN_EXPORT PFNGLTEXTUREATTACHMEMORYNVPROC __glewTextureAttachMemoryNV; +GLEW_FUN_EXPORT PFNGLBUFFERPAGECOMMITMENTMEMNVPROC __glewBufferPageCommitmentMemNV; +GLEW_FUN_EXPORT PFNGLNAMEDBUFFERPAGECOMMITMENTMEMNVPROC __glewNamedBufferPageCommitmentMemNV; +GLEW_FUN_EXPORT PFNGLTEXPAGECOMMITMENTMEMNVPROC __glewTexPageCommitmentMemNV; +GLEW_FUN_EXPORT PFNGLTEXTUREPAGECOMMITMENTMEMNVPROC __glewTexturePageCommitmentMemNV; + GLEW_FUN_EXPORT PFNGLDRAWMESHTASKSINDIRECTNVPROC __glewDrawMeshTasksIndirectNV; GLEW_FUN_EXPORT PFNGLDRAWMESHTASKSNVPROC __glewDrawMeshTasksNV; GLEW_FUN_EXPORT PFNGLMULTIDRAWMESHTASKSINDIRECTCOUNTNVPROC __glewMultiDrawMeshTasksIndirectCountNV; @@ -24956,6 +25003,10 @@ GLEW_FUN_EXPORT PFNGLTEXTUREIMAGE2DMULTISAMPLENVPROC __glewTextureImage2DMultisa GLEW_FUN_EXPORT PFNGLTEXTUREIMAGE3DMULTISAMPLECOVERAGENVPROC __glewTextureImage3DMultisampleCoverageNV; GLEW_FUN_EXPORT PFNGLTEXTUREIMAGE3DMULTISAMPLENVPROC __glewTextureImage3DMultisampleNV; +GLEW_FUN_EXPORT PFNGLCREATESEMAPHORESNVPROC __glewCreateSemaphoresNV; +GLEW_FUN_EXPORT PFNGLGETSEMAPHOREPARAMETERIVNVPROC __glewGetSemaphoreParameterivNV; +GLEW_FUN_EXPORT PFNGLSEMAPHOREPARAMETERIVNVPROC __glewSemaphoreParameterivNV; + GLEW_FUN_EXPORT PFNGLACTIVEVARYINGNVPROC __glewActiveVaryingNV; GLEW_FUN_EXPORT PFNGLBEGINTRANSFORMFEEDBACKNVPROC __glewBeginTransformFeedbackNV; GLEW_FUN_EXPORT PFNGLBINDBUFFERBASENVPROC __glewBindBufferBaseNV; @@ -26129,6 +26180,7 @@ GLEW_VAR_EXPORT GLboolean __GLEW_NV_instanced_arrays; GLEW_VAR_EXPORT GLboolean __GLEW_NV_internalformat_sample_query; GLEW_VAR_EXPORT GLboolean __GLEW_NV_light_max_exponent; GLEW_VAR_EXPORT GLboolean __GLEW_NV_memory_attachment; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_memory_object_sparse; GLEW_VAR_EXPORT GLboolean __GLEW_NV_mesh_shader; GLEW_VAR_EXPORT GLboolean __GLEW_NV_multisample_coverage; GLEW_VAR_EXPORT GLboolean __GLEW_NV_multisample_filter_hint; @@ -26198,6 +26250,7 @@ GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_rectangle_compressed; GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_shader; GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_shader2; GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_shader3; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_timeline_semaphore; GLEW_VAR_EXPORT GLboolean __GLEW_NV_transform_feedback; GLEW_VAR_EXPORT GLboolean __GLEW_NV_transform_feedback2; GLEW_VAR_EXPORT GLboolean __GLEW_NV_uniform_buffer_unified_memory; diff --git a/src/glew.c b/src/glew.c index 55437a0..cdf17c1 100644 --- a/src/glew.c +++ b/src/glew.c @@ -2763,6 +2763,11 @@ PFNGLRESETMEMORYOBJECTPARAMETERNVPROC __glewResetMemoryObjectParameterNV = NULL; PFNGLTEXATTACHMEMORYNVPROC __glewTexAttachMemoryNV = NULL; PFNGLTEXTUREATTACHMEMORYNVPROC __glewTextureAttachMemoryNV = NULL; +PFNGLBUFFERPAGECOMMITMENTMEMNVPROC __glewBufferPageCommitmentMemNV = NULL; +PFNGLNAMEDBUFFERPAGECOMMITMENTMEMNVPROC __glewNamedBufferPageCommitmentMemNV = NULL; +PFNGLTEXPAGECOMMITMENTMEMNVPROC __glewTexPageCommitmentMemNV = NULL; +PFNGLTEXTUREPAGECOMMITMENTMEMNVPROC __glewTexturePageCommitmentMemNV = NULL; + PFNGLDRAWMESHTASKSINDIRECTNVPROC __glewDrawMeshTasksIndirectNV = NULL; PFNGLDRAWMESHTASKSNVPROC __glewDrawMeshTasksNV = NULL; PFNGLMULTIDRAWMESHTASKSINDIRECTCOUNTNVPROC __glewMultiDrawMeshTasksIndirectCountNV = NULL; @@ -2934,6 +2939,10 @@ PFNGLTEXTUREIMAGE2DMULTISAMPLENVPROC __glewTextureImage2DMultisampleNV = NULL; PFNGLTEXTUREIMAGE3DMULTISAMPLECOVERAGENVPROC __glewTextureImage3DMultisampleCoverageNV = NULL; PFNGLTEXTUREIMAGE3DMULTISAMPLENVPROC __glewTextureImage3DMultisampleNV = NULL; +PFNGLCREATESEMAPHORESNVPROC __glewCreateSemaphoresNV = NULL; +PFNGLGETSEMAPHOREPARAMETERIVNVPROC __glewGetSemaphoreParameterivNV = NULL; +PFNGLSEMAPHOREPARAMETERIVNVPROC __glewSemaphoreParameterivNV = NULL; + PFNGLACTIVEVARYINGNVPROC __glewActiveVaryingNV = NULL; PFNGLBEGINTRANSFORMFEEDBACKNVPROC __glewBeginTransformFeedbackNV = NULL; PFNGLBINDBUFFERBASENVPROC __glewBindBufferBaseNV = NULL; @@ -4108,6 +4117,7 @@ GLboolean __GLEW_NV_instanced_arrays = GL_FALSE; GLboolean __GLEW_NV_internalformat_sample_query = GL_FALSE; GLboolean __GLEW_NV_light_max_exponent = GL_FALSE; GLboolean __GLEW_NV_memory_attachment = GL_FALSE; +GLboolean __GLEW_NV_memory_object_sparse = GL_FALSE; GLboolean __GLEW_NV_mesh_shader = GL_FALSE; GLboolean __GLEW_NV_multisample_coverage = GL_FALSE; GLboolean __GLEW_NV_multisample_filter_hint = GL_FALSE; @@ -4177,6 +4187,7 @@ GLboolean __GLEW_NV_texture_rectangle_compressed = GL_FALSE; GLboolean __GLEW_NV_texture_shader = GL_FALSE; GLboolean __GLEW_NV_texture_shader2 = GL_FALSE; GLboolean __GLEW_NV_texture_shader3 = GL_FALSE; +GLboolean __GLEW_NV_timeline_semaphore = GL_FALSE; GLboolean __GLEW_NV_transform_feedback = GL_FALSE; GLboolean __GLEW_NV_transform_feedback2 = GL_FALSE; GLboolean __GLEW_NV_uniform_buffer_unified_memory = GL_FALSE; @@ -6257,6 +6268,9 @@ static const char * _glewExtensionLookup[] = { #ifdef GL_NV_memory_attachment "GL_NV_memory_attachment", #endif +#ifdef GL_NV_memory_object_sparse + "GL_NV_memory_object_sparse", +#endif #ifdef GL_NV_mesh_shader "GL_NV_mesh_shader", #endif @@ -6464,6 +6478,9 @@ static const char * _glewExtensionLookup[] = { #ifdef GL_NV_texture_shader3 "GL_NV_texture_shader3", #endif +#ifdef GL_NV_timeline_semaphore + "GL_NV_timeline_semaphore", +#endif #ifdef GL_NV_transform_feedback "GL_NV_transform_feedback", #endif @@ -7222,7 +7239,7 @@ static const char * _glewExtensionLookup[] = { /* Detected in the extension string or strings */ -static GLboolean _glewExtensionString[935]; +static GLboolean _glewExtensionString[937]; /* Detected via extension string or experimental mode */ static GLboolean* _glewExtensionEnabled[] = { #ifdef GL_3DFX_multisample @@ -9070,6 +9087,9 @@ static GLboolean* _glewExtensionEnabled[] = { #ifdef GL_NV_memory_attachment &__GLEW_NV_memory_attachment, #endif +#ifdef GL_NV_memory_object_sparse + &__GLEW_NV_memory_object_sparse, +#endif #ifdef GL_NV_mesh_shader &__GLEW_NV_mesh_shader, #endif @@ -9277,6 +9297,9 @@ static GLboolean* _glewExtensionEnabled[] = { #ifdef GL_NV_texture_shader3 &__GLEW_NV_texture_shader3, #endif +#ifdef GL_NV_timeline_semaphore + &__GLEW_NV_timeline_semaphore, +#endif #ifdef GL_NV_transform_feedback &__GLEW_NV_transform_feedback, #endif @@ -10327,6 +10350,7 @@ static GLboolean _glewInit_GL_NV_half_float (); static GLboolean _glewInit_GL_NV_instanced_arrays (); static GLboolean _glewInit_GL_NV_internalformat_sample_query (); static GLboolean _glewInit_GL_NV_memory_attachment (); +static GLboolean _glewInit_GL_NV_memory_object_sparse (); static GLboolean _glewInit_GL_NV_mesh_shader (); static GLboolean _glewInit_GL_NV_non_square_matrices (); static GLboolean _glewInit_GL_NV_occlusion_query (); @@ -10347,6 +10371,7 @@ static GLboolean _glewInit_GL_NV_shading_rate_image (); static GLboolean _glewInit_GL_NV_texture_array (); static GLboolean _glewInit_GL_NV_texture_barrier (); static GLboolean _glewInit_GL_NV_texture_multisample (); +static GLboolean _glewInit_GL_NV_timeline_semaphore (); static GLboolean _glewInit_GL_NV_transform_feedback (); static GLboolean _glewInit_GL_NV_transform_feedback2 (); static GLboolean _glewInit_GL_NV_vdpau_interop (); @@ -16120,6 +16145,22 @@ static GLboolean _glewInit_GL_NV_memory_attachment () #endif /* GL_NV_memory_attachment */ +#ifdef GL_NV_memory_object_sparse + +static GLboolean _glewInit_GL_NV_memory_object_sparse () +{ + GLboolean r = GL_FALSE; + + r = ((glBufferPageCommitmentMemNV = (PFNGLBUFFERPAGECOMMITMENTMEMNVPROC)glewGetProcAddress((const GLubyte*)"glBufferPageCommitmentMemNV")) == NULL) || r; + r = ((glNamedBufferPageCommitmentMemNV = (PFNGLNAMEDBUFFERPAGECOMMITMENTMEMNVPROC)glewGetProcAddress((const GLubyte*)"glNamedBufferPageCommitmentMemNV")) == NULL) || r; + r = ((glTexPageCommitmentMemNV = (PFNGLTEXPAGECOMMITMENTMEMNVPROC)glewGetProcAddress((const GLubyte*)"glTexPageCommitmentMemNV")) == NULL) || r; + r = ((glTexturePageCommitmentMemNV = (PFNGLTEXTUREPAGECOMMITMENTMEMNVPROC)glewGetProcAddress((const GLubyte*)"glTexturePageCommitmentMemNV")) == NULL) || r; + + return r; +} + +#endif /* GL_NV_memory_object_sparse */ + #ifdef GL_NV_mesh_shader static GLboolean _glewInit_GL_NV_mesh_shader () @@ -16511,6 +16552,21 @@ static GLboolean _glewInit_GL_NV_texture_multisample () #endif /* GL_NV_texture_multisample */ +#ifdef GL_NV_timeline_semaphore + +static GLboolean _glewInit_GL_NV_timeline_semaphore () +{ + GLboolean r = GL_FALSE; + + r = ((glCreateSemaphoresNV = (PFNGLCREATESEMAPHORESNVPROC)glewGetProcAddress((const GLubyte*)"glCreateSemaphoresNV")) == NULL) || r; + r = ((glGetSemaphoreParameterivNV = (PFNGLGETSEMAPHOREPARAMETERIVNVPROC)glewGetProcAddress((const GLubyte*)"glGetSemaphoreParameterivNV")) == NULL) || r; + r = ((glSemaphoreParameterivNV = (PFNGLSEMAPHOREPARAMETERIVNVPROC)glewGetProcAddress((const GLubyte*)"glSemaphoreParameterivNV")) == NULL) || r; + + return r; +} + +#endif /* GL_NV_timeline_semaphore */ + #ifdef GL_NV_transform_feedback static GLboolean _glewInit_GL_NV_transform_feedback () @@ -19044,6 +19100,9 @@ static GLenum GLEWAPIENTRY glewContextInit () #ifdef GL_NV_memory_attachment if (glewExperimental || GLEW_NV_memory_attachment) GLEW_NV_memory_attachment = !_glewInit_GL_NV_memory_attachment(); #endif /* GL_NV_memory_attachment */ +#ifdef GL_NV_memory_object_sparse + if (glewExperimental || GLEW_NV_memory_object_sparse) GLEW_NV_memory_object_sparse = !_glewInit_GL_NV_memory_object_sparse(); +#endif /* GL_NV_memory_object_sparse */ #ifdef GL_NV_mesh_shader if (glewExperimental || GLEW_NV_mesh_shader) GLEW_NV_mesh_shader = !_glewInit_GL_NV_mesh_shader(); #endif /* GL_NV_mesh_shader */ @@ -19104,6 +19163,9 @@ static GLenum GLEWAPIENTRY glewContextInit () #ifdef GL_NV_texture_multisample if (glewExperimental || GLEW_NV_texture_multisample) GLEW_NV_texture_multisample = !_glewInit_GL_NV_texture_multisample(); #endif /* GL_NV_texture_multisample */ +#ifdef GL_NV_timeline_semaphore + if (glewExperimental || GLEW_NV_timeline_semaphore) GLEW_NV_timeline_semaphore = !_glewInit_GL_NV_timeline_semaphore(); +#endif /* GL_NV_timeline_semaphore */ #ifdef GL_NV_transform_feedback if (glewExperimental || GLEW_NV_transform_feedback) GLEW_NV_transform_feedback = !_glewInit_GL_NV_transform_feedback(); #endif /* GL_NV_transform_feedback */ @@ -27747,6 +27809,13 @@ GLboolean GLEWAPIENTRY glewIsSupported (const char* name) continue; } #endif +#ifdef GL_NV_memory_object_sparse + if (_glewStrSame3(&pos, &len, (const GLubyte*)"memory_object_sparse", 20)) + { + ret = GLEW_NV_memory_object_sparse; + continue; + } +#endif #ifdef GL_NV_mesh_shader if (_glewStrSame3(&pos, &len, (const GLubyte*)"mesh_shader", 11)) { @@ -28230,6 +28299,13 @@ GLboolean GLEWAPIENTRY glewIsSupported (const char* name) continue; } #endif +#ifdef GL_NV_timeline_semaphore + if (_glewStrSame3(&pos, &len, (const GLubyte*)"timeline_semaphore", 18)) + { + ret = GLEW_NV_timeline_semaphore; + continue; + } +#endif #ifdef GL_NV_transform_feedback if (_glewStrSame3(&pos, &len, (const GLubyte*)"transform_feedback", 18)) { diff --git a/src/glewinfo.c b/src/glewinfo.c index 51819e1..35d57f8 100644 --- a/src/glewinfo.c +++ b/src/glewinfo.c @@ -8267,6 +8267,20 @@ static void _glewInfo_GL_NV_memory_attachment (void) #endif /* GL_NV_memory_attachment */ +#ifdef GL_NV_memory_object_sparse + +static void _glewInfo_GL_NV_memory_object_sparse (void) +{ + GLboolean fi = glewPrintExt("GL_NV_memory_object_sparse", GLEW_NV_memory_object_sparse, glewIsSupported("GL_NV_memory_object_sparse"), glewGetExtension("GL_NV_memory_object_sparse")); + + glewInfoFunc(fi, "glBufferPageCommitmentMemNV", glBufferPageCommitmentMemNV == NULL); + glewInfoFunc(fi, "glNamedBufferPageCommitmentMemNV", glNamedBufferPageCommitmentMemNV == NULL); + glewInfoFunc(fi, "glTexPageCommitmentMemNV", glTexPageCommitmentMemNV == NULL); + glewInfoFunc(fi, "glTexturePageCommitmentMemNV", glTexturePageCommitmentMemNV == NULL); +} + +#endif /* GL_NV_memory_object_sparse */ + #ifdef GL_NV_mesh_shader static void _glewInfo_GL_NV_mesh_shader (void) @@ -9059,6 +9073,19 @@ static void _glewInfo_GL_NV_texture_shader3 (void) #endif /* GL_NV_texture_shader3 */ +#ifdef GL_NV_timeline_semaphore + +static void _glewInfo_GL_NV_timeline_semaphore (void) +{ + GLboolean fi = glewPrintExt("GL_NV_timeline_semaphore", GLEW_NV_timeline_semaphore, glewIsSupported("GL_NV_timeline_semaphore"), glewGetExtension("GL_NV_timeline_semaphore")); + + glewInfoFunc(fi, "glCreateSemaphoresNV", glCreateSemaphoresNV == NULL); + glewInfoFunc(fi, "glGetSemaphoreParameterivNV", glGetSemaphoreParameterivNV == NULL); + glewInfoFunc(fi, "glSemaphoreParameterivNV", glSemaphoreParameterivNV == NULL); +} + +#endif /* GL_NV_timeline_semaphore */ + #ifdef GL_NV_transform_feedback static void _glewInfo_GL_NV_transform_feedback (void) @@ -16713,6 +16740,9 @@ static void glewInfo (void) #ifdef GL_NV_memory_attachment _glewInfo_GL_NV_memory_attachment(); #endif /* GL_NV_memory_attachment */ +#ifdef GL_NV_memory_object_sparse + _glewInfo_GL_NV_memory_object_sparse(); +#endif /* GL_NV_memory_object_sparse */ #ifdef GL_NV_mesh_shader _glewInfo_GL_NV_mesh_shader(); #endif /* GL_NV_mesh_shader */ @@ -16920,6 +16950,9 @@ static void glewInfo (void) #ifdef GL_NV_texture_shader3 _glewInfo_GL_NV_texture_shader3(); #endif /* GL_NV_texture_shader3 */ +#ifdef GL_NV_timeline_semaphore + _glewInfo_GL_NV_timeline_semaphore(); +#endif /* GL_NV_timeline_semaphore */ #ifdef GL_NV_transform_feedback _glewInfo_GL_NV_transform_feedback(); #endif /* GL_NV_transform_feedback */