Search Issue Tracker
Fixed
Votes
0
Found in [Package]
1.8.3
Issue ID
ADDR-1233
Regression
No
[Addressables] CacheInitOp not getting updated after the first frame
The cache initialization operation (CacheInitOp) doesn't get updated after the first frame. This may only manifest if something else hasn't already triggered RegisterForCallbacks in ResourceManager.
We need to have ResourceManager Register for callbacks if there are initialization objects that get processed.
Quick Repro:
In CacheInitOp, change Update(..) to look like
int fakeFrameDelay = 0;
public void Update(float unscaledDeltaTime)
\{
#if ENABLE_CACHING
Debug.Log("we are waiting for init...");
fakeFrameDelay++;
if (fakeFrameDelay < 3)
return;
if (Caching.ready && m_UpdateRequired)
\{
m_UpdateRequired = false;
If you hack in calling resourceManager.RegisterForCallbacks when the InvokeExecute is called (or anywhere really) then it will work.
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Crash on JobQueue::HasJobGroupIDCompleted when closing the Editor while in Play mode on a specific project
- In "Preferences" section the “SpriteShape” menu item, the details page title “SpriteShape”, and “ControlPoint” entries are displayed as code strings rather than formatted UI strings
- Errors thrown constantly when Virtual Offset Debug is enabled and lighting was baked on AMD machine
- Persistent Memory Leak when reloading domain and using Distance-based Ghost Importance
- HDRP project doesn't render in standalone player when using High stripping
Resolution Note:
somehow this is a dupe of ADDR-1207, and that ticket was fixed in 1.9.0