// Adds to commandLists the command lists containing the rendering commands for the renderables given in renderablesDBVH
        internal void Render(Queue <CommandList> commandLists, bool updateEnvironmentMap = false)
        {
            ProfilerShort.Begin("MyGeometryRenderer.Render");
            MyGpuProfiler.IC_BeginBlock("MyGeometryRenderer.Render");

            ProfilerShort.Begin("Culling");
            PrepareFrame();

            ProfilerShort.Begin("Prepare culling");
            var shadowmapQueries = m_shadowHandler.PrepareQueries();

            MyVisibilityCuller.PrepareCullQuery(m_cullQuery, shadowmapQueries, updateEnvironmentMap);

            ProfilerShort.BeginNextBlock("Perform culling");
            m_visibilityCuller.PerformCulling(m_cullQuery, m_renderablesDBVH);
            ProfilerShort.End();
            ProfilerShort.End();

            ProfilerShort.BeginNextBlock("Record command lists");
            m_renderingDispatcher.RecordCommandLists(m_cullQuery, commandLists);

            ProfilerShort.BeginNextBlock("Send output messages");
            SendOutputMessages(m_cullQuery);

            ProfilerShort.BeginNextBlock("Frame cleanup");
            EndFrame();

            MyGpuProfiler.IC_EndBlock();
            ProfilerShort.End();    // End function block
        }
Esempio n. 2
0
        // Adds to commandLists the command lists containing the rendering commands for the renderables given in renderablesDBVH
        internal void Render(Queue <CommandList> commandLists)
        {
            ProfilerShort.Begin("Perform culling");
            m_visibilityCuller.PerformCulling(m_cullQuery, m_renderablesDBVH);

            ProfilerShort.BeginNextBlock("Record command lists");
            m_renderingDispatcher.RecordCommandLists(m_cullQuery, commandLists);

            ProfilerShort.BeginNextBlock("Send output messages");
            SendOutputMessages(m_cullQuery);

            ProfilerShort.BeginNextBlock("Frame cleanup");
            EndFrame();
            ProfilerShort.End();
        }