[Bf-blender-cvs] [ee153db7d78] temp-T88822-gpu-thread-safe-index-builder: Fix compile error on windows.
Jeroen Bakker
noreply at git.blender.org
Fri Jun 4 16:01:00 CEST 2021
Commit: ee153db7d78d4f4bda09183302eed18bf895aea1
Author: Jeroen Bakker
Date: Fri Jun 4 15:48:34 2021 +0200
Branches: temp-T88822-gpu-thread-safe-index-builder
https://developer.blender.org/rBee153db7d78d4f4bda09183302eed18bf895aea1
Fix compile error on windows.
===================================================================
M source/blender/draw/intern/draw_cache_extract_mesh_private.h
M source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_points.cc
===================================================================
diff --git a/source/blender/draw/intern/draw_cache_extract_mesh_private.h b/source/blender/draw/intern/draw_cache_extract_mesh_private.h
index 489c8329890..10786d57182 100644
--- a/source/blender/draw/intern/draw_cache_extract_mesh_private.h
+++ b/source/blender/draw/intern/draw_cache_extract_mesh_private.h
@@ -430,14 +430,14 @@ typedef struct MeshExtract {
ExtractFinishFn *finish;
/** Used to request common data. */
- const eMRDataType data_type;
+ eMRDataType data_type;
/** Used to know if the element callbacks are thread-safe and can be parallelized. */
- const bool use_threading;
+ bool use_threading;
/**
* Offset in bytes of the buffer inside a MeshBufferCache instance. Points to a vertex or index
* buffer.
*/
- const size_t mesh_buffer_offset;
+ size_t mesh_buffer_offset;
} MeshExtract;
/** \} */
diff --git a/source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_points.cc b/source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_points.cc
index fe1a11373e1..7bee60e5455 100644
--- a/source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_points.cc
+++ b/source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_points.cc
@@ -158,24 +158,29 @@ static void extract_points_finish(const MeshRenderData *UNUSED(mr),
delete userdata;
}
+constexpr MeshExtract create_extractor_points()
+{
+ MeshExtract extractor = {0};
+ extractor.init = extract_points_init;
+ extractor.task_init = extract_points_task_init;
+ extractor.iter_poly_bm = extract_points_iter_poly_bm;
+ extractor.iter_poly_mesh = extract_points_iter_poly_mesh;
+ extractor.iter_ledge_bm = extract_points_iter_ledge_bm;
+ extractor.iter_ledge_mesh = extract_points_iter_ledge_mesh;
+ extractor.iter_lvert_bm = extract_points_iter_lvert_bm;
+ extractor.iter_lvert_mesh = extract_points_iter_lvert_mesh;
+ extractor.task_finish = extract_points_task_finish;
+ extractor.finish = extract_points_finish;
+ extractor.data_type = MR_DATA_DEFAULT;
+ extractor.use_threading = true;
+ extractor.mesh_buffer_offset = offsetof(MeshBufferCache, ibo.points);
+ return extractor;
+}
+
} // namespace blender::draw
extern "C" {
-const MeshExtract extract_points = {
- .init = blender::draw::extract_points_init,
- .task_init = blender::draw::extract_points_task_init,
- .iter_poly_bm = blender::draw::extract_points_iter_poly_bm,
- .iter_poly_mesh = blender::draw::extract_points_iter_poly_mesh,
- .iter_ledge_bm = blender::draw::extract_points_iter_ledge_bm,
- .iter_ledge_mesh = blender::draw::extract_points_iter_ledge_mesh,
- .iter_lvert_bm = blender::draw::extract_points_iter_lvert_bm,
- .iter_lvert_mesh = blender::draw::extract_points_iter_lvert_mesh,
- .task_finish = blender::draw::extract_points_task_finish,
- .finish = blender::draw::extract_points_finish,
- .data_type = MR_DATA_DEFAULT,
- .use_threading = true,
- .mesh_buffer_offset = offsetof(MeshBufferCache, ibo.points),
-};
+const MeshExtract extract_points = blender::draw::create_extractor_points();
}
/** \} */
\ No newline at end of file
More information about the Bf-blender-cvs
mailing list