Sprites missing or corrupted

This subforum contains all the issues which we already resolved.
kovarex
Factorio Staff
Factorio Staff
Posts: 8211
Joined: Wed Feb 06, 2013 12:00 am
Contact:

Re: Sprites missing or corrupted

Post by kovarex »

ALyingCommunist wrote:I have these same issues and forcing opengl doesn't seem to fix it. I have played it on this computer before, just not with windows 10 and not for a few months.
Did you try all the things from here ?
https://forums.factorio.com/forum/vie ... f=7&t=9300

What is your hardware config, can you post the log?
ALyingCommunist
Manual Inserter
Manual Inserter
Posts: 3
Joined: Sat Oct 10, 2015 8:16 pm
Contact:

Re: Sprites missing or corrupted

Post by ALyingCommunist »

I did try all of the things on that post. I am not very computer savvy, so I am not exactly sure how or where to find my hardware config.
daniel34
Global Moderator
Global Moderator
Posts: 2761
Joined: Thu Dec 25, 2014 7:30 am
Contact:

Re: Sprites missing or corrupted

Post by daniel34 »

You can find the log file directly in the Application directory in the wiki entry linked by kovarex (https://forums.factorio.com/wiki/inde ... _directory).
With the Windows installer version of Factorio just enter %appdata%\Factorio in any explorer window or the run dialog (Win+R). You should find two files, factorio-current.log and factorio-previous.log, please attach both to your next post.

Please also post your CPU, GPU (graphics card), RAM and VRAM info if you know them, otherwise the computer model number could also help.
What OS did you have installed before (Win 7/8/8.1 probably) and what version of Factorio did you use (0.11 or 0.12)?
quick links: log file | graphical issues | wiki
Astregor
Manual Inserter
Manual Inserter
Posts: 4
Joined: Tue Nov 03, 2015 3:30 am
Contact:

Re: Sprites missing or corrupted

Post by Astregor »

I recently updated to 0.12.16 and let it patch update. When I got in game, I started experiencing this same problem. I did my research and changed the config.ini settings, updated my AMD R9 drivers, tried multiple compatibility settings, have Run As Admin checked, and everything else I could find to get the sprites back. I got about half of them. I tried uninstalling, deleting all instances of the game from roaming and prog files, and installing an older version that was working. Nothing clears up the problem. The game is unplayable now. I hope it gets fixed soon.

Win10
AMD R9 255
Bonzai
Burner Inserter
Burner Inserter
Posts: 6
Joined: Mon Dec 22, 2014 3:49 pm
Contact:

Re: Sprites missing or corrupted

Post by Bonzai »

Astregor wrote:I recently updated to 0.12.16 and let it patch update. When I got in game, I started experiencing this same problem. I did my research and changed the config.ini settings, updated my AMD R9 drivers, tried multiple compatibility settings, have Run As Admin checked, and everything else I could find to get the sprites back. I got about half of them. I tried uninstalling, deleting all instances of the game from roaming and prog files, and installing an older version that was working. Nothing clears up the problem. The game is unplayable now. I hope it gets fixed soon.

Win10
AMD R9 255
I had the same problem after updating to 12.16.
A clean install of 12.15 solved it for me.
Astregor
Manual Inserter
Manual Inserter
Posts: 4
Joined: Tue Nov 03, 2015 3:30 am
Contact:

Re: Sprites missing or corrupted

Post by Astregor »

Thanks Bonzai, that fixed mine as well.
kovarex
Factorio Staff
Factorio Staff
Posts: 8211
Joined: Wed Feb 06, 2013 12:00 am
Contact:

Re: Sprites missing or corrupted

Post by kovarex »

Just to be sure, are you using the force-opengl option? Can you post the log?
posila
Factorio Staff
Factorio Staff
Posts: 5442
Joined: Thu Jun 11, 2015 1:35 pm
Contact:

Re: Sprites missing or corrupted

Post by posila »

That is really weird you observe this error also with OpenGL.
We were playing with 3D application configuration in AMD Catalyst Control Center until it started to happen on our computer too (but, only with DirectX - force-opengl=false, though). It also kept behaving like this after driver setting were reset to factory default. So, we were finally able to debug it and we didn't find any obvious reason, why sprites should be corrupted, but we found workaround, that should prevent this. So it should be fixed in 0.12.17 (at least for DirectX).
orzelek
Smart Inserter
Smart Inserter
Posts: 3924
Joined: Fri Apr 03, 2015 10:20 am
Contact:

Re: Sprites missing or corrupted

Post by orzelek »

posila wrote:That is really weird you observe this error also with OpenGL.
We were playing with 3D application configuration in AMD Catalyst Control Center until it started to happen on our computer too (but, only with DirectX - force-opengl=false, though). It also kept behaving like this after driver setting were reset to factory default. So, we were finally able to debug it and we didn't find any obvious reason, why sprites should be corrupted, but we found workaround, that should prevent this. So it should be fixed in 0.12.17 (at least for DirectX).
Out of curiosity - can you write what was actually happening that corrupted the sprites?
posila
Factorio Staff
Factorio Staff
Posts: 5442
Joined: Thu Jun 11, 2015 1:35 pm
Contact:

Re: Sprites missing or corrupted

Post by posila »

orzelek wrote:Out of curiosity - can you write what was actually happening that corrupted the sprites?
Factorio creates huge sprite atlas (preferably containing all the sprites in game). That way it can batch all drawing to just few draw calls (ideally). Because Factorio is highly moddable, sprites are distributed as separate files and sprite atlas is generated on startup.

Soo .. we create a texture for sprite atlas, then for each sprite we load a sprite to its own texture and render it to the sprite atlas. This is GPU accelerated, so sprite atlas is in VRAM, we load a sprite to RAM, upload it to VRAM and render it. In practice, this is handled by ALLEGRO_BITMAP, which will create one IDirect3DTexture9 using D3DPOOL_SYSTEMMEM and the second one using D3DPOOL_DEFAULT. It fills the system memory with pixels from PNG, and calls IDirect3DDevice9::UpdateTexture to update VRAM texture by its system memory copy. And for some reason, the UpdateTexture sometimes didn't work, and VRAM texture stayed filled with random garbage it started with.

Workaround was to use single texture using D3DPOOL_MANAGED, which automatically keeps RAM and VRAM copy of textures.
Post Reply

Return to “Resolved Problems and Bugs”