-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Backdrop and Skybands Nodes for DAG #2362
Conversation
Hooray Jenkins reported success with all tests good! |
I can already feel #97 moving ever so slightly! Aurora Borealis here we come! 🎆 Tested it out just a bit to look at the sky in varying conditions (changing time of day, video settings) and it still looks like good ole sky. |
} | ||
|
||
private void endRenderSkyActivity() { | ||
PerformanceMonitor.endActivity(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good coding choice to clarify what would otherwise be hard to understand. However I'd solve the problem by having Performance Monitor statements at the beginning and end of each node. This is a change from what we have now, grouping together a number of rendering steps within the same activity. My vision is to group together activities by using hierarchical activity names instead. I.e. you could name the activity in the BackdropNode "rendering/backdrop" and the other "rendering/backdrop/skybands". It will be up to DebugOverlay to group these together if the user wishes it. Let me know if this is clear enough.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You mean like:
PerformanceMonitor.startActivity("rendering/backdrop") // Executed inside Backdrop
...
PerformanceMonitor.startActivity("rendering/backdrop/skybands") // Executed inside SkyBand node
...
PerformanceMonitor.endActivity("rendering/backdrop/skybands") // Executed inside SkyBand
PerformanceMonitor.endActivity("rendering/backdrop") // Executed not inside SkyBand, but inside Backdrop
But the activity backdrop (rendering/backdrop
) in total is going to include measurements from rendering/backdrop/skybands
right?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Regarding the activity statements: correct. Just remember endActivity() takes no parameter. Which won't be a problem now that start/end are closer to each other.
Regarding your question: ideally, but only in a DebugOverlay. And initially I don't mind if it isn't. If the DebugOverlay is ordered alphabetically for example, related nodes will be listed near each other anyway.
There could be an argument for naming rendering/backdrop more specifically. Or perhaps naming rendering/backdrop/skybands to rendering/skybands instead. In fact, I would prefer it that way. I am not convinced that the skybands should be grouped with the backdrop. If I remember correctly the generate some distant haze that gets overimposed on the world rendering. So, they are atmospheric effects on the world, not on the sky.
So, I'd suggest rendering/backdrop and rendering/skybands for the time being.
Hooray Jenkins reported success with all tests good! |
@emanuele3d Yes! I have prepost-composition nodes in this branch. |
import org.terasology.rendering.opengl.FrameBuffersManager; | ||
import org.terasology.rendering.world.WorldRenderer; | ||
|
||
import static org.lwjgl.opengl.GL11.*; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No wildcard imports, please. See checkstyle.xml for the check.
Looks good to me in general. Anything specific (apart from the wildcard imports) that I can contribute to? |
Hooray Jenkins reported success with all tests good! |
Thanks! |
Yay!!! |
Contains
Two new nodes for DAG (Directed Acyclic Graph), wrapping tasks that are related with rendering Sky.
How to test
Check if there are any weirdness related to rendering of Sky.