← All namespaces

asset

Project & assets Core

Browse, import, load, rename, delete, and dump any content asset. The central content-browser surface.

What it’s for

asset is the content-browser layer of PinWright. It operates on the /Game/... packages in your project: discovering what exists, importing files from disk, reading an asset's metadata and dependencies, renaming or moving assets safely, and deleting them. If a task starts with "find the asset that..." or "add this file to the project", this is where it begins.

It is also the way your assistant sees an asset's real contents. asset.dump and asset.dump_folder write the full state of an asset or a whole folder to readable text on disk, so the assistant can inspect and compare assets instead of guessing. See the Asset dumps guide for how that mirror works.

Rename and move leave a redirector at the old path so existing references keep resolving; run asset.fixup_redirectors afterward to clean those up. Deletes close any open editors and force a garbage collection first, then report per-entry success.

Treat asset as the catch-all for content-browser-level operations: create, list, import, rename, delete, dump, and dependency reads. Type-specific authoring lives in the domain namespaces instead — reach for material.*, niagara.*, or chooser.* for anything beyond creating, listing, or deleting an asset of that kind.

Examples

Find every widget under a folder

The assistant lists assets with a class filter to narrow the content tree down to what you asked about.

You: List all the Widget Blueprints under /Game/UI.

  call("asset.list", {path:"/Game/UI",
        filter:{class:"/Script/UMGEditor.WidgetBlueprint"}})
    → {assets:[{name:"WBP_HUD", ...}, {name:"WBP_PauseMenu", ...}], count:12}

Done. Found 12 Widget Blueprints under /Game/UI.

Import a mesh from disk

The assistant picks the matching factory by extension and drops the result into a target folder.

You: Import C:/Art/prop_crate.fbx into /Game/Props.

  call("asset.import", {sourcePath:"C:/Art/prop_crate.fbx",
        destinationPath:"/Game/Props"})
    → {ok:true, imported:["/Game/Props/prop_crate"]}

Done. Imported prop_crate into /Game/Props.

Rename an asset and clean up references

The rename leaves a redirector behind, so the assistant follows it with a fixup pass to re-save referencing assets.

You: Rename /Game/Props/SM_Old to SM_Crate and fix up the references.

  call("asset.rename", {sourcePath:"/Game/Props/SM_Old",
        destinationPath:"SM_Crate"})
    → {ok:true}
  call("asset.fixup_redirectors", {directoryPath:"/Game/Props"})
    → {ok:true, fixed:3, redirectorsRemoved:1}

Done. Renamed to SM_Crate and cleared the old redirector.

← Back to all namespaces