What actually DRAW EVENT means?


And how to find its C++ Implementation?

You can think of a draw event as a part of the rendering pipeline.
In the screenshot above, each item in the list could be seen as a draw event.
For example the BasePass is when the GBuffer is filled, BuildHZB is done as part of the visibility prediction, ReflectionEnviromentGather will contribute to the reflections, …
Note that each draw event is actually a (sometimes very large) collection of smaller events.

To find the C++ event, search for the use of the SCOPED_DRAW_EVENT macro.
For example in DeferredShadingRenderer.cpp, inside the RenderBasePassStaticDataDefault function, you will find the StaticOpaqueNoLightmap and StaticOpaqueLightmapped events.

It says to search for draw event name so is it like this that i should be searching for BasePass instead of SCOPED_DRAW_EVENT?
I mean why should I search for SCOPED_DRAW_EVENT?
I’m newbie to graphics programming. :slight_smile:

I have a one more question - What is coordinate space terminology - and where it is used?

I am not able to find DeferredShadingRendrer class here -

Hi Inder, maybe if you try to explain what you need to achieve we can point in the right direction?
Also you should read this:

Thanks for the reply.
@RCaloca I tried to read the Graphics Programming guide but i am unable to understand whats going on thats why i asked the above questions.
I would like to know how to modify graphics.By graphics what I mean is I should be able to change how rendering works ,modify the working of lighting,modify working of shaders or create custom shaders - basically I want that I should have Knowledge to do modify the Unreal engine to this extent like the developers of Bioshock Infinite - ( no matter how hard it is.

I tried reading Graphics programming,Looked through API, but had no luck!!
I hope you can understand what I want to achieve.

@RCaloca One more question Here
It says -

Can i use nvidia gameworks to create custom rendering solution,shaders,particles,lighting etc.

Inder, adding a feature to the renderer is not a straightforward task, and changing how the renderer works is definitely not for the faint of heart. I’d start by reading the presentations on, maybe with NickP’s for guidance. Good luck!