Skip to content

[Android] Suspendable render & RenderableAsset subclass consolidation #791

@sugarmanz

Description

@sugarmanz

The initial RenderableAsset implementation served as the primary way to implement an Android asset, followed by DecodableAsset and SuspendableAsset extensions to provide automatic data decoding and suspendable rendering lifecycle respectively. Both RenderableAsset and DecodableAsset have been deprecated in favor of SuspendableAsset, as the intended way to write an asset, and should be consolidated into a single implementation on the next major.

There are some existing challenges with SuspendableAsset, where the primary render API is blocking, requiring some additional plugins and caveats to consume SuspendableAsset effectively. As a part of consolidating into a single RenderableAsset implementation, the entire asset lifecycle becomes supsendable. To take advantage of the benefits of suspension, render should also be made suspend, allowing full suspension, parallel asset rendering/inflation, and efficient cancellation of stale renders.

Metadata

Metadata

Assignees

No one assigned

    Labels

    AndroidAndroid Player Related WorkenhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions