Skip to content
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

Merged
merged 7 commits into from
Jun 22, 2016

Conversation

tdgunes
Copy link
Contributor

@tdgunes tdgunes commented Jun 18, 2016

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.

@GooeyHub
Copy link
Member

Hooray Jenkins reported success with all tests good!

@tdgunes tdgunes added the GSOC label Jun 18, 2016
@tdgunes tdgunes self-assigned this Jun 18, 2016
@tdgunes tdgunes added the Topic: Rendering Requests, Issues and Changes related to lighting, meshes, camera, etc. label Jun 18, 2016
@Cervator Cervator added the Topic: Architecture Requests, Issues and Changes related to software architecture, programming patterns, etc. label Jun 19, 2016
@Cervator
Copy link
Member

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();
Copy link
Contributor

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.

Copy link
Contributor Author

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?

Copy link
Contributor

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.

@GooeyHub
Copy link
Member

Hooray Jenkins reported success with all tests good!

@emanuele3d
Copy link
Contributor

@msteiger! We will be waiting for your words of wisdom.
@tdgunes: do you already have a branch for the next few nodes? To familiarize myself with what's coming?

@tdgunes
Copy link
Contributor Author

tdgunes commented Jun 19, 2016

@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.*;
Copy link
Member

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.

@msteiger
Copy link
Member

Looks good to me in general. Anything specific (apart from the wildcard imports) that I can contribute to?

@GooeyHub
Copy link
Member

Hooray Jenkins reported success with all tests good!

@msteiger msteiger merged commit fa003d3 into MovingBlocks:develop Jun 22, 2016
@msteiger
Copy link
Member

Thanks!

@Cervator Cervator added this to the Alpha 2 milestone Jun 22, 2016
@emanuele3d
Copy link
Contributor

Yay!!!

@tdgunes tdgunes changed the title [RFR] Backdrop and Skybands Nodes for DAG Backdrop and Skybands Nodes for DAG Jun 23, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Topic: Architecture Requests, Issues and Changes related to software architecture, programming patterns, etc. Topic: Rendering Requests, Issues and Changes related to lighting, meshes, camera, etc.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants