New proposal for Engine::Displayable
- 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::Displayableand inheriting classes by usingCore::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
MultiIndexGeometryto allow dynamic typing of the rendered objects:Engine::GeometryDisplayablewill store a collection of geometry layers. Expected API (right):
-
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::Displayableand inhering classes. -
Other information:
Codecov Report
Merging #802 (3598b89) into release-candidate (d77ca58) will increase coverage by
0.35%. The diff coverage is48.11%.
:exclamation: Current head 3598b89 differs from pull request most recent head 076ec5e. Consider uploading reports for the commit 076ec5e to get more accurate results
@@ Coverage Diff @@
## release-candidate #802 +/- ##
=====================================================
+ Coverage 45.65% 46.01% +0.35%
=====================================================
Files 312 311 -1
Lines 23060 23101 +41
=====================================================
+ Hits 10529 10630 +101
+ Misses 12531 12471 -60
| Impacted Files | Coverage Δ | |
|---|---|---|
| src/Core/Animation/LinearBlendSkinning.cpp | 0.00% <ø> (ø) |
|
| src/Core/Geometry/AbstractGeometry.hpp | 66.66% <ø> (ø) |
|
| src/Core/Geometry/MeshPrimitives.cpp | 33.78% <0.00%> (-1.92%) |
:arrow_down: |
| src/Core/Geometry/MeshPrimitives.hpp | 0.00% <ø> (ø) |
|
| src/Core/Geometry/TriangleMesh.hpp | 80.16% <ø> (ø) |
|
| src/Engine/Rendering/ForwardRenderer.cpp | 52.28% <0.00%> (+0.01%) |
:arrow_up: |
| src/Engine/Scene/SkinningComponent.cpp | 0.00% <0.00%> (ø) |
|
| src/Engine/Scene/SkinningComponent.hpp | 0.00% <ø> (ø) |
|
| src/Engine/Data/Mesh.hpp | 55.10% <20.00%> (-14.61%) |
:arrow_down: |
| src/Core/Geometry/IndexedGeometry.hpp | 65.25% <39.28%> (-5.86%) |
:arrow_down: |
| ... and 5 more |
note for futur skinning https://cims.nyu.edu/gcl/papers/EG2014-Lighting.pdf