> For the complete documentation index, see [llms.txt](https://docs.msquared.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.msquared.io/creation/unreal-development/features-and-tutorials/helpers-and-extras/instanced-objects-in-blueprints.md).

# "Instanced Objects" in Blueprints

{% hint style="success" %}
verified: 2025-11-19 version: v39
{% endhint %}

If a UObject property is marked as "instanced", then it will allow you to create the subobjects within the defaults of a class, which is useful for making data driven systems and config assets.

<figure><img src="/files/M3VTjYW1Ye52QxCNMK8R" alt=""><figcaption><p>The <code>Example Setting</code> is an instanced variable, allowing us to provide a <code>BP Example Skin Setting</code>, and assign its properties' values in-line inside the data asset.</p></figcaption></figure>

This is a feature that is not exposed to BP in native Unreal, but we have added some helpers to support this.

First is the `M2_InstancedObject` class. This is a simple UObject, but defaults to instanced, with inlined properties. This means that if you make a class that is a child of this, you can mark it as "instanced"

To mark a `M2_InstancedObject` subclass property, go to the `Details` panel, and expand the `Advanced` section. Check the `Instanced` checkbox, and recompile. You will then be able provide an instanced object in the default value.

<figure><img src="/files/eeOHt8wxp4Bf3EojZUuK" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %}
NOTE: If the `Instanced` property is not visible, it could be that the variable class is not an `M2_InstancedObject` - not all classes can be marked as instanced.
{% endhint %}
