godotengine / godot

Godot Engine – Multi-platform 2D and 3D game engine
https://godotengine.org
MIT License
90.34k stars 21.06k forks source link

FileSystem cache error when importing an OBJ file #13978

Closed Zylann closed 4 years ago

Zylann commented 6 years ago

Godot 3.0 beta 1 Windows 10 64 bits

I opened a project, dropped an OBJ file in it, and I got an error popup telling me that Godot could not write to the filesystem cache. Then the file showed up in this state:

image

And the log:

ERROR: _parse_material_library: Condition ' !f ' is true. returned: ERR_CANT_OPEN
   At: editor\import\resource_importer_obj.cpp:47
Warning: Ambient light for material 'None' is ignored in PBR
current material library ship_gridmap_h.mtl has 1
current material None has 1
Added surface :None
current material library ship_gridmap_h.mtl has 1
current material None has 1
Added surface :None
current material library ship_gridmap_h.mtl has 1
current material None has 1
Added surface :None
current material library ship_gridmap_h.mtl has 1
current material None has 1
Added surface :None
current material library ship_gridmap_h.mtl has 1
current material None has 1
Added surface :None
current material library ship_gridmap_h.mtl has 1
current material None has 1
Added surface :None
current material library ship_gridmap_h.mtl has 1
current material None has 1
Added surface :None
current material library ship_gridmap_h.mtl has 1
current material None has 1
Added surface :None
current material library ship_gridmap_h.mtl has 1
current material None has 1
Added surface :None
current material library ship_gridmap_h.mtl has 1
current material None has 1
Added surface :None
ERROR: Node::set_name: Condition ' name == "" ' is true.
   At: scene\main\node.cpp:1142
node: Scene Root
node: MeshInstance
node: Cube.009_Cube.012
node: Cube.008_Cube.011
node: Cube.007_Cube.010
node: Cube.006_Cube.007
node: Cube.005_Cube.006
node: Cube.004_Cube.005
node: Cube.003
node: Cube.002_Cube.004
node: Cube.001_Cube.002
node: Cube_Cube.001
SAVING TO: res://.import/ship_gridmap_h.obj-4a529b2cabbf432dc4cf5b6d82791159.scn
ERROR: FileAccessWindows::close: Condition ' rename_error ' is true.
   At: drivers\windows\file_access_windows.cpp:139

The OBJ: ship_gridmap_h.zip

Reimporting seems to restore a correct state, the OBJ is fine.

Overblob commented 6 years ago

I got this one too

glaforte commented 5 years ago

I tried to reproduce this issue on Godot master, unsuccessfully. I'll find and build a version from December 4th 2017, next..

glaforte commented 5 years ago

I could not reproduced the issue with about 20-30 attempts at various manipulations, on commit a31735ad3608c9ec3a93db3ba294a7ad096fe453 (from December 4th 2017). My hunch is that this issue is related to a Windows service temporarily taking the file after the copy happens? Maybe the anti-virus? Maybe the user's HD has a few weak bits? At this time, though, I'm afraid I'm not sure how to proceed...

KoBeWi commented 4 years ago

This looks like it happened once and was never reproduced again, so it should be fine to close it (also it's similar to #6393).