You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A Game that requires controlling how a group of objects are rendered. Post processing is also required.
Describe the problem or limitation you are having in your project
The current post processing method involves rending to a separate viewport. while that is the most flexible option, it also has the most overhead. a single empty full screen viewport in addition to the default one with nothing rendered could cut the fps in half.
Low end graphics don't have much power to make this overhead justified.
In most cases, the actual thing that's required is to render to the main buffer, not render to a separate buffer and then compose it with the main one.
Describe the feature / enhancement and how it helps to overcome the problem or limitation
1- A new object type called ViewportHook to be made that connects to a already existing view port (with the option to connect to the main one) that has a option to either clear the previous depth buffer or not touch it at all.
2- Post processing shouldn't be done with a quad or on a CanvasItem level. that's just ugly. and might end up with some overhead as well.
Create a new shader type called "viewport shader" that has DEPTH and ALBEDO inouts along with some matrix built-ins.
Describe how your proposal will work, with code, pseudo-code, mock-ups, and/or diagrams
1- all viewports will have a post processing shader variable.
2- a new viewport type called ViewportHook that uses the existing buffer of another Viewport and allows clearing the depth buffer before it starts rending.
If this enhancement will not be used often, can it be worked around with a few lines of script?
nope, it's pretty hard to work around the overhead.
Is there a reason why this should be core and not an add-on in the asset library?
godot's post processing model at this point isn't a feature but rather a work around.
The text was updated successfully, but these errors were encountered:
This is a duplicate of #2196 So this would be better off as a comment on that thread instead of a thread of its own. That way we can track the discussion all in one place
Describe the project you are working on
A Game that requires controlling how a group of objects are rendered. Post processing is also required.
Describe the problem or limitation you are having in your project
The current post processing method involves rending to a separate viewport. while that is the most flexible option, it also has the most overhead. a single empty full screen viewport in addition to the default one with nothing rendered could cut the fps in half.
Low end graphics don't have much power to make this overhead justified.
In most cases, the actual thing that's required is to render to the main buffer, not render to a separate buffer and then compose it with the main one.
Describe the feature / enhancement and how it helps to overcome the problem or limitation
1- A new object type called
ViewportHook
to be made that connects to a already existing view port (with the option to connect to the main one) that has a option to either clear the previous depth buffer or not touch it at all.2- Post processing shouldn't be done with a quad or on a
CanvasItem
level. that's just ugly. and might end up with some overhead as well.Create a new shader type called "viewport shader" that has DEPTH and ALBEDO inouts along with some matrix built-ins.
Describe how your proposal will work, with code, pseudo-code, mock-ups, and/or diagrams
1- all viewports will have a post processing shader variable.
2- a new viewport type called
ViewportHook
that uses the existing buffer of anotherViewport
and allows clearing the depth buffer before it starts rending.If this enhancement will not be used often, can it be worked around with a few lines of script?
nope, it's pretty hard to work around the overhead.
Is there a reason why this should be core and not an add-on in the asset library?
godot's post processing model at this point isn't a feature but rather a work around.
The text was updated successfully, but these errors were encountered: