Logo by Jimpan1973 - Contribute your own Logo!

END OF AN ERA, FRACTALFORUMS.COM IS CONTINUED ON FRACTALFORUMS.ORG

it was a great time but no longer maintainable by c.Kleinhuis contact him for any data retrieval,
thanks and see you perhaps in 10 years again

this forum will stay online for reference
News: Support us via Flattr FLATTR Link
 
*
Welcome, Guest. Please login or register. March 28, 2024, 11:31:37 AM


Login with username, password and session length


The All New FractalForums is now in Public Beta Testing! Visit FractalForums.org and check it out!


Pages: [1]   Go Down
  Print  
Share this topic on DiggShare this topic on FacebookShare this topic on GoogleShare this topic on RedditShare this topic on StumbleUponShare this topic on Twitter
Author Topic: Progressive rendering  (Read 1315 times)
0 Members and 1 Guest are viewing this topic.
tryptophan
Safarist
******
Posts: 86


« on: September 17, 2012, 03:31:58 AM »

I'm wondering if someone could explain how progressive rendering is working. I understand the concept but not exactly sure how it is working in Fragmentarium. I noticed in the 2dProgressive.frag that it defines (not includes?) another .frag called BufferShader.frag. Also I've noticed the 2dProgressive has a backbuffer sampler and the BufferShader has a frontbuffer. Now I'm pretty sure one or both is taking the output of one or the other and feeding in back into itself but I'm not sure of how its setup. Any comments?

thanks
Keith
Logged
Syntopia
Fractal Molossus
**
Posts: 681



syntopiadk
WWW
« Reply #1 on: September 17, 2012, 05:34:14 PM »

Hi Keith,

Whenever you enable dual-buffering, by using something like:
Code:
#buffer RGBA32F
#buffershader "BufferShader.frag"
Fragmentarium will create two buffers, with the requested datatype (32-bit floats for each of the 4 color channels - from now I will call these 'HDR' buffers - in the example above).

When the shader is executed, it will write to the front-buffer, but it is allowed to sample from the backbuffer.
After it has rendered a frame, the backbuffer and frontbuffer is swapped - so the backbuffer always contains the previous output from the main shader.

The 'BufferShader.frag' is different. It reads from the frontbuffer, and is responsible for rendering the HDR buffer to the screen, which is always 8-bit RGBA. Typically it will contain code for tonemapping and post-processing the HDR buffers. The buffershader is not required - if is omitted colors will simply output whatever is in the HDR buffers, clamped from 0 to 1. You may also use the HDR buffers for other purposes than colors - e.g. the Reaction-Diffusion example use channels for different chemical species, and use the buffershader to convert this into an image.

Hope this helps, Mikael.
Logged
tryptophan
Safarist
******
Posts: 86


« Reply #2 on: September 18, 2012, 04:05:34 AM »

Cheers thanks I understand. The backbuffer is always a step behind and is sampling the frontbuffer which gets its input from the shader. I guess the backbuffer counter is the number of times this process happens for each final frame rendered.

thanks
Keith

Logged
Pages: [1]   Go Down
  Print  
 
Jump to:  

Related Topics
Subject Started by Replies Views Last post
Rendering the Mandelbrot set Programming JohnC 4 5828 Last post March 27, 2008, 06:59:04 PM
by JohnC
Mandelbulber 0.92 - progressive rendering Mandelbulber Buddhi 5 2748 Last post September 09, 2010, 07:29:06 PM
by ClydeFrog
what to do while rendering? Non-Fractal related Chit-Chat jwm-art 14 3789 Last post January 17, 2011, 11:09:19 PM
by LhoghoNurbs
Progressive board game Images Showcase (Rate My Fractal) BysanceNM 0 787 Last post April 01, 2012, 10:56:22 AM
by BysanceNM
[Solved] Equirectangular progressive render not accumulating subframes? Fragmentarium 3dickulus 13 3064 Last post November 11, 2013, 06:12:06 AM
by SCORPION

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2015, Simple Machines

Valid XHTML 1.0! Valid CSS! Dilber MC Theme by HarzeM
Page created in 0.758 seconds with 25 queries. (Pretty URLs adds 0.019s, 2q)