Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Debug: SDL borderless window created at 1600,840 with 640×480 size
- Using preferred context - 24-bit OpenGL 3.2 core
- Debug: Provided OpenGL context uses core profile.
- Debug: Provided OpenGL context uses 24-bit channel depth.
- Debug: Provided OpenGL core context is not forward compatible.
- OpenGL Renderer: AMD Radeon PRO W7600
- Debug: Provided OpenGL 3.2 version.
- Using GL3 Renderer in OpenGL 3.x mode...
- Available modes: '1280x720 1600x900 1920x1080 2560x1440 3840x2160 1280x800 1440x900 1680x1050 1920x1200 720x480 640x480 800x600 1024x768 1600x1200 1280x1024 1440x480 '
- Debug: Found 292 OpenGL extensions.
- Debug: OpenGL extensions found: GL_AMD_blend_minmax_factor GL_AMD_conservative_depth GL_AMD_debug_output GL_AMD_depth_clamp_separate GL_AMD_gpu_shader_half_float GL_AMD_gpu_shader_int16 GL_AMD_gpu_shader_int64 GL_AMD_multi_draw_indirect GL_AMD_pinned_memory GL_AMD_query_buffer_object GL_AMD_sample_positions GL_AMD_seamless_cubemap_per_texture GL_AMD_shader_trinary_minmax GL_AMD_texture_cube_map_array GL_AMD_vertex_shader_layer GL_AMD_vertex_shader_viewport_index GL_ARB_ES2_compatibility GL_ARB_ES3_1_compatibility GL_ARB_ES3_2_compatibility GL_ARB_ES3_compatibility GL_ARB_arrays_of_arrays GL_ARB_base_instance GL_ARB_bindless_texture GL_ARB_blend_func_extended GL_ARB_buffer_storage GL_ARB_clear_buffer_object GL_ARB_clear_texture GL_ARB_clip_control GL_ARB_color_buffer_float GL_ARB_compressed_texture_pixel_storage GL_ARB_compute_shader GL_ARB_conditional_render_inverted GL_ARB_conservative_depth GL_ARB_copy_buffer GL_ARB_copy_image GL_ARB_cull_distance GL_ARB_debug_output GL_ARB_depth_buffer_float GL_ARB_depth_clamp GL_ARB_depth_texture GL_ARB_derivative_control GL_ARB_direct_state_access GL_ARB_draw_buffers GL_ARB_draw_buffers_blend GL_ARB_draw_elements_base_vertex GL_ARB_draw_indirect GL_ARB_draw_instanced GL_ARB_enhanced_layouts GL_ARB_explicit_attrib_location GL_ARB_explicit_uniform_location GL_ARB_fragment_coord_conventions GL_ARB_fragment_layer_viewport GL_ARB_fragment_program GL_ARB_fragment_program_shadow GL_ARB_fragment_shader GL_ARB_framebuffer_no_attachments GL_ARB_framebuffer_object GL_ARB_framebuffer_sRGB GL_ARB_geometry_shader4 GL_ARB_get_program_binary GL_ARB_get_texture_sub_image GL_ARB_gl_spirv GL_ARB_gpu_shader5 GL_ARB_gpu_shader_fp64 GL_ARB_gpu_shader_int64 GL_ARB_half_float_pixel GL_ARB_half_float_vertex GL_ARB_indirect_parameters GL_ARB_instanced_arrays GL_ARB_internalformat_query GL_ARB_internalformat_query2 GL_ARB_invalidate_subdata GL_ARB_map_buffer_range GL_ARB_multi_bind GL_ARB_multi_draw_indirect GL_ARB_multisample GL_ARB_multitexture GL_ARB_occlusion_query GL_ARB_occlusion_query2 GL_ARB_parallel_shader_compile GL_ARB_pipeline_statistics_query GL_ARB_pixel_buffer_object GL_ARB_point_parameters GL_ARB_point_sprite GL_ARB_polygon_offset_clamp GL_ARB_post_depth_coverage GL_ARB_program_interface_query GL_ARB_provoking_vertex GL_ARB_query_buffer_object GL_ARB_robustness GL_ARB_sample_locations GL_ARB_sample_shading GL_ARB_sampler_objects GL_ARB_seamless_cube_map GL_ARB_seamless_cubemap_per_texture GL_ARB_separate_shader_objects GL_ARB_shader_atomic_counter_ops GL_ARB_shader_atomic_counters GL_ARB_shader_ballot GL_ARB_shader_bit_encoding GL_ARB_shader_clock GL_ARB_shader_draw_parameters GL_ARB_shader_group_vote GL_ARB_shader_image_load_store GL_ARB_shader_image_size GL_ARB_shader_objects GL_ARB_shader_precision GL_ARB_shader_stencil_export GL_ARB_shader_storage_buffer_object GL_ARB_shader_subroutine GL_ARB_shader_texture_image_samples GL_ARB_shader_texture_lod GL_ARB_shader_viewport_layer_array GL_ARB_shading_language_100 GL_ARB_shading_language_420pack GL_ARB_shading_language_packing GL_ARB_shadow GL_ARB_shadow_ambient GL_ARB_sparse_buffer GL_ARB_sparse_texture GL_ARB_spirv_extensions GL_ARB_stencil_texturing GL_ARB_sync GL_ARB_tessellation_shader GL_ARB_texture_barrier GL_ARB_texture_border_clamp GL_ARB_texture_buffer_object GL_ARB_texture_buffer_object_rgb32 GL_ARB_texture_buffer_range GL_ARB_texture_compression GL_ARB_texture_compression_bptc GL_ARB_texture_compression_rgtc GL_ARB_texture_cube_map GL_ARB_texture_cube_map_array GL_ARB_texture_env_add GL_ARB_texture_env_combine GL_ARB_texture_env_crossbar GL_ARB_texture_env_dot3 GL_ARB_texture_filter_anisotropic GL_ARB_texture_filter_minmax GL_ARB_texture_float GL_ARB_texture_gather GL_ARB_texture_mirror_clamp_to_edge GL_ARB_texture_mirrored_repeat GL_ARB_texture_multisample GL_ARB_texture_multisample_no_array GL_ARB_texture_non_power_of_two GL_ARB_texture_query_levels GL_ARB_texture_query_lod GL_ARB_texture_rectangle GL_ARB_texture_rg GL_ARB_texture_rgb10_a2ui GL_ARB_texture_stencil8 GL_ARB_texture_storage GL_ARB_texture_storage_multisample GL_ARB_texture_swizzle GL_ARB_texture_view GL_ARB_timer_query GL_ARB_transform_feedback GL_ARB_transform_feedback2 GL_ARB_transform_feedback3 GL_ARB_transform_feedback_instanced GL_ARB_transform_feedback_overflow_query GL_ARB_transpose_matrix GL_ARB_uniform_buffer_object GL_ARB_vertex_array_bgra GL_ARB_vertex_array_object GL_ARB_vertex_attrib_64bit GL_ARB_vertex_attrib_binding GL_ARB_vertex_buffer_object GL_ARB_vertex_program GL_ARB_vertex_shader GL_ARB_vertex_type_10f_11f_11f_rev GL_ARB_vertex_type_2_10_10_10_rev GL_ARB_viewport_array GL_ARB_window_pos GL_ATI_draw_buffers GL_ATI_meminfo GL_ATI_separate_stencil GL_ATI_shader_texture_lod GL_ATI_texture_env_combine3 GL_ATI_texture_float GL_ATI_texture_mirror_once GL_EXT_abgr GL_EXT_bgra GL_EXT_bindable_uniform GL_EXT_blend_color GL_EXT_blend_equation_separate GL_EXT_blend_func_separate GL_EXT_blend_minmax GL_EXT_blend_subtract GL_EXT_compiled_vertex_array GL_EXT_copy_buffer GL_EXT_copy_texture GL_EXT_debug_label GL_EXT_depth_bounds_test GL_EXT_direct_state_access GL_EXT_draw_buffers2 GL_EXT_draw_instanced GL_EXT_draw_range_elements GL_EXT_fog_coord GL_EXT_framebuffer_blit GL_EXT_framebuffer_multisample GL_EXT_framebuffer_object GL_EXT_framebuffer_sRGB GL_EXT_geometry_shader4 GL_EXT_gpu_program_parameters GL_EXT_gpu_shader4 GL_EXT_memory_object GL_EXT_memory_object_fd GL_EXT_multi_draw_arrays GL_EXT_nonuniform_qualifier GL_EXT_packed_depth_stencil GL_EXT_packed_float GL_EXT_packed_pixels GL_EXT_pixel_buffer_object GL_EXT_point_parameters GL_EXT_polygon_offset_clamp GL_EXT_provoking_vertex GL_EXT_rescale_normal GL_EXT_secondary_color GL_EXT_semaphore GL_EXT_semaphore_fd GL_EXT_separate_specular_color GL_EXT_shader_image_load_store GL_EXT_shader_integer_mix GL_EXT_shadow_funcs GL_EXT_stencil_wrap GL_EXT_subtexture GL_EXT_texture GL_EXT_texture3D GL_EXT_texture_array GL_EXT_texture_buffer_object GL_EXT_texture_compression_bptc GL_EXT_texture_compression_latc GL_EXT_texture_compression_rgtc GL_EXT_texture_compression_s3tc GL_EXT_texture_cube_map GL_EXT_texture_edge_clamp GL_EXT_texture_env_add GL_EXT_texture_env_combine GL_EXT_texture_env_dot3 GL_EXT_texture_filter_anisotropic GL_EXT_texture_integer GL_EXT_texture_lod GL_EXT_texture_lod_bias GL_EXT_texture_mirror_clamp GL_EXT_texture_object GL_EXT_texture_rectangle GL_EXT_texture_sRGB GL_EXT_texture_sRGB_R8 GL_EXT_texture_sRGB_RG8 GL_EXT_texture_sRGB_decode GL_EXT_texture_shared_exponent GL_EXT_texture_snorm GL_EXT_texture_storage GL_EXT_texture_swizzle GL_EXT_timer_query GL_EXT_transform_feedback GL_EXT_vertex_array GL_EXT_vertex_array_bgra GL_EXT_vertex_attrib_64bit GL_IBM_texture_mirrored_repeat GL_KHR_blend_equation_advanced GL_KHR_blend_equation_advanced_coherent GL_KHR_debug GL_KHR_no_error GL_KHR_parallel_shader_compile GL_KHR_robust_buffer_access_behavior GL_KHR_robustness GL_KHR_shader_subgroup GL_NV_blend_square GL_NV_conditional_render GL_NV_copy_image GL_NV_depth_buffer_float GL_NV_float_buffer GL_NV_half_float GL_NV_primitive_restart GL_NV_shader_atomic_int64 GL_NV_texgen_reflection GL_NV_texture_barrier GL_NV_timeline_semaphore GL_NV_vdpau_interop GL_OES_EGL_image GL_OVR_multiview GL_OVR_multiview2 GL_S3_s3tc GL_SGIS_generate_mipmap GL_SGIS_texture_edge_clamp GL_SGIS_texture_lod GL_SUN_multi_draw_arrays WGL_EXT_swap_contro ]
- Detected graphics driver class 'OpenGL 3+'
- Detected graphics hardware class 'generic'
- Initializing OpenGL extensions
- ...ignoring GL_ARB_debug_output
- ...found shading language version 460
- ...using GL_ARB_half_float_pixel
- ...using GL_ARB_texture_float
- ...using GL_EXT_gpu_shader4
- ...using GL_ARB_gpu_shader5
- ...using GL_EXT_texture_integer
- ...using GL_ARB_texture_rg
- ...using GL_ARB_texture_gather
- ...using GL_EXT_texture_compression_s3tc
- ...using GL_ARB_texture_compression_rgtc
- ...ignoring GL_EXT_texture_filter_anisotropic
- ...using GL_ARB_half_float_vertex
- ...using GL_ARB_framebuffer_object
- ...using GL_ARB_get_program_binary
- ...using GL_ARB_buffer_storage
- ...using GL_ARB_uniform_buffer_object
- ...using GL_ARB_map_buffer_range
- ...using GL_ARB_sync
- ...using GL_ARB_depth_clamp
- ...using GL_ARB_compute_shader
- ...ignoring GL_ARB_bindless_texture
- ...using GL_ARB_shader_draw_parameters
- ...using GL_ARB_shader_storage_buffer_object
- ...using GL_ARB_multi_draw_indirect
- ...using GL_ARB_shading_language_420pack
- ...using GL_ARB_explicit_uniform_location
- ...using GL_ARB_shader_image_load_store
- ...using GL_ARB_shader_atomic_counters
- ...using GL_ARB_indirect_parameters
- Debug: ------- Input Initialization -------
- Debug: Calling SDL_Init(SDL_INIT_JOYSTICK)...
- Debug: SDL_Init(SDL_INIT_JOYSTICK) passed.
- Debug: 0 possible joysticks
- Debug: No joystick opened: There are 0 joysticks available.
- Debug: ------------------------------------
- Debug: ------- R_InitImages -------
- Debug: ------- R_InitFBOs -------
- Debug: ------- R_InitVBOs -------
- Debug: ----- CreateInternalShaders -----
- Debug: ----- ScanAndLoadShaderFiles -----
- Debug: loading 'scripts/medistat.shader' shader file
- Debug: loading 'scripts/arm.shader' shader file
- Debug: loading 'scripts/telenode.shader' shader file
- Debug: loading 'scripts/rocketpod.shader' shader file
- Debug: loading 'scripts/overmind.shader' shader file
- Debug: loading 'scripts/acid_tube.shader' shader file
- Debug: loading 'scripts/metal_gibs.shader' shader file
- Debug: loading 'scripts/alien_gibs.shader' shader file
- Debug: loading 'scripts/lcannon.shader' shader file
- Debug: loading 'scripts/reactor-bolt.shader' shader file
- Debug: loading 'scripts/tracer.shader' shader file
- Debug: loading 'scripts/shotgun.shader' shader file
- Debug: loading 'scripts/rocket.shader' shader file
- Debug: loading 'scripts/rifle.shader' shader file
- Debug: loading 'scripts/psaw.shader' shader file
- Debug: loading 'scripts/prifle.shader' shader file
- Debug: loading 'scripts/mdriver.shader' shader file
- Debug: loading 'scripts/grenade.shader' shader file
- Debug: loading 'scripts/ckit.shader' shader file
- Debug: loading 'scripts/human_spawning.shader' shader file
- Debug: loading 'scripts/level2upg.shader' shader file
- Debug: loading 'scripts/human_bsuit.shader' shader file
- Debug: loading 'scripts/scope.shader' shader file
- Debug: loading 'scripts/mgturret.shader' shader file
- Debug: loading 'scripts/outline.shader' shader file
- Debug: loading 'scripts/crosshairs.shader' shader file
- Debug: loading 'scripts/binary.shader' shader file
- Debug: loading 'scripts/buildable_misc.shader' shader file
- Debug: loading 'scripts/firebomb.shader' shader file
- Debug: loading 'scripts/human_hand.shader' shader file
- Debug: loading 'scripts/human_naked.shader' shader file
- Debug: loading 'scripts/level3.shader' shader file
- Debug: loading 'scripts/trapper.shader' shader file
- Debug: loading 'scripts/numbers.shader' shader file
- Debug: loading 'scripts/booster.shader' shader file
- Debug: loading 'scripts/lgun.shader' shader file
- Debug: loading 'scripts/chaingun.shader' shader file
- Debug: loading 'scripts/common.shader' shader file
- Debug: loading 'scripts/shared_colors.shader' shader file
- Debug: loading 'scripts/creep.shader' shader file
- Debug: loading 'scripts/generic.shader' shader file
- Debug: loading 'scripts/feedback.shader' shader file
- Debug: loading 'scripts/level0.shader' shader file
- Debug: loading 'scripts/flamer.shader' shader file
- Debug: loading 'scripts/eggpod.shader' shader file
- Debug: loading 'scripts/engine.shader' shader file
- Debug: loading 'scripts/reactor.shader' shader file
- Debug: loading 'scripts/blood.shader' shader file
- Debug: loading 'scripts/indicators.shader' shader file
- Debug: loading 'scripts/null.shader' shader file
- Debug: loading 'scripts/common_base.shader' shader file
- Debug: loading 'scripts/alien_base.shader' shader file
- Debug: loading 'scripts/builder.shader' shader file
- Debug: loading 'scripts/jetpack.shader' shader file
- Debug: loading 'scripts/level1.shader' shader file
- Debug: loading 'scripts/level2.shader' shader file
- Debug: loading 'scripts/human_light.shader' shader file
- Debug: loading 'scripts/human_medium.shader' shader file
- Debug: loading 'scripts/leech.shader' shader file
- Debug: loading 'scripts/barricade.shader' shader file
- Debug: loading 'scripts/hive.shader' shader file
- Debug: loading 'scripts/drill.shader' shader file
- Debug: loading 'scripts/blaster.shader' shader file
- Debug: loading 'scripts/ui-colors.shader' shader file
- Debug: loading 'scripts/level4.shader' shader file
- Debug: loading 'scripts/spiker.shader' shader file
- Debug: ----- CreateExternalShaders -----
- GL_VENDOR: ATI Technologies Inc.
- GL_RENDERER: AMD Radeon PRO W7600
- GL_VERSION: 3.2.0 Core Profile Context 24.10.240607
- Debug: GL_EXTENSIONS: GL_AMD_blend_minmax_factor GL_AMD_conservative_depth GL_AMD_debug_output GL_AMD_depth_clamp_separate GL_AMD_gpu_shader_half_float GL_AMD_gpu_shader_int16 GL_AMD_gpu_shader_int64 GL_AMD_multi_draw_indirect GL_AMD_pinned_memory GL_AMD_query_buffer_object GL_AMD_sample_positions GL_AMD_seamless_cubemap_per_texture GL_AMD_shader_trinary_minmax GL_AMD_texture_cube_map_array GL_AMD_vertex_shader_layer GL_AMD_vertex_shader_viewport_index GL_ARB_ES2_compatibility GL_ARB_ES3_1_compatibility GL_ARB_ES3_2_compatibility GL_ARB_ES3_compatibility GL_ARB_arrays_of_arrays GL_ARB_base_instance GL_ARB_bindless_texture GL_ARB_blend_func_extended GL_ARB_buffer_storage GL_ARB_clear_buffer_object GL_ARB_clear_texture GL_ARB_clip_control GL_ARB_color_buffer_float GL_ARB_compressed_texture_pixel_storage GL_ARB_compute_shader GL_ARB_conditional_render_inverted GL_ARB_conservative_depth GL_ARB_copy_buffer GL_ARB_copy_image GL_ARB_cull_distance GL_ARB_debug_output GL_ARB_depth_buffer_float GL_ARB_depth_clamp GL_ARB_depth_texture GL_ARB_derivative_control GL_ARB_direct_state_access GL_ARB_draw_buffers GL_ARB_draw_buffers_blend GL_ARB_draw_elements_base_vertex GL_ARB_draw_indirect GL_ARB_draw_instanced GL_ARB_enhanced_layouts GL_ARB_explicit_attrib_location GL_ARB_explicit_uniform_location GL_ARB_fragment_coord_conventions GL_ARB_fragment_layer_viewport GL_ARB_fragment_program GL_ARB_fragment_program_shadow GL_ARB_fragment_shader GL_ARB_framebuffer_no_attachments GL_ARB_framebuffer_object GL_ARB_framebuffer_sRGB GL_ARB_geometry_shader4 GL_ARB_get_program_binary GL_ARB_get_texture_sub_image GL_ARB_gl_spirv GL_ARB_gpu_shader5 GL_ARB_gpu_shader_fp64 GL_ARB_gpu_shader_int64 GL_ARB_half_float_pixel GL_ARB_half_float_vertex GL_ARB_indirect_parameters GL_ARB_instanced_arrays GL_ARB_internalformat_query GL_ARB_internalformat_query2 GL_ARB_invalidate_subdata GL_ARB_map_buffer_range GL_ARB_multi_bind GL_ARB_multi_draw_indirect GL_ARB_multisample GL_ARB_multitexture GL_ARB_occlusion_query GL_ARB_occlusion_query2 GL_ARB_parallel_shader_compile GL_ARB_pipeline_statistics_query GL_ARB_pixel_buffer_object GL_ARB_point_parameters GL_ARB_point_sprite GL_ARB_polygon_offset_clamp GL_ARB_post_depth_coverage GL_ARB_program_interface_query GL_ARB_provoking_vertex GL_ARB_query_buffer_object GL_ARB_robustness GL_ARB_sample_locations GL_ARB_sample_shading GL_ARB_sampler_objects GL_ARB_seamless_cube_map GL_ARB_seamless_cubemap_per_texture GL_ARB_separate_shader_objects GL_ARB_shader_atomic_counter_ops GL_ARB_shader_atomic_counters GL_ARB_shader_ballot GL_ARB_shader_bit_encoding GL_ARB_shader_clock GL_ARB_shader_draw_parameters GL_ARB_shader_group_vote GL_ARB_shader_image_load_store GL_ARB_shader_image_size GL_ARB_shader_objects GL_ARB_shader_precision GL_ARB_shader_stencil_export GL_ARB_shader_storage_buffer_object GL_ARB_shader_subroutine GL_ARB_shader_texture_image_samples GL_ARB_shader_texture_lod GL_ARB_shader_viewport_layer_array GL_ARB_shading_language_100 GL_ARB_shading_language_420pack GL_ARB_shading_language_packing GL_ARB_shadow GL_ARB_shadow_ambient GL_ARB_sparse_buffer GL_ARB_sparse_texture GL_ARB_spirv_extensions GL_ARB_stencil_texturing GL_ARB_sync GL_ARB_tessellation_shader GL_ARB_texture_barrier GL_ARB_texture_border_clamp GL_ARB_texture_buffer_object GL_ARB_texture_buffer_object_rgb32 GL_ARB_texture_buffer_range GL_ARB_texture_compression GL_ARB_texture_compression_bptc GL_ARB_texture_compression_rgtc GL_ARB_texture_cube_map GL_ARB_texture_cube_map_array GL_ARB_texture_env_add GL_ARB_texture_env_combine GL_ARB_texture_env_crossbar GL_ARB_texture_env_dot3 GL_ARB_texture_filter_anisotropic GL_ARB_texture_filter_minmax GL_ARB_texture_float GL_ARB_texture_gather GL_ARB_texture_mirror_clamp_to_edge GL_ARB_texture_mirrored_repeat GL_ARB_texture_multisample GL_ARB_texture_multisample_no_array GL_ARB_texture_non_power_of_two GL_ARB_texture_query_levels GL_ARB_texture_query_lod GL_ARB_texture_rectangle GL_ARB_texture_rg GL_ARB_texture_rgb10_a2ui GL_ARB_texture_stencil8 GL_ARB_texture_storage GL_ARB_texture_storage_multisample GL_ARB_texture_swizzle GL_ARB_texture_view GL_ARB_timer_query GL_ARB_transform_feedback GL_ARB_transform_feedback2 GL_ARB_transform_feedback3 GL_ARB_transform_feedback_instanced GL_ARB_transform_feedback_overflow_query GL_ARB_transpose_matrix GL_ARB_uniform_buffer_object GL_ARB_vertex_array_bgra GL_ARB_vertex_array_object GL_ARB_vertex_attrib_64bit GL_ARB_vertex_attrib_binding GL_ARB_vertex_buffer_object GL_ARB_vertex_program GL_ARB_vertex_shader GL_ARB_vertex_type_10f_11f_11f_rev GL_ARB_vertex_type_2_10_10_10_rev GL_ARB_viewport_array GL_ARB_window_pos GL_ATI_draw_buffers GL_ATI_meminfo GL_ATI_separate_stencil GL_ATI_shader_texture_lod GL_ATI_texture_env_combine3 GL_ATI_texture_float GL_ATI_texture_mirror_once GL_EXT_abgr GL_EXT_bgra GL_EXT_bindable_uniform GL_EXT_blend_color GL_EXT_blend_equation_separate GL_EXT_blend_func_separate GL_EXT_blend_minmax GL_EXT_blend_subtract GL_EXT_compiled_vertex_array GL_EXT_copy_buffer GL_EXT_copy_texture GL_EXT_debug_label GL_EXT_depth_bounds_test GL_EXT_direct_state_access GL_EXT_draw_buffers2 GL_EXT_draw_instanced GL_EXT_draw_range_elements GL_EXT_fog_coord GL_EXT_framebuffer_blit GL_EXT_framebuffer_multisample GL_EXT_framebuffer_object GL_EXT_framebuffer_sRGB GL_EXT_geometry_shader4 GL_EXT_gpu_program_parameters GL_EXT_gpu_shader4 GL_EXT_memory_object GL_EXT_memory_object_fd GL_EXT_multi_draw_arrays GL_EXT_nonuniform_qualifier GL_EXT_packed_depth_stencil GL_EXT_packed_float GL_EXT_packed_pixels GL_EXT_pixel_buffer_object GL_EXT_point_parameters GL_EXT_polygon_offset_clamp GL_EXT_provoking_vertex GL_EXT_rescale_normal GL_EXT_secondary_color GL_EXT_semaphore GL_EXT_semaphore_fd GL_EXT_separate_specular_color GL_EXT_shader_image_load_store GL_EXT_shader_integer_mix GL_EXT_shadow_funcs GL_EXT_stencil_wrap GL_EXT_subtexture GL_EXT_texture GL_EXT_texture3D GL_EXT_texture_array GL_EXT_texture_buffer_object GL_EXT_texture_compression_bptc GL_EXT_texture_compression_latc GL_EXT_texture_compression_rgtc GL_EXT_texture_compression_s3tc GL_EXT_texture_cube_map GL_EXT_texture_edge_clamp GL_EXT_texture_env_add GL_EXT_texture_env_combine GL_EXT_texture_env_dot3 GL_EXT_texture_filter_anisotropic GL_EXT_texture_integer GL_EXT_texture_lod GL_EXT_texture_lod_bias GL_EXT_texture_mirror_clamp GL_EXT_texture_object GL_EXT_texture_rectangle GL_EXT_texture_sRGB GL_EXT_texture_sRGB_R8 GL_EXT_texture_sRGB_RG8 GL_EXT_texture_sRGB_decode GL_EXT_texture_shared_exponent GL_EXT_texture_snorm GL_EXT_texture_storage GL_EXT_texture_swizzle GL_EXT_timer_query GL_EXT_transform_feedback GL_EXT_vertex_array GL_EXT_vertex_array_bgra GL_EXT_vertex_attrib_64bit GL_IBM_texture_mirrored_repeat GL_KHR_blend_equation_advanced GL_KHR_blend_equation_advanced_coherent GL_KHR_debug GL_KHR_no_error GL_KHR_parallel_shader_compile GL_KHR_robust_buffer_access_behavior GL_KHR_robustness GL_KHR_shader_subgroup GL_NV_blend_square GL_NV_conditional_render GL_NV_copy_image GL_NV_depth_buffer_float GL_NV_float_buffer GL_NV_half_float GL_NV_primitive_restart GL_NV_shader_atomic_int64 GL_NV_texgen_reflection GL_NV_texture_barrier GL_NV_timeline_semaphore GL_NV_vdpau_interop GL_OES_EGL_image GL_OVR_multiview GL_OVR_multiview2 GL_S3_s3tc GL_SGIS_generate_mipmap GL_SGIS_texture_edge_clamp GL_SGIS_texture_lod GL_SUN_multi_draw_arrays WGL_EXT_swap_control
- GL_MAX_TEXTURE_SIZE: 16384
- GL_SHADING_LANGUAGE_VERSION: 4.60
- GL_MAX_VERTEX_UNIFORM_COMPONENTS 8000
- GL_MAX_VERTEX_ATTRIBS 32
- Occlusion query bits: 64
- GL_MAX_DRAW_BUFFERS: 8
- GL_MAX_RENDERBUFFER_SIZE: 16384
- GL_MAX_COLOR_ATTACHMENTS: 8
- PIXELFORMAT: color(24-bits)
- MODE: -1, 640 x 480 windowed hz: N/A
- Using OpenGL version 3.2, requested: 3.2
- Using OpenGL 3.x context.
- Using an OpenGL core profile.
- OpenGL 3.x context is not forward compatible.
- Using OpenGL extensions: GL_ARB_half_float_pixel GL_ARB_texture_float GL_EXT_gpu_shader4 GL_ARB_gpu_shader5 GL_EXT_texture_integer GL_ARB_texture_rg GL_ARB_texture_gather GL_EXT_texture_compression_s3tc GL_ARB_texture_compression_rgtc GL_ARB_half_float_vertex GL_ARB_framebuffer_object GL_ARB_get_program_binary GL_ARB_buffer_storage GL_ARB_uniform_buffer_object GL_ARB_map_buffer_range GL_ARB_sync GL_ARB_depth_clamp GL_ARB_compute_shader GL_ARB_shader_draw_parameters GL_ARB_shader_storage_buffer_object GL_ARB_multi_draw_indirect GL_ARB_shading_language_420pack GL_ARB_explicit_uniform_location GL_ARB_shader_image_load_store GL_ARB_shader_atomic_counters GL_ARB_indirect_parameters
- Using S3TC (DXTC) texture compression.
- Using GPU vertex skinning with max 256 bones in a single pass, models are hardware accelerated.
- Debug: texturemode: GL_LINEAR_MIPMAP_NEAREST
- Debug: picmip: 0
- Debug: imageMaxDimension: 64
- Debug: ignoreMaterialMinDimension: 0
- Debug: ignoreMaterialMaxDimension: 0
- Debug: replaceMaterialMinDimensionIfPresentWithMaxDimension: 0
- Debug: ----- finished R_Init -----
- Debug: Failed to open 'fonts/fonts/unifont_6.dat' for reading: No such file or directory
- OpenAL System Info:
- - Vendor: OpenAL Community
- - Version: 1.1 ALSOFT 1.23.1
- - Renderer: OpenAL Soft
- - AL Extensions: AL_EXT_ALAW AL_EXT_BFORMAT AL_EXT_DOUBLE AL_EXT_EXPONENT_DISTANCE AL_EXT_FLOAT32 AL_EXT_IMA4 AL_EXT_LINEAR_DISTANCE AL_EXT_MCFORMATS AL_EXT_MULAW AL_EXT_MULAW_BFORMAT AL_EXT_MULAW_MCFORMATS AL_EXT_OFFSET AL_EXT_source_distance_model AL_EXT_SOURCE_RADIUS AL_EXT_STATIC_BUFFER AL_EXT_STEREO_ANGLES AL_LOKI_quadriphonic AL_SOFT_bformat_ex AL_SOFTX_bformat_hoa AL_SOFT_block_alignment AL_SOFT_buffer_length_query AL_SOFT_callback_buffer AL_SOFTX_convolution_reverb AL_SOFT_deferred_updates AL_SOFT_direct_channels AL_SOFT_direct_channels_remix AL_SOFT_effect_target AL_SOFT_events AL_SOFT_gain_clamp_ex AL_SOFTX_hold_on_disconnect AL_SOFT_loop_points AL_SOFTX_map_buffer AL_SOFT_MSADPCM AL_SOFT_source_latency AL_SOFT_source_length AL_SOFT_source_resampler AL_SOFT_source_spatialize AL_SOFT_source_start_delay AL_SOFT_UHJ AL_SOFT_UHJ_ex
- - ALC Extensions: ALC_ENUMERATE_ALL_EXT ALC_ENUMERATION_EXT ALC_EXT_CAPTURE ALC_EXT_DEDICATED ALC_EXT_disconnect ALC_EXT_EFX ALC_EXT_thread_local_context ALC_SOFT_device_clock ALC_SOFT_HRTF ALC_SOFT_loopback ALC_SOFT_loopback_bformat ALC_SOFT_output_limiter ALC_SOFT_output_mode ALC_SOFT_pause_device ALC_SOFT_reopen_device
- - Using Device: PCM2902 Audio Codec Analog Stereo
- - Available Devices:
- - PCM2902 Audio Codec Analog Stereo
- - Navi 31 HDMI/DP Audio Digital Stereo (HDMI 2)
- - Default Device: OpenAL Soft
- - Available Capture Devices:
- - PCM2902 Audio Codec Analog Stereo
- - USB Audio Digital Stereo (IEC958)
- - Monitor of Navi 31 HDMI/DP Audio Digital Stereo (HDMI 2)
- - Monitor of PCM2902 Audio Codec Analog Stereo
- - Default Capture Device: PCM2902 Audio Codec Analog Stereo
- Debug: Loading Sample 'sound/null'
- Loading VM module build/game/default-gcc-nolto-reldeb-dll/cgame-native-dll.so...
- Loaded VM module in 74 msec
- Loading Lua plugin using a new Lua state.
- Loaded font face 'unifont' [regular] from 'fonts/unifont.ttf'.
- Loaded font face 'Roboto' [bold] from 'fonts/Roboto-Bold.ttf'.
- Loaded font face 'Roboto' [italic, bold] from 'fonts/Roboto-BoldItalic.ttf'.
- Loaded font face 'Roboto' [italic] from 'fonts/Roboto-Italic.ttf'.
- Loaded font face 'Roboto' [regular] from 'fonts/Roboto-Regular.ttf'.
- Loaded font face 'FontAwesome' [regular] from 'fonts/fontawesome-webfont.ttf'.
- Loaded font face 'DejaVu Sans' [regular] from 'fonts/DejaVuSansCondensed.ttf'.
- Loaded font face 'Material Icons' [regular] from 'fonts/MaterialIcons-Regular.ttf'.
- Debug: loading 'ui/assets/background/bg' image as shader
- Debug: loading 'ui/assets/background/black' image as shader
- Debug: loading 'ui/assets/background/duel' image as shader
- Debug: loading 'ui/assets/background/black2' image as shader
- Debug: loading 'ui/assets/background/circles1' image as shader
- Debug: loading 'ui/assets/background/circles2' image as shader
- Debug: loading 'ui/assets/background/fog' image as shader
- Debug: loading 'ui/assets/logos/fuzzy_blue' image as shader
- Debug: loading 'emoticons/official' image as shader
- Debug: loading 'emoticons/grenade' image as shader
- Debug: loading 'emoticons/lasgun' image as shader
- Debug: loading 'emoticons/firebomb' image as shader
- Debug: loading 'emoticons/prifle' image as shader
- Debug: loading 'emoticons/flamer' image as shader
- Debug: loading 'emoticons/chaingun' image as shader
- Debug: loading 'emoticons/mdriver' image as shader
- Debug: loading 'emoticons/blaster' image as shader
- Debug: loading 'emoticons/rifle' image as shader
- Debug: loading 'emoticons/painsaw' image as shader
- Debug: loading 'emoticons/shotgun' image as shader
- Debug: loading 'emoticons/advdragoon' image as shader
- Debug: loading 'emoticons/dragoon' image as shader
- Debug: loading 'emoticons/advmarauder' image as shader
- Debug: loading 'emoticons/marauder' image as shader
- Debug: loading 'emoticons/granger' image as shader
- Debug: loading 'emoticons/advbasilisk' image as shader
- Debug: loading 'emoticons/basilisk' image as shader
- Debug: loading 'emoticons/tyrant' image as shader
- Debug: loading 'emoticons/dretch' image as shader
- Debug: loading 'emoticons/advgranger' image as shader
- Debug: loading 'emoticons/defcomp' image as shader
- Debug: loading 'emoticons/repeater' image as shader
- Debug: loading 'emoticons/drill' image as shader
- Debug: loading 'emoticons/tesla' image as shader
- Debug: loading 'emoticons/reactor' image as shader
- Debug: loading 'emoticons/turret' image as shader
- Debug: loading 'emoticons/medstat' image as shader
- Debug: loading 'emoticons/armoury' image as shader
- Debug: loading 'emoticons/telenode' image as shader
- Debug: loading 'emoticons/hovel' image as shader
- Debug: loading 'emoticons/leech' image as shader
- Debug: loading 'emoticons/barricade' image as shader
- Debug: loading 'emoticons/trapper' image as shader
- Debug: loading 'emoticons/booster' image as shader
- Debug: loading 'emoticons/hive' image as shader
- Debug: loading 'emoticons/acidtube' image as shader
- Debug: loading 'emoticons/overmind' image as shader
- Debug: loading 'emoticons/egg' image as shader
- Debug: loading 'emoticons/human' image as shader
- Debug: loading 'emoticons/bsuit' image as shader
- Debug: loading 'emoticons/featured' image as shader
- Debug: loading 'emoticons/dev' image as shader
- Debug: loading 'emoticons/cross' image as shader
- Debug: loading 'emoticons/check' image as shader
- Debug: loading 'emoticons/bot' image as shader
- Debug: loading 'emoticons/unv' image as shader
- Debug: loading 'emoticons/lcannon' image as shader
- ----- Server Initialization -----
- Map: plat23
- [FS] Loading pak '.local/share/unvanquished/base/pkg/map-plat23_1.13.4.dpk'...
- [FS] Loading pakdir 'Mapping/Unvanquished/UnvanquishedAssets/build/_pakdir/pkg/tex-common_test.dpkdir/'...
- [FS] Loading pakdir 'Mapping/Unvanquished/UnvanquishedAssets/build/_pakdir/pkg/tex-pk02_test.dpkdir/'...
- [FS] Loading pakdir 'Mapping/Unvanquished/UnvanquishedAssets/build/_pakdir/pkg/tex-space_test.dpkdir/'...
- [FS] Loading pakdir 'Mapping/Unvanquished/UnvanquishedAssets/build/_pakdir/pkg/unvanquished_test.dpkdir/'...
- [FS] Loading pakdir 'Mapping/Unvanquished/UnvanquishedAssets/build/_pakdir/pkg/res-players_test.dpkdir/'...
- [FS] Loading pakdir 'Mapping/Unvanquished/UnvanquishedAssets/build/_pakdir/pkg/res-legacy_test.dpkdir/'...
- [FS] Loading pakdir 'Mapping/Unvanquished/UnvanquishedAssets/build/_pakdir/pkg/res-weapons_test.dpkdir/'...
- [FS] Loading pakdir 'Mapping/Unvanquished/UnvanquishedAssets/build/_pakdir/pkg/res-buildables_test.dpkdir/'...
- [FS] Loading pakdir 'Mapping/Unvanquished/UnvanquishedAssets/build/_pakdir/pkg/res-voices_test.dpkdir/'...
- [FS] Loading pakdir 'Mapping/Unvanquished/UnvanquishedAssets/build/_pakdir/pkg/res-soundtrack_test.dpkdir/'...
- Debug: Loading Sample 'sound/ui/heartbeat'
- Invalidating shader binary cache
- Debug: building generic shader permutation with macro: GENERIC_2D
- Warn: Unableto parse shader info log errors: unknown format
- Warn: Unableto parse shader info log errors: unknown format
- Warn: Unableto parse shader info log errors: unknown format
- Warn: Unableto parse shader info log errors: unknown format
- Warn: Source for shader program generic2D:
- 0: #version 460 core
- 1: #define HAVE_EXT_gpu_shader4 1
- 2: #define HAVE_ARB_gpu_shader5 1
- 3: #define HAVE_ARB_texture_gather 1
- 4: #define HAVE_EXT_texture_integer 1
- 5: #define HAVE_ARB_texture_rg 1
- 6: #define HAVE_ARB_uniform_buffer_object 1
- 7: #extension GL_ARB_shader_draw_parameters : require
- 8: #define HAVE_ARB_shader_draw_parameters 1
- 9: #define HAVE_ARB_shader_storage_buffer_object 1
- 10: #ifndef r_AmbientScale
- 11: #define r_AmbientScale 1.00000000e+00
- 12: #endif
- 13: #ifndef r_SpecularScale
- 14: #define r_SpecularScale 1.00000000e+00
- 15: #endif
- 16: #ifndef r_zNear
- 17: #define r_zNear 3.00000000e+00
- 18: #endif
- 19: #ifndef M_PI
- 20: #define M_PI 3.14159274e+00
- 21: #endif
- 22: #ifndef MAX_SHADOWMAPS
- 23: #define MAX_SHADOWMAPS 5
- 24: #endif
- 25: #ifndef MAX_REF_LIGHTS
- 26: #define MAX_REF_LIGHTS 1024
- 27: #endif
- 28: #ifndef TILE_SIZE
- 29: #define TILE_SIZE 16
- 30: #endif
- 31: #ifndef r_FBufSize
- 32: #define r_FBufSize vec2(6.40000000e+02, 4.80000000e+02)
- 33: #endif
- 34: #ifndef r_tileStep
- 35: #define r_tileStep vec2(2.49999985e-02, 3.33333313e-02)
- 36: #endif
- 37: #ifndef r_highPrecisionRendering
- 38: #define r_highPrecisionRendering 1
- 39: #endif
- 40: #ifndef r_precomputedLighting
- 41: #define r_precomputedLighting 1
- 42: #endif
- 43: #ifndef r_vertexSkinning
- 44: #define r_vertexSkinning 1
- 45: #endif
- 46: const int MAX_GLSL_BONES = 256;
- 47: #ifndef r_halfLambertLighting
- 48: #define r_halfLambertLighting 1
- 49: #endif
- 50: #ifndef r_glowMapping
- 51: #define r_glowMapping 1
- 52: #endif
- 53: #ifndef r_zNear
- 54: #define r_zNear 3.00000000e+00
- 55: #endif
- 56: #define IN in
- 57: #define OUT(mode) mode out
- 58: #define textureCube texture
- 59: #define texture2D texture
- 60: #define texture2DProj textureProj
- 61: #define texture3D texture
- 62: OUT(flat) int in_drawID;
- 63: OUT(flat) int in_baseInstance;
- 64: #define drawID gl_DrawIDARB
- 65: #define baseInstance gl_BaseInstanceARB
- 66:
- 67: #ifndef GENERIC_2D
- 68: #define GENERIC_2D 1
- 69: #endif
- 70: /*
- 71: ===========================================================================
- 72: Copyright (C) 2006-2011 Robert Beckebans <trebor_7@users.sourceforge.net>
- 73:
- 74: This file is part of XreaL source code.
- 75:
- 76: XreaL source code is free software; you can redistribute it
- 77: and/or modify it under the terms of the GNU General Public License as
- 78: published by the Free Software Foundation; either version 2 of the License,
- 79: or (at your option) any later version.
- 80:
- 81: XreaL source code is distributed in the hope that it will be
- 82: useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
- 83: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- 84: GNU General Public License for more details.
- 85:
- 86: You should have received a copy of the GNU General Public License
- 87: along with XreaL source code; if not, write to the Free Software
- 88: Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- 89: ===========================================================================
- 90: */
- 91:
- 92: /* generic_vp.glsl */
- 93:
- 10000: #line 10000 // vertexSimple_vp.glsl
- 10001: /*
- 10002: ===========================================================================
- 10003: Copyright (C) 2010 Robert Beckebans <trebor_7@users.sourceforge.net>
- 10004:
- 10005: This file is part of XreaL source code.
- 10006:
- 10007: XreaL source code is free software; you can redistribute it
- 10008: and/or modify it under the terms of the GNU General Public License as
- 10009: published by the Free Software Foundation; either version 2 of the License,
- 10010: or (at your option) any later version.
- 10011:
- 10012: XreaL source code is distributed in the hope that it will be
- 10013: useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
- 10014: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- 10015: GNU General Public License for more details.
- 10016:
- 10017: You should have received a copy of the GNU General Public License
- 10018: along with XreaL source code; if not, write to the Free Software
- 10019: Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- 10020: ===========================================================================
- 10021: */
- 10022: // vertexSimple_vp.glsl - simple vertex fetch
- 10023:
- 10024: struct localBasis {
- 10025: vec3 normal;
- 10026: vec3 tangent, binormal;
- 10027: };
- 10028:
- 10029: vec3 QuatTransVec(in vec4 quat, in vec3 vec) {
- 10030: vec3 tmp = 2.0 * cross( quat.xyz, vec );
- 10031: return vec + quat.w * tmp + cross( quat.xyz, tmp );
- 10032: }
- 10033:
- 10034: void QTangentToLocalBasis( in vec4 qtangent, out localBasis LB ) {
- 10035: LB.normal = QuatTransVec( qtangent, vec3( 0.0, 0.0, 1.0 ) );
- 10036: LB.tangent = QuatTransVec( qtangent, vec3( 1.0, 0.0, 0.0 ) );
- 10037: LB.tangent *= sign( qtangent.w );
- 10038: LB.binormal = QuatTransVec( qtangent, vec3( 0.0, 1.0, 0.0 ) );
- 10039: }
- 10040:
- 10041: #if !defined(USE_VERTEX_ANIMATION) && !defined(USE_VERTEX_SKINNING) && !defined(USE_VERTEX_SPRITE)
- 10042:
- 10043: IN vec3 attr_Position;
- 10044: IN vec4 attr_Color;
- 10045: IN vec4 attr_QTangent;
- 10046: IN vec4 attr_TexCoord0;
- 10047:
- 10048: void VertexFetch(out vec4 position,
- 10049: out localBasis normalBasis,
- 10050: out vec4 color,
- 10051: out vec2 texCoord,
- 10052: out vec2 lmCoord)
- 10053: {
- 10054: position = vec4( attr_Position, 1.0 );
- 10055: QTangentToLocalBasis( attr_QTangent, normalBasis );
- 10056: color = attr_Color;
- 10057: texCoord = attr_TexCoord0.xy;
- 10058: lmCoord = attr_TexCoord0.zw;
- 10059: }
- 10060: #endif
- 92: #line 92
- 20000: #line 20000 // vertexSkinning_vp.glsl
- 20001: /*
- 20002: ===========================================================================
- 20003: Copyright (C) 2009-2011 Robert Beckebans <trebor_7@users.sourceforge.net>
- 20004:
- 20005: This file is part of XreaL source code.
- 20006:
- 20007: XreaL source code is free software; you can redistribute it
- 20008: and/or modify it under the terms of the GNU General Public License as
- 20009: published by the Free Software Foundation; either version 2 of the License,
- 20010: or (at your option) any later version.
- 20011:
- 20012: XreaL source code is distributed in the hope that it will be
- 20013: useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
- 20014: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- 20015: GNU General Public License for more details.
- 20016:
- 20017: You should have received a copy of the GNU General Public License
- 20018: along with XreaL source code; if not, write to the Free Software
- 20019: Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- 20020: ===========================================================================
- 20021: */
- 20022: // vertexSkinning_vp.glsl - GPU vertex skinning for skeletal meshes
- 20023:
- 20024: #if defined(USE_VERTEX_SKINNING)
- 20025:
- 20026: IN vec3 attr_Position;
- 20027: IN vec2 attr_TexCoord0;
- 20028: IN vec4 attr_Color;
- 20029: IN vec4 attr_QTangent;
- 20030: IN vec4 attr_BoneFactors;
- 20031:
- 20032: // even elements are rotation quat, odd elements are translation + scale (in .w)
- 20033: uniform vec4 u_Bones[ 2 * MAX_GLSL_BONES ];
- 20034:
- 20035: void VertexFetch(out vec4 position,
- 20036: out localBasis LB,
- 20037: out vec4 color,
- 20038: out vec2 texCoord,
- 20039: out vec2 lmCoord)
- 20040: {
- 20041: const float scale = 1.0 / 256.0;
- 20042: const float weightScale = 1.0 / 255.0;
- 20043: localBasis inLB;
- 20044:
- 20045: // Unpack data from "bone factors". This used to have the index in the high byte and the weight
- 20046: // in the low byte, which may seem a bit more logical, but it triggered issues with some
- 20047: // Nvidia shader compilers (https://github.com/DaemonEngine/Daemon/issues/472).
- 20048: vec4 ipart = floor( attr_BoneFactors * scale );
- 20049: vec4 fpart = attr_BoneFactors * scale - ipart;
- 20050: // idx = 2 times the original bone index (the index input to boneFactor)
- 20051: ivec4 idx = ivec4( fpart * 512.0 );
- 20052: vec4 weights = ipart * weightScale;
- 20053:
- 20054: vec4 quat = u_Bones[ idx.x ];
- 20055: vec4 trans = u_Bones[ idx.x + 1 ];
- 20056:
- 20057: QTangentToLocalBasis( attr_QTangent, inLB );
- 20058:
- 20059: position.xyz = weights.x * (QuatTransVec( quat, attr_Position ) * trans.w + trans.xyz);
- 20060: LB.normal = weights.x * (QuatTransVec( quat, inLB.normal ));
- 20061: LB.tangent = weights.x * (QuatTransVec( quat, inLB.tangent ));
- 20062: LB.binormal = weights.x * (QuatTransVec( quat, inLB.binormal ));
- 20063:
- 20064: quat = u_Bones[ idx.y ];
- 20065: trans = u_Bones[ idx.y + 1 ];
- 20066:
- 20067: position.xyz += weights.y * (QuatTransVec( quat, attr_Position ) * trans.w + trans.xyz);
- 20068: LB.normal += weights.y * (QuatTransVec( quat, inLB.normal ));
- 20069: LB.tangent += weights.y * (QuatTransVec( quat, inLB.tangent ));
- 20070: LB.binormal += weights.y * (QuatTransVec( quat, inLB.binormal ));
- 20071:
- 20072: quat = u_Bones[ idx.z ];
- 20073: trans = u_Bones[ idx.z + 1 ];
- 20074:
- 20075: position.xyz += weights.z * (QuatTransVec( quat, attr_Position ) * trans.w + trans.xyz);
- 20076: LB.normal += weights.z * (QuatTransVec( quat, inLB.normal ));
- 20077: LB.tangent += weights.z * (QuatTransVec( quat, inLB.tangent ));
- 20078: LB.binormal += weights.z * (QuatTransVec( quat, inLB.binormal ));
- 20079:
- 20080: quat = u_Bones[ idx.w ];
- 20081: trans = u_Bones[ idx.w + 1 ];
- 20082:
- 20083: position.xyz += weights.w * (QuatTransVec( quat, attr_Position ) * trans.w + trans.xyz);
- 20084: LB.normal += weights.w * (QuatTransVec( quat, inLB.normal ));
- 20085: LB.tangent += weights.w * (QuatTransVec( quat, inLB.tangent ));
- 20086: LB.binormal += weights.w * (QuatTransVec( quat, inLB.binormal ));
- 20087:
- 20088: position.w = 1.0;
- 20089: LB.normal = normalize(LB.normal);
- 20090: LB.tangent = normalize(LB.tangent);
- 20091: LB.binormal = normalize(LB.binormal);
- 20092:
- 20093: color = attr_Color;
- 20094: texCoord = attr_TexCoord0;
- 20095: lmCoord = attr_TexCoord0;
- 20096: }
- 20097: #endif
- 93: #line 93
- 30000: #line 30000 // vertexAnimation_vp.glsl
- 30001: /*
- 30002: ===========================================================================
- 30003: Copyright (C) 2010 Robert Beckebans <trebor_7@users.sourceforge.net>
- 30004:
- 30005: This file is part of XreaL source code.
- 30006:
- 30007: XreaL source code is free software; you can redistribute it
- 30008: and/or modify it under the terms of the GNU General Public License as
- 30009: published by the Free Software Foundation; either version 2 of the License,
- 30010: or (at your option) any later version.
- 30011:
- 30012: XreaL source code is distributed in the hope that it will be
- 30013: useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
- 30014: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- 30015: GNU General Public License for more details.
- 30016:
- 30017: You should have received a copy of the GNU General Public License
- 30018: along with XreaL source code; if not, write to the Free Software
- 30019: Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- 30020: ===========================================================================
- 30021: */
- 30022: // vertexAnimation_vp.glsl - interpolates .md3/.mdc vertex animations
- 30023:
- 30024: #if defined(USE_VERTEX_ANIMATION)
- 30025:
- 30026: IN vec3 attr_Position;
- 30027: IN vec4 attr_Color;
- 30028: IN vec4 attr_QTangent;
- 30029: IN vec2 attr_TexCoord0;
- 30030: IN vec3 attr_Position2;
- 30031: IN vec4 attr_QTangent2;
- 30032:
- 30033: uniform float u_VertexInterpolation;
- 30034:
- 30035: void VertexAnimation_P_N( vec3 fromPosition, vec3 toPosition,
- 30036: vec4 fromQTangent, vec4 toQTangent,
- 30037: float frac,
- 30038: inout vec4 position, inout vec3 normal)
- 30039: {
- 30040: vec3 fromNormal = QuatTransVec( fromQTangent, vec3( 0.0, 0.0, 1.0 ) );
- 30041: vec3 toNormal = QuatTransVec( toQTangent, vec3( 0.0, 0.0, 1.0 ) );
- 30042:
- 30043: position.xyz = 512.0 * mix(fromPosition, toPosition, frac);
- 30044: position.w = 1;
- 30045:
- 30046: normal = normalize(mix(fromNormal, toNormal, frac));
- 30047: }
- 30048:
- 30049: void VertexFetch(out vec4 position,
- 30050: out localBasis LB,
- 30051: out vec4 color,
- 30052: out vec2 texCoord,
- 30053: out vec2 lmCoord)
- 30054: {
- 30055: localBasis fromLB, toLB;
- 30056:
- 30057: QTangentToLocalBasis( attr_QTangent, fromLB );
- 30058: QTangentToLocalBasis( attr_QTangent2, toLB );
- 30059:
- 30060: position.xyz = 512.0 * mix(attr_Position, attr_Position2, u_VertexInterpolation);
- 30061: position.w = 1;
- 30062:
- 30063: LB.normal = normalize(mix(fromLB.normal, toLB.normal, u_VertexInterpolation));
- 30064: LB.tangent = normalize(mix(fromLB.tangent, toLB.tangent, u_VertexInterpolation));
- 30065: LB.binormal = normalize(mix(fromLB.binormal, toLB.binormal, u_VertexInterpolation));
- 30066:
- 30067: color = attr_Color;
- 30068: texCoord = attr_TexCoord0;
- 30069: lmCoord = attr_TexCoord0;
- 30070: }
- 30071: #endif
- 94: #line 94
- 40000: #line 40000 // vertexSprite_vp.glsl
- 40001: /*
- 40002: ===========================================================================
- 40003: Copyright (C) 2010 Robert Beckebans <trebor_7@users.sourceforge.net>
- 40004:
- 40005: This file is part of XreaL source code.
- 40006:
- 40007: XreaL source code is free software; you can redistribute it
- 40008: and/or modify it under the terms of the GNU General Public License as
- 40009: published by the Free Software Foundation; either version 2 of the License,
- 40010: or (at your option) any later version.
- 40011:
- 40012: XreaL source code is distributed in the hope that it will be
- 40013: useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
- 40014: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- 40015: GNU General Public License for more details.
- 40016:
- 40017: You should have received a copy of the GNU General Public License
- 40018: along with XreaL source code; if not, write to the Free Software
- 40019: Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- 40020: ===========================================================================
- 40021: */
- 40022: // vertexSprite_vp.glsl - sprite vertex fetch
- 40023:
- 40024: #if defined(USE_VERTEX_SPRITE)
- 40025:
- 40026: IN vec3 attr_Position;
- 40027: IN vec4 attr_Color;
- 40028: IN vec4 attr_TexCoord0;
- 40029: IN vec4 attr_Orientation;
- 40030:
- 40031: uniform vec3 u_ViewOrigin;
- 40032: uniform vec3 u_ViewUp;
- 40033:
- 40034: float depthScale;
- 40035:
- 40036: void VertexFetch(out vec4 position,
- 40037: out localBasis normalBasis,
- 40038: out vec4 color,
- 40039: out vec2 texCoord,
- 40040: out vec2 lmCoord)
- 40041: {
- 40042: vec2 corner;
- 40043: float radius = attr_Orientation.w;
- 40044: vec3 normal = normalize( u_ViewOrigin - attr_Position ), up, left;
- 40045: float s, c; // sin & cos of rotation factor
- 40046:
- 40047: corner = sign( attr_TexCoord0.zw );
- 40048:
- 40049: if( radius <= 0.0 ) {
- 40050: // autosprite2 mode, attr_Orientation.xyz contains the up-vector
- 40051: up = attr_Orientation.xyz;
- 40052: left = radius * normalize( cross( up, normal ) );
- 40053: position = vec4( attr_Position + corner.y * left, 1.0 );
- 40054: } else {
- 40055: // autosprite mode, attr_Orientation.x contains the rotation angle
- 40056: left = normalize( cross( u_ViewUp, normal ) );
- 40057: up = cross( left, normal );
- 40058:
- 40059: s = radius * sin( radians( attr_Orientation.x ) );
- 40060: c = radius * cos( radians( attr_Orientation.x ) );
- 40061:
- 40062: // rotate left and up vectors
- 40063: vec3 leftOrig = left;
- 40064: left = c * left + s * up;
- 40065: up = c * up - s * leftOrig;
- 40066:
- 40067: left *= corner.x;
- 40068: up *= corner.y;
- 40069:
- 40070: position = vec4( attr_Position + left + up, 1.0 );
- 40071: }
- 40072: normalBasis.normal = normal;
- 40073: normalBasis.tangent = normalize( up );
- 40074: normalBasis.binormal = normalize( left );
- 40075:
- 40076: texCoord = 0.5 * corner + 0.5; //attr_TexCoord0.xy;
- 40077: lmCoord = abs( attr_TexCoord0.zw );
- 40078: color = attr_Color;
- 40079:
- 40080: depthScale = 2.0 * radius;
- 40081: }
- 40082: #endif
- 95: #line 95
- 96:
- 97: uniform mat4 u_TextureMatrix;
- 98: #if !defined(USE_VERTEX_SPRITE)
- 99: uniform vec3 u_ViewOrigin;
- 100: #endif
- 101:
- 102: uniform float u_Time;
- 103:
- 104: uniform vec4 u_ColorModulate;
- 105: uniform vec4 u_Color;
- 106: #if defined(USE_TCGEN_ENVIRONMENT)
- 107: uniform mat4 u_ModelMatrix;
- 108: #endif
- 109: uniform mat4 u_ModelViewProjectionMatrix;
- 110:
- 111: #if defined(USE_VERTEX_SPRITE)
- 112: OUT(smooth) vec2 var_FadeDepth;
- 113: uniform mat4 u_ProjectionMatrixTranspose;
- 114: #elif defined(USE_DEPTH_FADE)
- 115: uniform float u_DepthScale;
- 116: OUT(smooth) vec2 var_FadeDepth;
- 117: #endif
- 118:
- 119: OUT(smooth) vec2 var_TexCoords;
- 120: OUT(smooth) vec4 var_Color;
- 121:
- 122: void DeformVertex( inout vec4 pos,
- 123: inout vec3 normal,
- 124: inout vec2 st,
- 125: inout vec4 color,
- 126: in float time);
- 127:
- 128: void main()
- 129: {
- 50000: #line 50000 // material_vp.glsl
- 50001: /*
- 50002: ===========================================================================
- 50003:
- 50004: Daemon BSD Source Code
- 50005: Copyright (c) 2024 Daemon Developers
- 50006: All rights reserved.
- 50007:
- 50008: This file is part of the Daemon BSD Source Code (Daemon Source Code).
- 50009:
- 50010: Redistribution and use in source and binary forms, with or without
- 50011: modification, are permitted provided that the following conditions are met:
- 50012: * Redistributions of source code must retain the above copyright
- 50013: notice, this list of conditions and the following disclaimer.
- 50014: * Redistributions in binary form must reproduce the above copyright
- 50015: notice, this list of conditions and the following disclaimer in the
- 50016: documentation and/or other materials provided with the distribution.
- 50017: * Neither the name of the Daemon developers nor the
- 50018: names of its contributors may be used to endorse or promote products
- 50019: derived from this software without specific prior written permission.
- 50020:
- 50021: THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
- 50022: ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- 50023: WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- 50024: DISCLAIMED. IN NO EVENT SHALL DAEMON DEVELOPERS BE LIABLE FOR ANY
- 50025: DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- 50026: (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- 50027: LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- 50028: ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- 50029: (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- 50030: SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- 50031:
- 50032: ===========================================================================
- 50033: */
- 50034:
- 50035: /* material_vp.glsl */
- 50036:
- 50037: #if defined(USE_MATERIAL_SYSTEM)
- 50038:
- 50039: #ifdef HAVE_ARB_shader_draw_parameters
- 50040: in_drawID = drawID;
- 50041: in_baseInstance = baseInstance;
- 50042: #endif // !HAVE_ARB_shader_draw_parameters
- 50043:
- 50044: #endif // !USE_MATERIAL_SYSTEM
- 130: #line 130
- 131:
- 132: a
- 133: vec4 position;
- 134: localBasis LB;
- 135: vec4 color;
- 136: vec2 texCoord, lmCoord;
- 137:
- 138: VertexFetch( position, LB, color, texCoord, lmCoord );
- 139: color = color * u_ColorModulate + u_Color;
- 140:
- 141: DeformVertex( position,
- 142: LB.normal,
- 143: texCoord,
- 144: color,
- 145: u_Time);
- 146:
- 147: // transform vertex position into homogenous clip-space
- 148: gl_Position = u_ModelViewProjectionMatrix * position;
- 149:
- 150: // transform texcoords
- 151: #if defined(USE_TCGEN_ENVIRONMENT)
- 152: {
- 153: // TODO: Explain why only the rotational part of u_ModelMatrix is relevant
- 154: position.xyz = mat3(u_ModelMatrix) * position.xyz;
- 155:
- 156: vec3 viewer = normalize(u_ViewOrigin - position.xyz);
- 157:
- 158: float d = dot(LB.normal, viewer);
- 159:
- 160: vec3 reflected = LB.normal * 2.0 * d - viewer;
- 161:
- 162: var_TexCoords = 0.5 + vec2(0.5, -0.5) * reflected.yz;
- 163: }
- 164: #elif defined(USE_TCGEN_LIGHTMAP)
- 165: var_TexCoords = (u_TextureMatrix * vec4(lmCoord, 0.0, 1.0)).xy;
- 166: #else
- 167: var_TexCoords = (u_TextureMatrix * vec4(texCoord, 0.0, 1.0)).xy;
- 168: #endif
- 169:
- 170: #if defined(USE_DEPTH_FADE)
- 171: // compute z of end of fading effect
- 172: vec4 fadeDepth = u_ModelViewProjectionMatrix * (position - u_DepthScale * vec4(LB.normal, 0.0));
- 173: var_FadeDepth = fadeDepth.zw;
- 174: #elif defined(USE_VERTEX_SPRITE)
- 175: vec4 fadeDepth = u_ModelViewProjectionMatrix * (position - depthScale * vec4(LB.normal, 0.0));
- 176: var_FadeDepth = fadeDepth.zw;
- 177: #endif
- 178:
- 179: var_Color = color;
- 180: }
- Warn: Compile log:
- Warn: ERROR: 0:131: 'a' : undeclared identifier
- ERROR: 0:132: '' : compilation terminated
- ERROR: 2 compilation errors. No code generated.
- Warn: Unhandled exception (15ShaderException): Couldn't compile vertex shader: generic2D
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement