Download

Some guidence on Asynchronous Asset Loading

Hello everyone am trying to setup AAL / solve a issue am having.
The issue is that unrefrenced content is not beeing loaded at runtime.

From what i have been able to gather so far is that it all comes down to Asynchronous Asset Loading.
Now i have some qustions about this, couple of months back i had a issue with weapon not loaded server side/ standalone client.
Using a String refrence and StaticLoadObject, thank you to Rama for the wiki Dynamic Load Object i was able to solve that then.

Now i have a item list in a singelton class implemented more or less like this (thanks again Rama) Wiki link.

Just so everyone know what am working with here one of the members.



	// Array of General Crafting Recipts Data Tabels index == crafting skill level -1
	UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Data Singelton, Data Tabels")
		TArray<TAssetPtr<UDataTable> > GeneralCraftingRecipts;

Ok so the problems am having is that this data is never available in my standalone build or in PiE.
Except if i double click on the data tabel assets BEFORE i run PiE and it will be loaded at runtime, (never in standalone only in PiE).

So reading this twice now and i stile not sure i understand it, that doc is realy confusing to me.

Also there was a thread on some of this related to modular pawns.
But with no offence to the author i think it was very hard to follow due to lack of code comments.

So i was hoping someone was able to dumb it down a bit.
Or maybe confirm or disconfirm that am on the right path here.
If anyone have some experience with a similar problem, i love to have a chat. :slight_smile:

Also here is a AnswerHub post i did on this subject as well.
https://answers.unrealengine.com/questions/147152/asset-loading-available-or-not-available.html

Aprichiate any tips and trick you are willing to share. :slight_smile:

Cheers!
WCode

AND HAPPY NEW YEAR! :slight_smile:

Ok so i more or less solved this issue by in essence using


UObject::StaticLoadObject(,,)

```](https://docs.unrealengine.com/latest/INT/API/Runtime/CoreUObject/UObject/StaticLoadObject/index.html) With the String Refrence of the TAssetPtr.
If the ```

TAssetPtrObject->IsValidLowLevel() == false;

```](https://docs.unrealengine.com/latest/INT/API/Runtime/CoreUObject/UObject/UObjectBase/IsValidLowLevel/index.html)
Like [the doc](https://docs.unrealengine.com/latest/INT/Programming/Assets/AsyncLoading/index.html) say ;) i know i was doing something wrong.
Am just wondering am not using the FStreamableManager at this point.

What is the down sides to this?

Bump.
Anyone have any input on this?
*Am just wondering am not using the FStreamableManager at this point.

What is the down sides to this? *

I think the main benefit of using FStreamableManager is that you can load the content asynchronously if your game allow. Also you can pass a FStringAssetReference directly and load it synchronously if you want.