When I tried to write a configuration with Equalizer I found it really hard.
Here's my first attempt, with some simplification:
In the above configuration, although I struggled to set a new view/frustum
for the shadow map, I cannot control its viewport size. As the viewport size
of "final_channel" changes, all the outputframes changes their sizes.
Is there any idea of implementing such kind of pipelined task with
Equalizer?
--
View this message in context: http://software.1713.n2.nabble.com/Is-it-possible-to-build-a-multi-stage-rendering-pipeline-with-the-Equalizer-library-tp7401123p7401123.html
Sent from the Equalizer - Parallel Rendering mailing list archive at Nabble.com.
_______________________________________________
eq-dev mailing list
eq-...@equalizergraphics.com
http://www.equalizergraphics.com/cgi-bin/mailman/listinfo/eq-dev
http://www.equalizergraphics.com
On 24. Mar 2012, at 12:37, W.Xu [via Software] wrote:
> For example, to render a scene with shadow there are two stages: first the shadow map from the light's view, then the scene from the observer's view. Each of these two steps requires entirely different settings including viewport, frustum and output buffer sizes. And sort first/sort last decomposition is needed by both stages to provide scalability.
Task decomposition is not something we support yet natively in Equalizer. Getting it to scale in a non-trivial setup is still a research topic. ;)
That said, you might be able to hard-configure something which suits your needs:
> compound
> {
> compound
> {
> channel "final_channel"
> inputframe { name "illumination0" }
> inputframe { name "illumination1" }
> compound
> {
> channel "illum0_channel"
> inputframe "shadow_map0"
> outputframe "illumination0"
> compound
> {
> channel "shadow0_channel"
> projection { ...... } # Shadow map need a different view
> outputframe "shadow_map0"
> }
> }
> ##############################
> # Another similar illumination channel
> ##############################
> }
> }
>
>
> In the above configuration, although I struggled to set a new view/frustum for the shadow map, I cannot control its viewport size. As the viewport size of "final_channel" changes, all the outputframes changes their sizes.
The pixel viewport is inherited from the destination channel down to all leafs. You can work around that by the following structure:
- compound
-- compound "final", 2x input frames
-- compound "illum", 1x output frame
-- compound "shadow" 1x output frame
In this case, you've got three destination channels, each controlling its own pixel viewport. If you use view/segment destination channels, you can control their frustum by setting the wall of the corresponding views.
HTH,
Stefan.
--
View this message in context: http://software.1713.n2.nabble.com/Is-it-possible-to-build-a-multi-stage-rendering-pipeline-with-the-Equalizer-library-tp7401123p7408566.html