Skip to content

Commit

Permalink
Refactor PLSRenderer into draw objects
Browse files Browse the repository at this point in the history
Despaghettifies PLSRenderer into high level "PLSDraw" objects that have the ability to count their resource requirements ahead of time and write out their draw data later. This refactoring will eventually allow us to remove intermediate flushes and implement sorting for atomic and msaa modes.

We take a ~50% CPU performance/cache loss from moving the path-processing scratch buffers into persistent heap allocations, but we need this persistence in order to count up allocation sizes and remove intermediate flushes. If CPU performance actually becomes a bottleneck in rendering, we can explore options to get this performance back.

Diffs=
d52d14a1f Refactor PLSRenderer into draw objects (#6397)
  • Loading branch information
csmartdalton committed Jan 2, 2024
1 parent 1dffe23 commit cd59415
Show file tree
Hide file tree
Showing 2 changed files with 2 additions and 2 deletions.
2 changes: 1 addition & 1 deletion .rive_head
Original file line number Diff line number Diff line change
@@ -1 +1 @@
8666bde87b8ef973ff99d7a285a4b768bdf76aa9
d52d14a1f3f45cda402246dec6b95814cc05abe3
2 changes: 1 addition & 1 deletion wasm/submodules/rive-cpp

0 comments on commit cd59415

Please sign in to comment.