should be able to create "filters" to post process assets in memory only

Issue #4 resolved
Charles Floyd created an issue

e.g., dither filter, texture scaler, ...

this more or less allows for virtual assets. In most cases HD is what we develop, and SD, LD are just scaled down assets. The virtual texture scaler could do this without needing additional assets in the project for compute time at build.

e.g., Build HD (no changes - 1080p) Build SD (virtual texture scaler 50%) Build LD (virtual texture scaler 40%)

the virtual assets is key for large projects with lots of content. We trade build time (compute on build machines) for developer iteration time (HD and/or asset bundles)

Comments (10)

  1. Sam Narain

    @chbfiv the maintainer is currently actively looking into making ABGT more efficient when working with large amount of assets (100K+). I think that with the steps necessary to achieve such improvements comes the need for virtual assets or configurable settings per production environment to achieve this.

  2. Hiroki Omae

    By nature of AssetBundle the system requires data from filesystem to build bundle. Being said that, I think it is capable to procedurally create variation of sub-assets based on source (such as creating SD/LD from HD) and write it in cache folder, then use it as input to accomplish this.

  3. Hiroki Omae
    • changed milestone to 1.3

    Virtual Asset needs some deeper consideration before implementation. I am pushing this back to 1.3.

  4. Hiroki Omae

    Update on this ticket.

    I have added AssetGenerator node to dev branch, which you can generate derivative assets from incoming sources.

    Generator.png

    Currently the built-in Generator is only TextureScaler, it will at least do the job to create SD/LD textures on demand, give them straight to variant.

    I hope you can try this feature and see if it works for you.

  5. Hiroki Omae

    Note: current TextrueScaler implementation is very trivial - you might want to implement on your own for production use.

  6. Log in to comment