STORM-IRIT / Radium-Engine

Research 3D Engine for rendering, animation and processing
https://storm-irit.github.io/Radium-Engine/
Apache License 2.0
100 stars 50 forks source link

Refactor textures #1056

Closed dlyr closed 11 months ago

dlyr commented 1 year ago

Update: some changes have been moved to specific PR, see #1072, #1073, #1074

TODOS

description

codecov[bot] commented 1 year ago

Codecov Report

Merging #1056 (257a2bb) into release-candidate (143e1b0) will increase coverage by 1.03%. Report is 1 commits behind head on release-candidate. The diff coverage is 72.05%.

:exclamation: Current head 257a2bb differs from pull request most recent head 1434a1a. Consider uploading reports for the commit 1434a1a to get more accurate results

@@                  Coverage Diff                  @@
##           release-candidate    #1056      +/-   ##
=====================================================
+ Coverage              45.71%   46.75%   +1.03%     
=====================================================
  Files                    312      316       +4     
  Lines                  23106    23255     +149     
=====================================================
+ Hits                   10563    10872     +309     
+ Misses                 12543    12383     -160     
Files Coverage Δ
src/Engine/Data/EnvironmentTexture.hpp 100.00% <ø> (ø)
src/Engine/Data/LambertianMaterial.cpp 79.31% <100.00%> (-0.69%) :arrow_down:
src/Engine/Data/LambertianMaterial.hpp 100.00% <100.00%> (ø)
src/Engine/Data/Material.cpp 100.00% <ø> (ø)
src/Engine/Data/PlainMaterial.cpp 100.00% <100.00%> (ø)
src/Engine/Data/PlainMaterial.hpp 100.00% <100.00%> (ø)
src/Engine/Data/RawShaderMaterial.hpp 0.00% <ø> (ø)
src/Engine/Data/RenderParameters.hpp 86.15% <ø> (ø)
src/Engine/Data/ShaderProgram.hpp 100.00% <ø> (ø)
src/Engine/Data/SimpleMaterial.cpp 100.00% <100.00%> (+11.11%) :arrow_up:
... and 28 more

... and 8 files with indirect coverage changes

dlyr commented 12 months ago

I don't get why there is some freeze on texture unittest, I could reproduce it on my computer, randomly happens. Turn into draft until not solved.

dlyr commented 12 months ago

I have fixed the task queue problem (we already had some times ago on some tests #1043). To this end I have take inspiratoin from https://github.com/Liam0205/toy-threadpool/ With one mutex only, read and write lock. Indeed sometimes threads start to work after dtor call, and some write/read inconsistency. The fix might be overkill since I have done a lot of tests to find what happened, a second analysis might simplify the code

dlyr commented 11 months ago

To ease conversation, rebase and force push will be done once accepted.

dlyr commented 11 months ago

Since changes done after first acceptance are now accepted in #1070 and #1071, I'll rebase/force push this one (and merge fix commits)

dlyr commented 11 months ago

To ease rebase (since there were a lot of conflicts due to doxygen commands changes) I have merged bunch of commits, keeping all commits comments.