commit 4560ea34e97bcc215a7cbb1ec6d45d7034e92560 parent f08ab5f8edfa96057c593683fe225930a9ec1b41 Author: Christophe Coustet <christophe.coustet@meso-star.com> Date: Thu, 7 Nov 2019 18:01:10 +0100 Merge branch 'release_0.4.1' into develop Diffstat:
| M | cmake/CMakeLists.txt | | | 2 | +- |
| M | src/senc_scene_analyze.c | | | 18 | +++++++++--------- |
2 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/cmake/CMakeLists.txt b/cmake/CMakeLists.txt @@ -48,7 +48,7 @@ endif() ################################################################################ set(VERSION_MAJOR 0) set(VERSION_MINOR 4) -set(VERSION_PATCH 0) +set(VERSION_PATCH 1) set(VERSION ${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}) set(SENC_FILES_SRC diff --git a/src/senc_scene_analyze.c b/src/senc_scene_analyze.c @@ -117,20 +117,15 @@ self_hit_filter const struct darray_triangle_comp* triangles_comp = filter_data; const component_id_t* origin_component = ray_data; const struct triangle_comp* hit_trg_comp; - enum senc_side hit_side; - component_id_t hit_component; (void)ray_org; (void)ray_dir; ASSERT(hit && triangles_comp && origin_component); ASSERT(hit->prim.prim_id < darray_triangle_comp_size_get(triangles_comp)); hit_trg_comp = darray_triangle_comp_cdata_get(triangles_comp) + hit->prim.prim_id; - hit_side = (hit->normal[2] > 0) ? SENC_FRONT : SENC_BACK; - hit_component = hit_trg_comp->component[hit_side]; + return (hit_trg_comp->component[SENC_FRONT] == *origin_component + || hit_trg_comp->component[SENC_BACK] == *origin_component); - /* Not self hit or distance should be small */ - ASSERT(hit_component != *origin_component || hit->distance < 1e-6); - return (hit_component == *origin_component); } static void @@ -671,10 +666,15 @@ group_connex_components struct cc_descriptor* const cc = descriptors[c]; const struct cc_descriptor* other_desc = cc; struct enclosure_data* enc; +#ifndef NDEBUG + component_id_t cc_cpt = 0; +#endif while(other_desc->enclosure_id == CC_GROUP_ID_NONE) { - other_desc = *(darray_ptr_component_descriptor_cdata_get(connex_components) - + other_desc->cc_group_root); + ASSERT(other_desc->cc_group_root < cc_count); + other_desc = descriptors[other_desc->cc_group_root]; + /* Cannot have more components in cc than cc_count! */ + ASSERT(++cc_cpt <= cc_count); } ASSERT(other_desc->cc_group_root != CC_GROUP_ROOT_NONE); ASSERT(other_desc->enclosure_id != CC_GROUP_ID_NONE);