Even their PC version is laggy, check out streamers restarting the game (!) before important and action packed battlegrounds turns.
Users also have a lot more control over what is shown on screen. For a FIFA game everything is loaded beforehand. In a card game that has to hide information, it has to load as the game progresses.
Maybe more clearly, whenever you enter a game there's a loading spinner that freezes for several seconds even on the very highest end desktops; you'd think for a game whose main graphics concern is exactly "image asset streaming from disk", they have wouldn't need to hard-freeze the menu UI to do the loading.
~0.25MB (size of a sample original artwork from[0]) * 3410 (number of playable cards in the game[1]) = ~850MB
> For a FIFA game everything is loaded beforehand. In a card game that has to hide information, it has to load as the game progresses.
During every single match of Hearthstone all the cards are also known beforehand (to the device), and they are a fraction of the full card collection.
Hearthstone cards have several texture maps per card for the foil card effects. When textures are stored in ram they are not compressed (not as png or jpeg anyway). Its closer to a full 4 bytes per pixel. Textures also use mipmaps which take up an extra 33%. Not to mention the animations, effects and and the texture memory they bring. Its much more RAM than you think. Just look at the (fully compressed) install size of over 3GB. The menu textures do not take over 2GB.
The game came out in 2014 when the latest iPhone had 1GB of RAM (less than 512MB usable for the whole app, essentially.) Its tuned to be under that cap, which forces a lot of disk reads instead of keeping things in RAM.
>During every single match of Hearthstone all the cards are also known beforehand (to the device), and they are a fraction of the full card collection.
This is actually false as some cards can spawn a random card from the full collection.