aboutsummarylogtreecommitdiffstats
path: root/openpgl6.patch
diff options
context:
space:
mode:
Diffstat (limited to 'openpgl6.patch')
-rw-r--r--openpgl6.patch72
1 files changed, 72 insertions, 0 deletions
diff --git a/openpgl6.patch b/openpgl6.patch
new file mode 100644
index 000000000000..1b57810a2032
--- /dev/null
+++ b/openpgl6.patch
@@ -0,0 +1,72 @@
+From eaccbab8f9ee66dc9c31ff29957fbb07fc096753 Mon Sep 17 00:00:00 2001
+From: bartus <szczepaniak.bartek+github@gmail.com>
+Date: Thu, 15 Feb 2024 14:27:55 +0100
+Subject: [PATCH] OpenPGL:6 patch
+
+Replace PGLFieldArguments with FieldConfig class
+---
+ intern/cycles/integrator/path_trace.cpp | 26 ++++++++++++-------------
+ 1 file changed, 13 insertions(+), 13 deletions(-)
+
+diff --git a/intern/cycles/integrator/path_trace.cpp b/intern/cycles/integrator/path_trace.cpp
+index cd5dca34d2a..903b34af193 100644
+--- a/intern/cycles/integrator/path_trace.cpp
++++ b/intern/cycles/integrator/path_trace.cpp
+@@ -1286,41 +1286,41 @@ void PathTrace::set_guiding_params(const GuidingParams &guiding_params, const bo
+ guiding_params_ = guiding_params;
+
+ if (guiding_params_.use) {
+- PGLFieldArguments field_args;
++ openpgl::cpp::FieldConfig field_cfg;
+ switch (guiding_params_.type) {
+ default:
+ /* Parallax-aware von Mises-Fisher mixture models. */
+ case GUIDING_TYPE_PARALLAX_AWARE_VMM: {
+- pglFieldArgumentsSetDefaults(
+- field_args,
++ field_cfg.Init(
+ PGL_SPATIAL_STRUCTURE_TYPE::PGL_SPATIAL_STRUCTURE_KDTREE,
+- PGL_DIRECTIONAL_DISTRIBUTION_TYPE::PGL_DIRECTIONAL_DISTRIBUTION_PARALLAX_AWARE_VMM);
++ PGL_DIRECTIONAL_DISTRIBUTION_TYPE::PGL_DIRECTIONAL_DISTRIBUTION_PARALLAX_AWARE_VMM,
++ guiding_params.deterministic,32000);
+ break;
+ }
+ /* Directional quad-trees. */
+ case GUIDING_TYPE_DIRECTIONAL_QUAD_TREE: {
+- pglFieldArgumentsSetDefaults(
+- field_args,
++ field_cfg.Init(
+ PGL_SPATIAL_STRUCTURE_TYPE::PGL_SPATIAL_STRUCTURE_KDTREE,
+- PGL_DIRECTIONAL_DISTRIBUTION_TYPE::PGL_DIRECTIONAL_DISTRIBUTION_QUADTREE);
++ PGL_DIRECTIONAL_DISTRIBUTION_TYPE::PGL_DIRECTIONAL_DISTRIBUTION_QUADTREE,
++ guiding_params.deterministic,32000);
++ break;
+ break;
+ }
+ /* von Mises-Fisher mixture models. */
+ case GUIDING_TYPE_VMM: {
+- pglFieldArgumentsSetDefaults(
+- field_args,
++ field_cfg.Init(
+ PGL_SPATIAL_STRUCTURE_TYPE::PGL_SPATIAL_STRUCTURE_KDTREE,
+- PGL_DIRECTIONAL_DISTRIBUTION_TYPE::PGL_DIRECTIONAL_DISTRIBUTION_VMM);
++ PGL_DIRECTIONAL_DISTRIBUTION_TYPE::PGL_DIRECTIONAL_DISTRIBUTION_VMM,
++ guiding_params.deterministic,32000);
+ break;
+ }
+ }
+- field_args.deterministic = guiding_params.deterministic;
+- reinterpret_cast<PGLKDTreeArguments *>(field_args.spatialSturctureArguments)->maxDepth = 16;
++ field_cfg.SetSpatialStructureArgMaxDepth(16);
+ openpgl::cpp::Device *guiding_device = static_cast<openpgl::cpp::Device *>(
+ device_->get_guiding_device());
+ if (guiding_device) {
+ guiding_sample_data_storage_ = make_unique<openpgl::cpp::SampleStorage>();
+- guiding_field_ = make_unique<openpgl::cpp::Field>(guiding_device, field_args);
++ guiding_field_ = make_unique<openpgl::cpp::Field>(guiding_device, field_cfg);
+ }
+ else {
+ guiding_sample_data_storage_ = nullptr;
+--
+2.43.2
+