MYSTERY SOLVED FOR MAC USERS:
(Possibly also for Windows users of OneDrive, which has similar features.)
140 Views. Guess I'm not the only one having this problem. Fortunately, I figured out the problem on my Mac.
The files are actually not there when Blender is looking!
The culprits are iCloud and its Optimize Mac Storage setting. iCloud backs up your Desktop and Documents folders, along with data from a number of other programs. It's great for sharing, and it's a good way to ensure that you don't lose important files. Another use that has become important to users with little space on their internal drive is to leverage iCloud to free up drive space. This happens when the user enables Optimize Mac Storage in the iCloud settings section of System Preferences. Generally, it works well, but there are some persistent problems with the way it works.
Under normal circumstances, the files in your Desktop and Documents folders will exist as a local copy and an iCloud backup copy. When both iCloud and Optimize Mac Storage are enabled, the system may opt to delete the local copies of larger and/or older files that have not recently been used. When the need for drive space gets extreme, the system may opt to keep the local copies only when they are actually being used, and for a set period after.
The process behind-the-curtain is pretty simple. You create/view/edit a file. When you are done with it, iCloud copies it to the cloud. When you need space on your local drive, iCloud deletes the contents of the file and adds ".icloud" to the end of the filename. When they ask for the local copy, iCloud downloads the contents and changes the name back. The user then does whatever with the local copy and the process repeats. OS X pretends that the whole file is there, and most programs don't notice any difference.
On some occasions, the download lag can cause programs to report that the file doesn't exist when they try to load it. That's because it doesn't actually exist YET. Most of the time, the user can just try again in five or ten seconds and all will be fine.
Blender does not seem to trip the system's flag to say that iCloud should fetch the copy to the local drive so it can work with it. Even when the Blender File View opens the directory and reads the contents, it does not convince the system to fetch the file. On top of that, Blender File View filters by file extension, so it will show all of the local copies of a .jpg file, but will not show the placeholders that end with .jpg.icloud.
There are two workarounds.
- Double click the "missing" file in Finder so that it is opened in Preview. This forces iCloud to fetch the file. Finally, reopen the .blend file.
- Pack the externally linked files into the .blend file. This can be done using the File->External Data... menu as needed or desired.
I am reporting the issue to the Blender development team so hopefully they will have a fix in short order.
Windows users may be experiencing the same sort of issue, but I cannot swear so, as I cannot reproduce the problem on my Windows machines. On the up side, the workarounds should also work in Windows or Linux if the same problem is cropping up in those environments.
Hope this helps someone!