FBO and FSAA (motion blur)

Started by
8 comments, last by Enrico 17 years, 4 months ago
Hi, I'm trying to add my homemade ("probably wrong") motion blur, this is what im doing. 1) rendering three frames to FBOs. 2) Using 0.5 * middle frame + 0.25 * (before frame + after frame) for the output 3) go to 1 but next frame. Now this is my problem: FBO are not AA. I google it and I know there is EXT_framebuffer_multisample for FBO+AA but it is not support yet (not even 8800s). So I was wondering is there is anything I can do to get AA FBOs? Thanks. Edit: I would like to stir away from pbuffers if posible.
---------------------------- ^_^
Advertisement
Quote:Original post by BlackBox
So I was wondering is there is anything I can do to get AA FBOs?


Currently there is no way to do that.
I've always been a little confused about why that's the case. Why would FSAA be any different to support when rendering to an FBO rather than rendering to the backbuffer? With the current memory architecture, it's all "just memory", right?
Actually what he is doing should be somewhat close to AA, IIRC I read somewhere that with the accumulation buffer you could do what he is trying to do to achieve some kind of AA... Maybe you should look into using the accumulation buffer instead...
And as for multisample FBO extension you're wrong, I have an 8800GTX and its supported. If you don't believe me check out dephi3d I posted my cards extensions there.
You could do AA/supersampling yourself: Just create a huge texture and scale it down... Would be slow, but should work.
Quote:Original post by BlackBox
Now this is my problem: FBO are not AA.
I google it and I know there is EXT_framebuffer_multisample for FBO+AA but it is not support yet (not even 8800s)

Mhm, my Geforce 7900GTO supports this extension and I know from others that the 8800 cards support it, too. Maybe you need to update your drivers?

--
Do you happen to use linux? I got a geforce 7900GS and no support for the extension in my drivers yet.
Quote:Original post by rollo
Do you happen to use linux? I got a geforce 7900GS and no support for the extension in my drivers yet.

Yes, I am using a AMD64 Gentoo with my 7900GTO. I noticed this extension first when working on my Linux programs and then updated my Windows drivers to get this extension there, too. But I must confess that I hadn't had time to play with this extension :-(

--
Odd, glxinfo doesnt report the extension being there, but GLEW does (atleast with an ambigous "OK [MISSING]" so maybe its there but the interface isnt published yet? What version of drivers are you using? I got 96.31
Quote:Original post by rollo
Odd, glxinfo doesnt report the extension being there, but GLEW does (atleast with an ambigous "OK [MISSING]" so maybe its there but the interface isnt published yet? What version of drivers are you using? I got 96.31

I am using 97.24 and this are the OpenGL extensions:

OpenGL vendor string: NVIDIA CorporationOpenGL renderer string: GeForce 7900 GTO/PCI/SSE2OpenGL version string: 2.1.0 NVIDIA 97.42OpenGL extensions:    GL_ARB_color_buffer_float, GL_ARB_depth_texture, GL_ARB_draw_buffers,    GL_ARB_fragment_program, GL_ARB_fragment_program_shadow,    GL_ARB_fragment_shader, GL_ARB_half_float_pixel, GL_ARB_imaging,    GL_ARB_multisample, GL_ARB_multitexture, GL_ARB_occlusion_query,    GL_ARB_pixel_buffer_object, GL_ARB_point_parameters, GL_ARB_point_sprite,    GL_ARB_shadow, GL_ARB_shader_objects, GL_ARB_shading_language_100,    GL_ARB_texture_border_clamp, GL_ARB_texture_compression,    GL_ARB_texture_cube_map, GL_ARB_texture_env_add,    GL_ARB_texture_env_combine, GL_ARB_texture_env_dot3, GL_ARB_texture_float,    GL_ARB_texture_mirrored_repeat, GL_ARB_texture_non_power_of_two,    GL_ARB_texture_rectangle, GL_ARB_transpose_matrix,    GL_ARB_vertex_buffer_object, GL_ARB_vertex_program, GL_ARB_vertex_shader,    GL_ARB_window_pos, GL_ATI_draw_buffers, GL_ATI_texture_float,    GL_ATI_texture_mirror_once, GL_S3_s3tc, GL_EXT_texture_env_add,    GL_EXT_abgr, GL_EXT_bgra, 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_Cg_shader, GL_EXT_depth_bounds_test, GL_EXT_draw_range_elements,    GL_EXT_fog_coord, GL_EXT_framebuffer_blit, GL_EXT_framebuffer_multisample,    GL_EXT_framebuffer_object, GL_EXT_gpu_program_parameters,    GL_EXT_multi_draw_arrays, GL_EXT_packed_depth_stencil,    GL_EXT_packed_pixels, GL_EXT_pixel_buffer_object, GL_EXT_point_parameters,    GL_EXT_rescale_normal, GL_EXT_secondary_color,    GL_EXT_separate_specular_color, GL_EXT_shadow_funcs,    GL_EXT_stencil_two_side, GL_EXT_stencil_wrap, GL_EXT_texture3D,    GL_EXT_texture_compression_s3tc, GL_EXT_texture_cube_map,    GL_EXT_texture_edge_clamp, GL_EXT_texture_env_combine,    GL_EXT_texture_env_dot3, GL_EXT_texture_filter_anisotropic,    GL_EXT_texture_lod, GL_EXT_texture_lod_bias, GL_EXT_texture_mirror_clamp,    GL_EXT_texture_object, GL_EXT_texture_sRGB, GL_EXT_timer_query,    GL_EXT_vertex_array, GL_IBM_rasterpos_clip,    GL_IBM_texture_mirrored_repeat, GL_KTX_buffer_region, GL_NV_blend_square,    GL_NV_copy_depth_to_color, GL_NV_depth_clamp, GL_NV_fence,    GL_NV_float_buffer, GL_NV_fog_distance, GL_NV_fragment_program,    GL_NV_fragment_program_option, GL_NV_fragment_program2,    GL_NV_framebuffer_multisample_coverage, GL_NV_half_float,    GL_NV_light_max_exponent, GL_NV_multisample_filter_hint,    GL_NV_occlusion_query, GL_NV_packed_depth_stencil, GL_NV_pixel_data_range,    GL_NV_point_sprite, GL_NV_primitive_restart, GL_NV_register_combiners,    GL_NV_register_combiners2, GL_NV_texgen_reflection,    GL_NV_texture_compression_vtc, GL_NV_texture_env_combine4,    GL_NV_texture_expand_normal, GL_NV_texture_rectangle,    GL_NV_texture_shader, GL_NV_texture_shader2, GL_NV_texture_shader3,    GL_NV_vertex_array_range, GL_NV_vertex_array_range2, GL_NV_vertex_program,    GL_NV_vertex_program1_1, GL_NV_vertex_program2,    GL_NV_vertex_program2_option, GL_NV_vertex_program3,    GL_NVX_conditional_render, GL_SGIS_generate_mipmap, GL_SGIS_texture_lod,    GL_SGIX_depth_texture, GL_SGIX_shadow, GL_SUN_slice_accum


--

This topic is closed to new replies.

Advertisement