AiTiles [Rev. 3] - AI Upscaled Terrain Tiles for Falcon BMS
-
-
Your system could be very valuable in removing tall buildings from satellite photos. As you can see in the 1st sample photo tall buildings are never straight and they also have bad shadows. For 3D cities we just need streets and flat footprints in highrise areas. Smaller buildings have not that much of the problem.
-
Okay, Rev. 3 has been released – the water tile border issue has been fixed (though it’s more of a hack than a proper solution).
-
passes my eye tests and looks Fantastic! … but 9 gigs shesh!! I used windows disk compression to keep them from taking up my SSD (reduced to 3.5gb) seems to be unaffected by this but test it if you not sure disk compression can be turned off easily if it causes you prob`s
-
Really, 9 gigs? That is 6 times the standard tile set, could explain why some people experience stuttering, the sheer amount of I/O
-
On new systems with HDD and win10 having files compressed with new win10 compression is faster at loading, cause reading a smaller file and decompressing it it’s faster than loading a bigger uncompressed file.
This when you have many kinda small files.
And as always flight Sims demand a higher level of pc hardware, and power users for the os.9GB are nothing for a large area of terrain.
Sent from my MI 5 using Tapatalk
-
So Arty, Disk Compression is the way to go for speed if what i`m reading is correct?
-
Really, 9 gigs? That is 6 times the standard tile set, could explain why some people experience stuttering, the sheer amount of I/O
So the tiles themselves are 4 times as large (from 512x512 to 1024x1024, which is 4 times as many pixels), but they have more detail in them which makes them less compressible (EDIT: This part is actually incorrect – DXT5 compresses at a rate of 1:8 fixed) – if you look closely, the 512x512 tiles have heavy block artifacts from either DXT5 or upsampling somewhere in its life, which is something I’m trying to correct.
It might seem large, but as Arty noted 9GB is nothing for high resolution terrain – at 1m resolution, a square kilometre of uncompressed terrain is 4MB. This means that Rhode Island (the smallest U.S. state, about 60km x 60km – the distance you can cover in 4 minutes at 500 knots) would be ~13GB, and the Korean peninsula (just the land of the peninsula itself, not other parts of the KTO, slightly larger than Great Britain) would be ~900GB. This is the reason why MSFS 2020 gave up on installing terrain and switched to download-on-the-fly – I think they use 0.5m resolution imagery where available, so multiply the above numbers by 4.
Even outside terrain data, large textures are pretty expensive storage-wise – the latest Call of Duty games actually take up more than 200GB, and you’d be hard-pressed to find a new AAA game under 40GB. Anyway, BMS has never been about the fanciest eye candy so this is something one can live without if storage or I/O is an issue – FWIW, the latest PCI 4.0 SSDs can read at 7100MB/ (I have a 4TB one filled just with the real terrain data that I used for training the neural nets), and there are newer technologies for improving streaming performance (PS5’s SSD Texture Streaming) that might be available in a few years on the PC.
-
So Arty, Disk Compression is the way to go for speed if what i`m reading is correct?
I tested it on Falcon and works like a charm.
u scare me with disk compression
what I mean is this:
https://github.com/ImminentFate/CompactGUIlast years I use
XPRESS16K: Slower, but strongerNo issue at all.
At work laptop besides windows folder I have almost everything else compressed due to small ssd.
-
I agree 9GB is nothing. You cannot expect to receive 4x the detail at no cost at all to storage, loading times and processing (though I don’t think any half-modern gpu read: 960gtx and beyond with enough VRAM) would have any issue at all with these new textures at all).
All my BMS stuff lives on SSD anyway, and I’m seeing no discernible fps difference between Polak’s and AiTiles usage. Keep up the good work Dodam and thanks for releasing rev 3!
Cheers,
Uwe
-
So what I’m working on now is dealing with the DXT compression artifacts – what I mistakenly thought was upsampling artifacts from a previous generation are actually just the side effects of the texture compression algorithm. I hadn’t understood the algorithm correctly. (This is the algorithm for people who might be interested in the details – you can see just how much detail is lost in each 4x4 block: https://www.fsdeveloper.com/wiki/index.php/DXT_compression_explained)
In BMS tiles, this is how the compression artifacts manifest – this is a closeup of the fields on a farm tile, and you can clearly see the 4x4 blocks where the shades are off. The neighbouring 4x4 blocks have completely different shading:
This is a key difference between the textures and the training data that the network sees, which significantly hinders quality – once the network gets really good at generating super-resolution scaling for real data, it becomes worse at dealing with BMS tiles, creating a bunch of block artifacts and noise. What would be the easiest is if I had access to the original tiles before the compression, but barring that, I am preprocessing the real terrain to add DXT compression artifacts.
The hope is that the network learns to see through the artifacts – I’m not sure how well it will do: at full resolution (though what I’m releasing is downsampled and compressed), the network is being asked to put out 128 times the data that comes into it. I think I should be able to get a significant increase in visual quality, but we’ll see what happens.
-
Arty, Ah roger that but what scares you Disk Compression or that Gui tool?? i just use the standard Win10 Compression … due to it being a 2015 PC and a small SSD i`m hoping for a new PC once the crazy prices return to realistic levels
-
Well this is known and overcoming this I don’t think that an algorithm can be that good to overcome it specially when your source is so low in res and already compressed.
This would be nice to be done in source files (prior to dds conversion) or recreate the whole thing using as reference the current tiles which is an overkill.So this procedure though based on low res source provides a visual difference from current tileset. It’s not a super wow thing but for sure it’s an impressive step up.
Don’t know if some of the guys that created such tile sets have their sources files and are willing to share so that such procedures could be performed to produce a better outcome.
If those source files are at the same res as the final dds files well the result will not be of that much of a difference, sure better and it’s rather easy I’d say as the whole process is mostly automated. -
can somebody post a good comparison in-game pics about the before and after states? daytime if it can.
-
So what I’m working on now is dealing with the DXT compression artifacts – what I mistakenly thought was upsampling artifacts from a previous generation are actually just the side effects of the texture compression algorithm. I hadn’t understood the algorithm correctly. (This is the algorithm for people who might be interested in the details – you can see just how much detail is lost in each 4x4 block
Yes, this is a DXT compression algorithm artifact which is obviously in each BMS Terrain tile. The originals PSD files have none of that, but obviously, they were too “heavy”.
It was a conscious design and coding decision to go with DDS format and associated DXT compression. 1st because of the size of the files and wide support, 2nd DDS is “free for all” format and this was a rather small price to pay for loss of quality caused by DXT conversion when tiles were created.
Nvidia for PS plugin was used and BTW that was in 2015 and earlier!
-
Oh, I’m not saying that it was the wrong choice – it’s designed for this sort of thing, after all. Just that I have to deal with it as someone working with lossy tiles down the road.
-
Your work and methods are innovative and full of great potential.
However, to really improve BMS tiles terrains what needed is:
decrease the repetitiveness of the tiles,
attempt to make the shapes and contours on tiles as close to RL geography,
increase the number of tiles with PR material,
work on a flat line of the shores and maybe slightly sloping rivers,
improve and significantly increase 3D content on the tiles and
correct “stepping” bridges and hanging in the air larger objects.The resolution and color clarity of the tiles is perhaps not the most pressing priority IMHO.
Having said all this I am fully supporting and very interested in your work and methods which I am sure could be used in BMS terrains old as well possibly new alike. -
severity is not generally the sole factor affecting priority, I’d hazard.
-
So the tiles themselves are 4 times as large (from 512x512 to 1024x1024, which is 4 times as many pixels), but they have more detail in them which makes them less compressible (EDIT: This part is actually incorrect – DXT5 compresses at a rate of 1:8 fixed) – if you look closely, the 512x512 tiles have heavy block artifacts from either DXT5 or upsampling somewhere in its life, which is something I’m trying to correct.
It might seem large, but as Arty noted 9GB is nothing for high resolution terrain – at 1m resolution, a square kilometre of uncompressed terrain is 4MB. This means that Rhode Island (the smallest U.S. state, about 60km x 60km – the distance you can cover in 4 minutes at 500 knots) would be ~13GB, and the Korean peninsula (just the land of the peninsula itself, not other parts of the KTO, slightly larger than Great Britain) would be ~900GB. This is the reason why MSFS 2020 gave up on installing terrain and switched to download-on-the-fly – I think they use 0.5m resolution imagery where available, so multiply the above numbers by 4.
Even outside terrain data, large textures are pretty expensive storage-wise – the latest Call of Duty games actually take up more than 200GB, and you’d be hard-pressed to find a new AAA game under 40GB. Anyway, BMS has never been about the fanciest eye candy so this is something one can live without if storage or I/O is an issue – FWIW, the latest PCI 4.0 SSDs can read at 7100MB/ (I have a 4TB one filled just with the real terrain data that I used for training the neural nets), and there are newer technologies for improving streaming performance (PS5’s SSD Texture Streaming) that might be available in a few years on the PC.
/me looking with embaressment at my BMS Dev folder which is ~620GB with 9 theaters (one of them is large though )… and we aren’t even close to 0.5m/pixel :facepalm:
Yup, 2TB NVMe coming soon
-
err… 2TB you mean? I don’t know if anyone even made a 2GB NVMe drive!