Asset, Item and Proxy confusion

I’m following the tutorial “HOWTO: Create a custom asset type” as well as digging through the Github repository but don’t quit understand the correlation between Asset, Item, and Proxy.

So far I think I get the Asset refers to the actual serialized data in the project . But ContentItem and ItemProxy are confusing me. I think ContentItem is responsible for Editor and GUI while ItemProxy is responsible for containing import settings?

A little help understanding this and how they contain to the import process would be greatly appreciated :slight_smile:

Edit:
To clarify what I am doing. I am working on a custom importer that imports a file and procedurally generates content from the data. Currently I have made a Plugin that injects a custom file entry into the import process, when the import happens a custom data asset is created containing all the relevant data and then a procedural Model is created and saved. I got the basic of it working but there are some issues and I would like to further understand importing and Asset management to improve on it.

Asset - a game object that holds some data (eg. texture. model, Visual Script, Json file)

ContentItem - an instance of the Editor-side object created per-file to represent it inside Editor (eg. shown in Content browser). Can customize visuals of the item and some user interactions.

ContentProxy - factory object for a specific type (or group of types) of assets. Used to create ContentItem for files of that type and defines some logic for them in Editor (eg. how to open those files, customizes Context Menus for them, allows to reimport/create assets).

1 Like