Page 1 of 2

Hardware Survey

Posted: 21 Jun 2013, 22:37
by zwzsg
Hello!

In order to help me determine which graphic card can withstand Lua fog and which cannot, I need your help!

Please run this following widget for at least a dozen seconds, check it works, then upload your infolog (either via forum post attachement or http://pastebin.com ).

Since you cannot post wordless posts, indicate shorty if you felt lag.

Re: Hardware Survey

Posted: 21 Jun 2013, 23:26
by FireStorm_
Ran it a few second and saw fog. But only the shadows of the units I build. The unit models themselves where invisible. Hope that helps.

Re: Hardware Survey

Posted: 21 Jun 2013, 23:47
by Floris
whole screen just went blue (apart from the gui)

Re: Hardware Survey

Posted: 22 Jun 2013, 00:49
by zwzsg
Uhm, you let it run for such a small time the widget didn't get to print FPS. Was it laggy?

Oh, and start the game so time elapses.

Re: Hardware Survey

Posted: 22 Jun 2013, 01:25
by knorke
[f=0001776] 217 fps @ 59s
[f=0001896] 4 fps @ 63s
[f=0002041] 223 fps @ 68s
[f=0002195] 7 fps @ 73s
[f=0002341] 154 fps @ 78s
[f=0002494] 4 fps @ 83s
[f=0002641] 154 fps @ 88s
[f=0002795] 4 fps @ 93s
[f=0002941] 149 fps @ 98s

Re: Hardware Survey

Posted: 22 Jun 2013, 01:32
by zwzsg
At least a machine where the fog puts a clear dent in the framerate!

Re: Hardware Survey

Posted: 22 Jun 2013, 05:54
by KingRaptor
[f=0000803] 448 fps @ 26s
[f=0000841] 450 fps @ 28s
[f=0000991] 58 fps @ 33s
[f=0001141] 350 fps @ 38s
[f=0001291] 58 fps @ 43s
[f=0001441] 353 fps @ 48s
[f=0001591] 58 fps @ 53s

Fills my screen with grey-brown. I canna see anything!

Re: Hardware Survey

Posted: 22 Jun 2013, 17:04
by The Yak
I'm on an Radeon 6850 on my main PC and last I checked it fails with LUA fog, I'll get a proper report + infolog in this spot once I'm back there.

Re: Hardware Survey

Posted: 22 Jun 2013, 21:42
by malric

Code: Select all

[f=0000271] 26 fps @ 9s
[f=0000391] 9 fps @ 13s
[f=0000541] 109 fps @ 18s
[f=0000691] 9 fps @ 23s
[f=0000841] 98 fps @ 28s
[f=0000991] 10 fps @ 33s
[f=0001141] 100 fps @ 38s
[f=0001292] 8 fps @ 43s
Needless to say, felt quite some lag at 9 fps...

Re: Hardware Survey

Posted: 23 Jun 2013, 01:56
by zwzsg
Ok, thanks.

From all that, I gather ... that I can't use the list of available extensions to know if a graphic card will suffer from my fog or not. :?

I will have to find another way.

Thanks for the help guys.

Here is the result table:

Code: Select all

M: Malric     300 exts on a NVIDIA NVS 4200M/PCIe/SSE2        Lag
S: FireStorm  273 exts on a NVIDIA GeForce GTX 650/PCIe/SSE2  No Lag
P: Picasso    240 exts on a NVIDIA GeForce GTX 260/PCI/SSE2   No Lag
R: KingRaptor 230 exts on a ATI Radeon HD 5700 Series         Lag, but still good FPS
F: Floris     197 exts on a ATI Mobility Radeon HD 4670       Lag
Z: zwzsg      162 exts on a ATI ASUS EAH5770 Series           No Lag
K: knorke      95 exts on a ATI Radeon X1300/X1550 Series     Lag

- - - R F - - GL_AMDX_debug_output
- - - - - Z - GL_AMDX_name_gen_delete
- - - - - Z - GL_AMDX_random_access_target
- - - R F Z - GL_AMDX_vertex_shader_tessellator
- - - R F - - GL_AMD_conservative_depth
- - - R F - - GL_AMD_debug_output
- - - R F - - GL_AMD_depth_clamp_separate
- - - R F Z - GL_AMD_draw_buffers_blend
M S - R - - - GL_AMD_multi_draw_indirect
- - - R F - - GL_AMD_name_gen_delete
- - - R F Z K GL_AMD_performance_monitor
- - - R F - - GL_AMD_pinned_memory
- - - R - - - GL_AMD_query_buffer_object
- - - R F - - GL_AMD_sample_positions
- S - R F Z - GL_AMD_seamless_cubemap_per_texture
- - - R F Z - GL_AMD_shader_stencil_export
- - - R - - - GL_AMD_shader_trace
- - - R F Z - GL_AMD_texture_cube_map_array
- - - R F Z - GL_AMD_texture_texture4
- - - R - - - GL_AMD_transform_feedback3_lines_triangles
- - - R - - - GL_AMD_vertex_shader_layer
- - - R F Z - GL_AMD_vertex_shader_tessellator
- - - R - - - GL_AMD_vertex_shader_viewport_index
M S P R F - - GL_ARB_ES2_compatibility
M S - R - - - GL_ARB_ES3_compatibility
M S - R - - - GL_ARB_arrays_of_arrays
M S P R F - - GL_ARB_base_instance
M S P R F - - GL_ARB_blend_func_extended
M S - R - - - GL_ARB_clear_buffer_object
M S P R F Z - GL_ARB_color_buffer_float
M S P R - - - GL_ARB_compatibility
M S P R F - - GL_ARB_compressed_texture_pixel_storage
M S - R - - - GL_ARB_compute_shader
M S P R F - - GL_ARB_conservative_depth
M S P R F Z - GL_ARB_copy_buffer
M S - - - - - GL_ARB_copy_image
M S - - - - - GL_ARB_debug_output
M S P R F Z - GL_ARB_depth_buffer_float
M S P R F Z - GL_ARB_depth_clamp
M S P R F Z K GL_ARB_depth_texture
M S P R F Z K GL_ARB_draw_buffers
M S - R F Z - GL_ARB_draw_buffers_blend
M S P R F Z - GL_ARB_draw_elements_base_vertex
M S - R - - - GL_ARB_draw_indirect
M S P R F Z - GL_ARB_draw_instanced
M S P R F - - GL_ARB_explicit_attrib_location
M S - R - - - GL_ARB_explicit_uniform_location
M S P R F Z - GL_ARB_fragment_coord_conventions
M S - R - - - GL_ARB_fragment_layer_viewport
M S P R F Z K GL_ARB_fragment_program
M S P R F Z K GL_ARB_fragment_program_shadow
M S P R F Z K GL_ARB_fragment_shader
M S - - - - - GL_ARB_framebuffer_no_attachments
M S P R F Z K GL_ARB_framebuffer_object
M S P R F Z - GL_ARB_framebuffer_sRGB
M S P R F Z - GL_ARB_geometry_shader4
M S P R F - - GL_ARB_get_program_binary
M S - R - - - GL_ARB_gpu_shader5
M S - R - - - GL_ARB_gpu_shader_fp64
M S P R F Z K GL_ARB_half_float_pixel
M S P R F Z K GL_ARB_half_float_vertex
M S P R F Z - GL_ARB_imaging
M S P R F Z - GL_ARB_instanced_arrays
M S P R F - - GL_ARB_internalformat_query
M S - - - - - GL_ARB_internalformat_query2
M S - R - - - GL_ARB_invalidate_subdata
M S P R F - - GL_ARB_map_buffer_alignment
M S P R F Z K GL_ARB_map_buffer_range
M S - R - - - GL_ARB_multi_draw_indirect
M S P R F Z K GL_ARB_multisample
M S P R F Z K GL_ARB_multitexture
M S P R F Z K GL_ARB_occlusion_query
M S P R F - - GL_ARB_occlusion_query2
M S P R F Z K GL_ARB_pixel_buffer_object
M S P R F Z K GL_ARB_point_parameters
M S P R F Z K GL_ARB_point_sprite
M S - R - - - GL_ARB_program_interface_query
M S P R F Z - GL_ARB_provoking_vertex
M S - - - - - GL_ARB_robust_buffer_access_behavior
M S P - - - - GL_ARB_robustness
M S - R F Z - GL_ARB_sample_shading
M S P R F - - GL_ARB_sampler_objects
M S P R F Z - GL_ARB_seamless_cube_map
M S P R F - - GL_ARB_separate_shader_objects
M S - R - - - GL_ARB_shader_atomic_counters
M S P R F - - GL_ARB_shader_bit_encoding
M S - R - - - GL_ARB_shader_image_load_store
M S - R - - - GL_ARB_shader_image_size
M S P R F Z K GL_ARB_shader_objects
M S - R F - - GL_ARB_shader_precision
- - - R F - - GL_ARB_shader_stencil_export
M S - R - - - GL_ARB_shader_storage_buffer_object
M S - R - - - GL_ARB_shader_subroutine
M S - R F Z K GL_ARB_shader_texture_lod
M S P R F Z K GL_ARB_shading_language_100
M S P R F - - GL_ARB_shading_language_420pack
M S P - - - - GL_ARB_shading_language_include
M S P R F - - GL_ARB_shading_language_packing
M S P R F Z K GL_ARB_shadow
- - - R F Z K GL_ARB_shadow_ambient
M S - R - - - GL_ARB_stencil_texturing
M S P R F Z - GL_ARB_sync
M S - R - - - GL_ARB_tessellation_shader
M S P R F Z K GL_ARB_texture_border_clamp
M S P R F Z - GL_ARB_texture_buffer_object
M S - R F - - GL_ARB_texture_buffer_object_rgb32
M S - R - - - GL_ARB_texture_buffer_range
M S P R F Z K GL_ARB_texture_compression
M S - R - - - GL_ARB_texture_compression_bptc
M S P R F Z - GL_ARB_texture_compression_rgtc
M S P R F Z K GL_ARB_texture_cube_map
M S - R F Z - GL_ARB_texture_cube_map_array
M S P R F Z K GL_ARB_texture_env_add
M S P R F Z K GL_ARB_texture_env_combine
M S P R F Z K GL_ARB_texture_env_crossbar
M S P R F Z K GL_ARB_texture_env_dot3
M S P R F Z K GL_ARB_texture_float
M S - R F Z - GL_ARB_texture_gather
M S P R F Z K GL_ARB_texture_mirrored_repeat
M S P R F Z - GL_ARB_texture_multisample
M S P R F Z K GL_ARB_texture_non_power_of_two
M S - R - - - GL_ARB_texture_query_levels
M S - R F Z - GL_ARB_texture_query_lod
M S P R F Z K GL_ARB_texture_rectangle
M S P R F Z - GL_ARB_texture_rg
M S P R F - - GL_ARB_texture_rgb10_a2ui
- - - R F Z - GL_ARB_texture_snorm
M S P R F - - GL_ARB_texture_storage
M S - R - - - GL_ARB_texture_storage_multisample
M S P - - - - GL_ARB_texture_swizzle
M S - - - - - GL_ARB_texture_view
M S P R F - - GL_ARB_timer_query
M S P R F - - GL_ARB_transform_feedback2
M S - R F - - GL_ARB_transform_feedback3
M S P R F - - GL_ARB_transform_feedback_instanced
M S P R F Z K GL_ARB_transpose_matrix
M S P R F Z - GL_ARB_uniform_buffer_object
M S P R F Z - GL_ARB_vertex_array_bgra
M S P R F Z K GL_ARB_vertex_array_object
M S - R - - - GL_ARB_vertex_attrib_64bit
M S - - - - - GL_ARB_vertex_attrib_binding
M S P R F Z K GL_ARB_vertex_buffer_object
M S P R F Z K GL_ARB_vertex_program
M S P R F Z K GL_ARB_vertex_shader
M S P R F - - GL_ARB_vertex_type_2_10_10_10_rev
M S P R F - - GL_ARB_viewport_array
M S P R F Z K GL_ARB_window_pos
M S P R F Z K GL_ATI_draw_buffers
- - - R F Z K GL_ATI_envmap_bumpmap
- - - R F Z K GL_ATI_fragment_shader
- - - - F Z K GL_ATI_meminfo
- - - R F Z K GL_ATI_separate_stencil
- - - R F Z K GL_ATI_texture_compression_3dc
- - - R F Z K GL_ATI_texture_env_combine3
M S P R F Z K GL_ATI_texture_float
M S P R F Z - GL_ATI_texture_mirror_once
M S P - - - - GL_EXTX_framebuffer_mixed_formats
M S P - - - - GL_EXT_Cg_shader
M S P R F Z K GL_EXT_abgr
M S P R F Z K GL_EXT_bgra
M S P R F Z - GL_EXT_bindable_uniform
M S P R F Z K GL_EXT_blend_color
M S P R F Z K GL_EXT_blend_equation_separate
M S P R F Z K GL_EXT_blend_func_separate
M S P R F Z K GL_EXT_blend_minmax
M S P R F Z K GL_EXT_blend_subtract
M S P R F Z K GL_EXT_compiled_vertex_array
- - - R F Z - GL_EXT_copy_buffer
- - - R F Z K GL_EXT_copy_texture
M S P - - - - GL_EXT_depth_bounds_test
M S P R F - - GL_EXT_direct_state_access
M S P R F Z - GL_EXT_draw_buffers2
M S P R F Z - GL_EXT_draw_instanced
M S P R F Z K GL_EXT_draw_range_elements
M S P R F Z K GL_EXT_fog_coord
M S P R F Z K GL_EXT_framebuffer_blit
M S P R F Z K GL_EXT_framebuffer_multisample
M S - - - - - GL_EXT_framebuffer_multisample_blit_scaled
M S P R F Z K GL_EXT_framebuffer_object
M S P R F Z - GL_EXT_framebuffer_sRGB
M S P R F Z - GL_EXT_geometry_shader4
M S P R F Z K GL_EXT_gpu_program_parameters
M S P R F Z - GL_EXT_gpu_shader4
- - - R F Z - GL_EXT_histogram
M S P - - - - GL_EXT_import_sync_object
M S P R F Z K GL_EXT_multi_draw_arrays
M S P R F Z K GL_EXT_packed_depth_stencil
M S P R F Z - GL_EXT_packed_float
M S P R F Z K GL_EXT_packed_pixels
M S P R F Z - GL_EXT_pixel_buffer_object
M S P R F Z K GL_EXT_point_parameters
M S P R F Z - GL_EXT_provoking_vertex
M S P R F Z K GL_EXT_rescale_normal
M S P R F Z K GL_EXT_secondary_color
M S P - - - - GL_EXT_separate_shader_objects
M S P R F Z K GL_EXT_separate_specular_color
- - - - - Z - GL_EXT_shader_atomic_counters
M S - R - - - GL_EXT_shader_image_load_store
M S P R F Z K GL_EXT_shadow_funcs
M S P - - - - GL_EXT_stencil_two_side
M S P R F Z K GL_EXT_stencil_wrap
- - - R F Z K GL_EXT_subtexture
- - - R F Z K GL_EXT_texgen_reflection
M S P R F Z K GL_EXT_texture3D
M S P R F Z - GL_EXT_texture_array
M S P R F Z - GL_EXT_texture_buffer_object
- - - - - Z - GL_EXT_texture_buffer_object_rgb32
- - - R - Z - GL_EXT_texture_compression_bptc
M S P - - - - GL_EXT_texture_compression_dxt1
M S P R F Z - GL_EXT_texture_compression_latc
M S P R F Z - GL_EXT_texture_compression_rgtc
M S P R F Z K GL_EXT_texture_compression_s3tc
M S P R F Z K GL_EXT_texture_cube_map
M S P R F Z K GL_EXT_texture_edge_clamp
M S P R F Z K GL_EXT_texture_env_add
M S P R F Z K GL_EXT_texture_env_combine
M S P R F Z K GL_EXT_texture_env_dot3
M S P R F Z K GL_EXT_texture_filter_anisotropic
M - P - - - - GL_EXT_texture_format_BGRA8888
M S P R F Z - GL_EXT_texture_integer
M S P R F Z - GL_EXT_texture_lod
M S P R F Z K GL_EXT_texture_lod_bias
M S P R F Z K GL_EXT_texture_mirror_clamp
M S P R F Z K GL_EXT_texture_object
- - - R F Z K GL_EXT_texture_rectangle
M S P R F Z K GL_EXT_texture_sRGB
M S P R F - - GL_EXT_texture_sRGB_decode
M S P R F Z - GL_EXT_texture_shared_exponent
- - - R F Z - GL_EXT_texture_snorm
M S P R F - - GL_EXT_texture_storage
M S P R F Z K GL_EXT_texture_swizzle
M - P - - - - GL_EXT_texture_type_2_10_10_10_REV
M S P R F Z - GL_EXT_timer_query
- - - R F Z - GL_EXT_transform_feedback
M S P - - - - GL_EXT_transform_feedback2
M S P R F Z K GL_EXT_vertex_array
M S P R F Z - GL_EXT_vertex_array_bgra
M S - R - - - GL_EXT_vertex_attrib_64bit
M S P - - - - GL_IBM_rasterpos_clip
M S P R F Z - GL_IBM_texture_mirrored_repeat
M S - - - - - GL_KHR_debug
M S P R F Z K GL_KTX_buffer_region
M S P - - - - GL_NVX_conditional_render
M S P - - - - GL_NVX_gpu_memory_info
M S - - - - - GL_NV_ES1_1_compatibility
M - P - - - - GL_NV_alpha_test
- S - - - - - GL_NV_bindless_texture
M - P - - - - GL_NV_blend_minmax
M S P R F Z K GL_NV_blend_square
M - P - - - - GL_NV_complex_primitives
M S - - - - - GL_NV_compute_program5
M S P R F Z - GL_NV_conditional_render
M S P R F Z - GL_NV_copy_depth_to_color
M S P R F - - GL_NV_copy_image
M S P - - - - GL_NV_depth_buffer_float
M S P - - - - GL_NV_depth_clamp
M S - - - - - GL_NV_draw_texture
M S P R F Z - GL_NV_explicit_multisample
M - P - - - - GL_NV_fbo_color_attachments
M S P - - - - GL_NV_fence
M S P R F - - GL_NV_float_buffer
M S P - - - - GL_NV_fog_distance
M - P - - - - GL_NV_fragdepth
M S P - - - - GL_NV_fragment_program
M S P - - - - GL_NV_fragment_program2
M S P - - - - GL_NV_fragment_program_option
M S P - - - - GL_NV_framebuffer_multisample_coverage
M S P - - - - GL_NV_geometry_shader4
M S P - - - - GL_NV_gpu_program4
M S - - - - - GL_NV_gpu_program4_1
M S - - - - - GL_NV_gpu_program5
- S - - - - - GL_NV_gpu_program5_mem_extended
M S - - - - - GL_NV_gpu_program_fp64
M S - - - - - GL_NV_gpu_shader5
M S P R F - - GL_NV_half_float
M S P - - - - GL_NV_light_max_exponent
M S P - - - - GL_NV_multisample_coverage
M S P - - - - GL_NV_multisample_filter_hint
M S P - - - - GL_NV_occlusion_query
M S P - - - - GL_NV_packed_depth_stencil
M S P - - - - GL_NV_parameter_buffer_object
M S P - - - - GL_NV_parameter_buffer_object2
M S P - - - - GL_NV_path_rendering
M S P - - - - GL_NV_pixel_data_range
M S P - - - - GL_NV_point_sprite
M S P R F Z - GL_NV_primitive_restart
M S P - - - - GL_NV_register_combiners
M S P - - - - GL_NV_register_combiners2
M S - - - - - GL_NV_shader_atomic_counters
M S - - - - - GL_NV_shader_atomic_float
M S P - - - - GL_NV_shader_buffer_load
M S - - - - - GL_NV_shader_storage_buffer_object
M S P R F Z K GL_NV_texgen_reflection
M S P R F - - GL_NV_texture_barrier
M S P - - - - GL_NV_texture_compression_vtc
M S P - - - - GL_NV_texture_env_combine4
M S P - - - - GL_NV_texture_expand_normal
M - P - - - - GL_NV_texture_lod_clamp
M S P - - - - GL_NV_texture_multisample
M S P - - - - GL_NV_texture_rectangle
M S P - - - - GL_NV_texture_shader
M S P - - - - GL_NV_texture_shader2
M S P - - - - GL_NV_texture_shader3
M S P - - - - GL_NV_transform_feedback
M S P - - - - GL_NV_transform_feedback2
M S P - - - - GL_NV_vertex_array_range
M S P - - - - GL_NV_vertex_array_range2
M S - - - - - GL_NV_vertex_attrib_integer_64bit
M S P - - - - GL_NV_vertex_buffer_unified_memory
M S P - - - - GL_NV_vertex_program
M S P - - - - GL_NV_vertex_program1_1
M S P - - - - GL_NV_vertex_program2
M S P - - - - GL_NV_vertex_program2_option
M S P - - - - GL_NV_vertex_program3
M - - - - - - GL_OES_compressed_paletted_texture
M - P - - - - GL_OES_depth24
M - P - - - - GL_OES_depth32
M - P - - - - GL_OES_depth_texture
M - P - - - - GL_OES_element_index_uint
M - P - - - - GL_OES_fbo_render_mipmap
M - P - - - - GL_OES_get_program_binary
M - P - - - - GL_OES_mapbuffer
M - P - - - - GL_OES_packed_depth_stencil
M - - - - - - GL_OES_point_size_array
M - - - - - - GL_OES_point_sprite
M - - - - - - GL_OES_read_format
M - P - - - - GL_OES_rgb8_rgba8
M - P - - - - GL_OES_standard_derivatives
M - P - - - - GL_OES_texture_3D
M - P - - - - GL_OES_texture_float
M - P - - - - GL_OES_texture_float_linear
M - P - - - - GL_OES_texture_half_float
M - P - - - - GL_OES_texture_half_float_linear
M - P - - - - GL_OES_texture_npot
M - P - - - - GL_OES_vertex_array_object
M - P - - - - GL_OES_vertex_half_float
M S P - - - - GL_S3_s3tc
M S P R F Z K GL_SGIS_generate_mipmap
- - - R F Z K GL_SGIS_texture_edge_clamp
M S P R F Z K GL_SGIS_texture_lod
M S P - - - - GL_SGIX_depth_texture
M S P - - - - GL_SGIX_shadow
- - - R F Z - GL_SUN_multi_draw_arrays
M S P - - - - GL_SUN_slice_accum
M S P R F Z K GL_WIN_swap_hint
M S P R F Z K WGL_EXT_swap_control
I was hoping to find a line with - S P - - Z - or - S P R - Z -, but there is not. So, yeah can't really draw a relationship between the available extensions and the lag. I was also surprised to see cards don't just have more or less extension, but different sets.

Re: Hardware Survey

Posted: 24 Jun 2013, 18:41
by The Yak
I was under the impression that lag/failure with LUA fog was an ATI only thing, apparently not

Re: Hardware Survey

Posted: 24 Jun 2013, 20:02
by dansan
Is fog created using shaders? --> Is performance for fog related to shader-count?

Re: Hardware Survey

Posted: 24 Jun 2013, 21:28
by zwzsg
No, I am not using shaders, as I have yet to learn how to shader.

The fog is done with many semi transparent quads, layered. Which I've been told by jK is a bad way because it kills the GPUs bandwidth with pixelfillrate (or something like that). It didn't cause any drop in FPS for me, even though I don't have that good a card, but I've been told, it really drains the performance for other people.

Since it's a little eyecandy that I can easily deactivate, I thought it would be nice if the gadget could autodetect if the card can support it, and disable the fog if not. But it seems to be a bit complicated to guess if a card will lag from its technical specs, so instead I'll crudely have the gadget try and check the FPS.

See also these related threads:
http://springrts.com/phpbb/viewtopic.ph ... 3&start=71
http://springrts.com/phpbb/viewtopic.php?f=23&t=29660

Re: Hardware Survey

Posted: 25 Jun 2013, 05:46
by raaar
[f=0000694] 8 fps @ 23s
[f=0000841] 34 fps @ 28s
[f=0000993] 8 fps @ 33s
[f=0001141] 34 fps @ 38s
[f=0001293] 8 fps @ 43s
[f=0001441] 34 fps @ 48s
[f=0001593] 8 fps @ 53s
[f=0001741] 34 fps @ 58s
[f=0001893] 8 fps @ 63s
[f=0002041] 34 fps @ 68s
[f=0002193] 8 fps @ 73s
infolog.txt
(39.84 KiB) Downloaded 15 times

Re: Hardware Survey

Posted: 25 Jun 2013, 08:00
by hoijui
i think it makes more sense, if you learn to shader.
the basics can be learned and tried out in half a day.
there seem to be tutorials for fog with GLSL.
i am just mentioning it, cause i think it is probably less work to put a basic GLSL fog together, then going through the frustration you go through here in this thread, and with the performance problems of your current implementation.
so basically, you can think of shaders as tiny programs, that get executed once per each (sur-)face (vertex shader), or once per each pixel (pixel shader) per render frame.
in vertex shader, you can do things like: "if this surface faces the sun,make it brighter"
in pixel shader, you might do: "if <length of foggy regions passed from this pixel to the eye> / <some constant> is greater then <random between 0 and 1>, then set <pixel color> = <fog color>"
(cheap, stupid, bad handmade fog)

... that is how i understood it, but i have only written shaders for 3h or 4h myself. ;-)

Re: Hardware Survey

Posted: 27 Jun 2013, 07:38
by knorke
It might usefull for other things too, not just fog.
For example the "overdrive grid" in zK draws lots of filled circles around each energybuilding when selected..some players reported similiar symptomes when they selected them.

I think it would be interessting to compare if the problematic cards have shared memory? Or compare the maximum fillrates (from google) to what is being drawn...

Re: Hardware Survey

Posted: 27 Jun 2013, 07:59
by jK
no, lines NEVER are fillrate limited, they cover like <5% of the screen
They are pure CPU & vertex bound.

Re: Hardware Survey

Posted: 27 Jun 2013, 08:05
by knorke
lines? i mean these circles:
Image
with lots of windmills, solars etc they can potentially fill the whole screen.

Re: Hardware Survey

Posted: 27 Jun 2013, 10:32
by Jools
I ran it on coldplace with latest dev xta and current spring. The fog just was like a brown sheet over the water. It looked a bit weird imo.

The output:

Code: Select all

[f=0000751] 171 fps @ 25s
[f=0000841] 146 fps @ 28s
[f=0000991] 94 fps @ 33s
[f=0001141] 178 fps @ 38s
[f=0001291] 125 fps @ 43s
[f=0001441] 175 fps @ 48s
[f=0001591] 116 fps @ 53s
[f=0001741] 173 fps @ 58s
[f=0001891] 111 fps @ 63s
[f=0002041] 126 fps @ 68s
[f=0002191] 133 fps @ 73s
[f=0002341] 166 fps @ 78s
[f=0002491] 132 fps @ 83s
[f=0002641] 164 fps @ 88s
[f=0002791] 133 fps @ 93s
[f=0002941] 166 fps @ 98s
[f=0003091] 133 fps @ 103s
GPU:

Code: Select all

OpenGL[0x1F00]=NVIDIA Corporation
OpenGL[0x1F01]=GeForce GTX 460/PCIe/SSE2
OpenGL[0x1F02]=4.3.0
OpenGL[0x1F03]=[skip]
OpenGL[0x8874]=
OpenGL[0x8B8C]=4.30 NVIDIA via Cg compiler

Re: Hardware Survey

Posted: 27 Jun 2013, 19:11
by zwzsg
Brown? It's supposed to be blueish:

Image

Thanks for the infolog, but you don't need to post them anymore, as I already re(x7)leased the map with a simple Spring.GetFPS()<25 test to disable fog : http://springrts.com/phpbb/viewtopic.php?f=13&t=27613

And for new maps, I'll either limit myself to fade to black, or try shaders.