[Kalandra] [WIP] Swap asset-based rendering to sprite-based #4776
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description of the problem being solved:
(this PR builds on @Nostrademous 's #4768 and also incorporates lots of feedback and research from @zao)
This PR rewrites PoB's asset rendering to do everything in terms of 3.19 TreeData-style
sprites
instead of pre-3.19assets
. It implements new logic in PassiveTree construction to migrate pre-3.19 trees'assets
to a 3.19-equivalentspriteMap
layout, and then updates all the other points that referenceassets
to instead referencespriteMap
.This required updating a few spots which previously assumed they were rendering entire images to instead propagate texture coordinates within a sprite sheet. Notable cases include:
DrawAsset
(now renamedDrawSprite
)'s logic for rendering half-imagesBuildConnector
andrenderConnector
logic for rendering straight connector linesSteps taken to verify a working solution:
Link to a build that showcases this PR:
TODO
Before screenshot:
TODO
After screenshot:
TODO