[Bf-blender-cvs] [8fe257ec8c0] cycles_procedural_api: add procedurals to update stats

Kévin Dietrich noreply at git.blender.org
Tue Oct 6 07:18:59 CEST 2020


Commit: 8fe257ec8c0280bdff7f6a0ef0a451880bf6ffd1
Author: Kévin Dietrich
Date:   Sun Oct 4 05:14:59 2020 +0200
Branches: cycles_procedural_api
https://developer.blender.org/rB8fe257ec8c0280bdff7f6a0ef0a451880bf6ffd1

add procedurals to update stats

===================================================================

M	intern/cycles/render/procedural.cpp
M	intern/cycles/render/stats.cpp
M	intern/cycles/render/stats.h

===================================================================

diff --git a/intern/cycles/render/procedural.cpp b/intern/cycles/render/procedural.cpp
index 0eed2c915c9..54fa1e44330 100644
--- a/intern/cycles/render/procedural.cpp
+++ b/intern/cycles/render/procedural.cpp
@@ -17,6 +17,7 @@
 #include "procedural.h"
 
 #include "render/scene.h"
+#include "render/stats.h"
 
 #include "util/util_foreach.h"
 #include "util/util_progress.h"
@@ -59,6 +60,12 @@ void ProceduralManager::update(Scene *scene, Progress &progress)
 
   progress.set_status("Updating Procedurals");
 
+  scoped_callback_timer timer([scene](double time) {
+    if (scene->update_stats) {
+      scene->update_stats->procedurals.times.add_entry({"update", time});
+    }
+  });
+
   foreach (Procedural *procedural, scene->procedurals) {
     if (progress.get_cancel()) {
       return;
diff --git a/intern/cycles/render/stats.cpp b/intern/cycles/render/stats.cpp
index e5600bad904..d00c4d7befb 100644
--- a/intern/cycles/render/stats.cpp
+++ b/intern/cycles/render/stats.cpp
@@ -375,6 +375,7 @@ string SceneUpdateStats::full_report()
   result += "Particles:\n" + particles.full_report(1);
   result += "SVM:\n" + svm.full_report(1);
   result += "Tables:\n" + tables.full_report(1);
+  result += "Procedurals:\n" + procedurals.full_report(1);
   return result;
 }
 
@@ -394,6 +395,7 @@ void SceneUpdateStats::clear()
   scene.times.entries.clear();
   svm.times.entries.clear();
   tables.times.entries.clear();
+  procedurals.times.entries.clear();
 }
 
 CCL_NAMESPACE_END
diff --git a/intern/cycles/render/stats.h b/intern/cycles/render/stats.h
index 5dca6dd0b01..a288ec7cf36 100644
--- a/intern/cycles/render/stats.h
+++ b/intern/cycles/render/stats.h
@@ -213,6 +213,7 @@ class SceneUpdateStats {
   UpdateTimeStats scene;
   UpdateTimeStats svm;
   UpdateTimeStats tables;
+  UpdateTimeStats procedurals;
 
   string full_report();



More information about the Bf-blender-cvs mailing list