Skip to content

New proposal for Engine::Displayable - #802

Open
nmellado wants to merge 144 commits into
STORM-IRIT:release-candidatefrom
nmellado:clean_displayable
Open

nmellado wants to merge 144 commits into
STORM-IRIT:release-candidatefrom
nmellado:clean_displayable

Conversation

@nmellado

@nmellado nmellado commented Jul 19, 2021 •

Copy link
Copy Markdown
Contributor
  • Please check if the PR fulfills these requirements
  • The commit message follows our guidelines
  • Tests for the changes have been added (for bug fixes / features)
  • Docs have been added / updated (for bug fixes / features)

Be aware that the PR request cannot be accepted if it doesn't pass the Continuous Integration tests.

  • What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)
    Simplify API for Engine::Displayable and inheriting classes by using Core::MultiIndexGeometry.

  • What is the current behavior? (You can also link to an open issue here)
    Mesh types are statically typed on Core Mesh types.

  • What is the new behavior (if this is a feature change)?
    Take benefit of MultiIndexGeometry to allow dynamic typing of the rendered objects: Engine::GeometryDisplayable will store a collection of geometry layers.
    Expected API (right):
    Image from iOS

  • Does this PR introduce a breaking change? (What changes might users need to make in their application due to this PR?)
    Will impact client code explicitly working with Engine::Displayable and inhering classes.

  • Other information:

@nmellado nmellado added enhancement Type of issue/PR: enhancement Engine Related to Ra::Engine labels Jul 19, 2021
@nmellado nmellado added this to the Radium v2 - Should have milestone Jul 19, 2021
@codecov

codecov Bot commented Jul 19, 2021 •

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 38.65915% with 979 lines in your changes missing coverage. Please review.
✅ Project coverage is 44.39%. Comparing base (d2e4881) to head (90ee00d).
⚠️ Report is 1 commits behind head on release-candidate.

Files with missing lines Patch % Lines
src/Core/Geometry/MeshPrimitives.cpp 37.08% 190 Missing ⚠️
src/Engine/Data/DrawPrimitives.cpp 0.00% 173 Missing ⚠️
examples/DrawPrimitives/AllPrimitivesComponent.cpp 0.00% 151 Missing ⚠️
src/Engine/Data/Mesh.cpp 33.48% 143 Missing ⚠️
src/Core/Geometry/IndexedGeometry.hpp 54.92% 64 Missing ⚠️
src/Engine/Rendering/ForwardRenderer.cpp 0.00% 50 Missing ⚠️
src/Engine/Data/Mesh.hpp 14.28% 36 Missing ⚠️
src/Engine/Scene/GeometryComponent.hpp 0.00% 18 Missing ⚠️
src/Core/Geometry/RayCast.cpp 0.00% 16 Missing ⚠️
src/Engine/Scene/GeometryComponent.cpp 0.00% 15 Missing ⚠️
... and 29 more
Additional details and impacted files
@@                  Coverage Diff                  @@
##           release-candidate     #802      +/-   ##
=====================================================
- Coverage              44.52%   44.39%   -0.13%     
=====================================================
  Files                    372      371       -1     
  Lines                  28152    28466     +314     
=====================================================
+ Hits                   12535    12638     +103     
- Misses                 15617    15828     +211     
Flag Coverage Δ
integration 7.39% <6.14%> (+<0.01%) ⬆️
unittests 42.52% <36.90%> (-0.21%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@nmellado
nmellado force-pushed the clean_displayable branch 2 times, most recently from 5a16cbe to fa260e4 Compare July 19, 2021 13:55
@nmellado
nmellado force-pushed the clean_displayable branch from 3aa14e1 to 629f408 Compare July 28, 2021 11:52
@dlyr
dlyr force-pushed the clean_displayable branch from 629f408 to 9fa1421 Compare April 1, 2022 06:43
@dlyr
dlyr force-pushed the clean_displayable branch 2 times, most recently from 757a5e9 to 1e88873 Compare July 20, 2022 09:21
@dlyr
dlyr force-pushed the clean_displayable branch 2 times, most recently from d2bf2c5 to 2d148ca Compare September 18, 2022 17:19
@dlyr dlyr added Core Related to Ra::Core WIP Work in Progress and removed Engine Related to Ra::Engine labels Sep 18, 2022
@dlyr
dlyr marked this pull request as ready for review September 18, 2022 18:56
@dlyr
dlyr force-pushed the clean_displayable branch from 12af541 to 2fff241 Compare September 19, 2022 07:21
@nmellado
nmellado requested a review from MathiasPaulin October 5, 2022 12:41
Comment thread src/Core/Geometry/MeshPrimitives.cpp Outdated
Comment thread src/Engine/Data/Mesh.hpp
Comment thread src/Engine/Scene/GeometryComponent.hpp Outdated
@dlyr

dlyr commented Dec 14, 2022

Copy link
Copy Markdown
Contributor

note for futur skinning https://cims.nyu.edu/gcl/papers/EG2014-Lighting.pdf

@dlyr
dlyr force-pushed the clean_displayable branch from 8947bd5 to 8f5a25f Compare January 10, 2023 15:37
@dlyr
dlyr force-pushed the clean_displayable branch 3 times, most recently from f5df674 to e9f3e16 Compare April 7, 2023 08:04
@dlyr
dlyr force-pushed the clean_displayable branch from 076ec5e to e7e2bb2 Compare May 7, 2025 21:23
@dlyr
dlyr force-pushed the clean_displayable branch from e7e2bb2 to c3c817f Compare May 12, 2026 07:30
@dlyr
dlyr force-pushed the clean_displayable branch from d409bb7 to 15e2487 Compare June 11, 2026 07:08
dlyr and others added 2 commits June 26, 2026 09:30
[core] Expose LayerKeyHash struct

Allow to reuse layers hash function outside of MultiIndexedGeometry
[engine] Remove unused class IndexedAttribArrayDisplayable

[engine] Prepare classes attributes (do not compile)

Code does not compile as only the attributes have been defined, but the
methods have not been updated.

[core] Mark GeometryIndexLayerBase::size() as const

[engine] define all virtual function for GeometryDisplayable (will be deleted).

When transition will be complete, these accessor might not be necessary.

[engine] GeometryDisplayable updateGL (not tested).

[engine] GeometryDisplayable works, for HelloRadium.

triangulate
dlyr added 29 commits June 26, 2026 09:31
Since not used and error prone, if needed add back as explicit.
Also remove redundent typename keyword.
@dlyr
dlyr force-pushed the clean_displayable branch from 15e2487 to 90ee00d Compare June 29, 2026 08:32

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Core Related to Ra::Core enhancement Type of issue/PR: enhancement WIP Work in Progress

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants