> For the complete documentation index, see [llms.txt](https://reach-cloud.gitbook.io/reach-explorer-documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://reach-cloud.gitbook.io/reach-explorer-documentation/metaverse-cloud-engine-sdk/unity-engine-sdk/components/assets/asset.md).

# Asset

### Asset Documentation

The Asset class is a base class for all asset types within the Metaverse. An asset is a piece of content that can be owned by a user and can be used in the Metaverse.

#### Namespace

MetaverseCloudEngine.Unity.Assets

#### Public Methods

* **void UpdateFromDto(AssetDto dto):** Updates the asset from the given data transfer object (DTO).

#### Public Properties

* **Guid? ID (read only):** The unique identifier of the asset.
* **string IDString (read only):** The ID of the asset as a string.
* **string BlockchainSource:** The blockchain source of the asset. This is the blockchain asset ID that this asset is associated with.
* **BlockchainType BlockchainSourceType:** The blockchain type of the asset.
* **string BlockchainSourceTypeString (read only):** The blockchain type of the asset as a string.
* **TMetaData MetaData:** The asset's metadata. This is the data that is used to describe the asset.
* **Platform SupportedPlatforms:** The platforms that this asset is supported on.

#### Usage

The Asset class is a base class and is not meant to be used directly. Instead, you should use one of its derived classes, such as MetaPrefab or MetaSpace.

#### Additional Notes

* Assets can be uploaded to the Metaverse Cloud Engine using the AssetEditor in the Unity Editor.
* Assets can be associated with a blockchain source, which allows them to be owned and controlled by users on the blockchain.
* Assets can be built for different platforms, such as Windows, Android, and WebGL.
