127 lines · 4.0 KB · Text
RawDownload
////  stats.qml//  examples/utilities/render////  Created by Zach Pomerantz on 2/8/2016//  Copyright 2016 High Fidelity, Inc.////  Distributed under the Apache License, Version 2.0.//  See the accompanying file LICENSE or https://www.apache.org/licenses/LICENSE-2.0.html//import QtQuick 2.5import QtQuick.Controls 1.4import "../lib/plotperf" Item {    id: statsUI    anchors.fill:parent     Column {        id: stats        spacing: 8        anchors.fill:parent            function evalEvenHeight() {            // Why do we have to do that manually ? cannot seem to find a qml / anchor / layout mode that does that ?            return (height - spacing * (children.length - 1)) / children.length        }               PlotPerf {           title: "GPU Timing"           height: parent.evalEvenHeight()           object: parent.drawOpaqueConfig           valueUnit: "ms"           valueScale: 1           valueNumDigits: "4"           plots: [            {                   object: Render.getConfig("RenderMainView.OpaqueRangeTimer"),                   prop: "gpuRunTime",                   label: "Opaque",                   color: "#FFFFFF"               },                {                   object: Render.getConfig("RenderMainView.LinearDepth"),                   prop: "gpuRunTime",                   label: "LinearDepth",                   color: "#00FF00"               },{                   object: Render.getConfig("RenderMainView.SurfaceGeometry"),                   prop: "gpuRunTime",                   label: "SurfaceGeometry",                   color: "#00FFFF"               },               {                   object: Render.getConfig("RenderMainView.RenderDeferred"),                   prop: "gpuRunTime",                   label: "DeferredLighting",                   color: "#FF00FF"               }               ,               {                   object: Render.getConfig("RenderMainView.ToneAndPostRangeTimer"),                   prop: "gpuRunTime",                   label: "tone and post",                   color: "#FF0000"               }               ,               {                   object: Render.getConfig("RenderMainView.OutlineRangeTimer"),                   prop: "gpuRunTime",                   label: "outline",                   color: "#FFFF00"               }           ]        }        PlotPerf {           title: "Batch Timing"           height: parent.evalEvenHeight()           object: parent.drawOpaqueConfig           valueUnit: "ms"           valueScale: 1           valueNumDigits: "3"           plots: [            {                   object: Render.getConfig("RenderMainView.OpaqueRangeTimer"),                   prop: "batchRunTime",                   label: "Opaque",                   color: "#FFFFFF"               },                {                   object: Render.getConfig("RenderMainView.LinearDepth"),                   prop: "batchRunTime",                   label: "LinearDepth",                   color: "#00FF00"               },{                   object: Render.getConfig("RenderMainView.SurfaceGeometry"),                   prop: "batchRunTime",                   label: "SurfaceGeometry",                   color: "#00FFFF"               },               {                   object: Render.getConfig("RenderMainView.RenderDeferred"),                   prop: "batchRunTime",                   label: "DeferredLighting",                   color: "#FF00FF"               }               ,               {                   object: Render.getConfig("RenderMainView.ToneAndPostRangeTimer"),                   prop: "batchRunTime",                   label: "tone and post",                   color: "#FF0000"               }               ,               {                   object: Render.getConfig("RenderMainView.OutlineRangeTimer"),                   prop: "batchRunTime",                   label: "outline",                   color: "#FFFF00"               }           ]        }    } }