Hello!
Some time ago, I asked about making the whole Earth in UE. For the time being, I’m using ArcGIS, but it leaves a lot to be desired in textures. Is there a way I can automatically/by script apply Quixel textures to a landscape based on a satellite image?
Thanks in advance,
No, but one could likely be developed in some fashion.
I’d still start with pulling textures out by polling slope percentages, like any other auto material out there.
You can then then process roads and rivers if arcgis is pulling in that information… to exclude them from the paint layers, perhaps give them their own layer.
Overlaying satellite imagery would have to be streamed in as it would quickly exceed the normal limits when you map an area that isnt 1m to a single pixel. Not saying it isnt possible (goole earth obviously does this), but its a pita to get anywhere close to google earth quality, and that quality is anything but good…
I mean, unless you have a Musk or Nasa hookup to a satellite with more resolution, then maybe…
I suppose for smaller areas, drone imagery would be the way to go here.
Depends on the end goal - if the end goal is to paint areas somewhat accurately, slope driven splat maps will do the trick.
If the idea is to copy google earth… you’d also need to account for tree cover/vertical shapes…
This isn’t directly responding to your question, but I’m working on a somewhat related scenario in which I am applying satellite images as decals onto a landscape whose height is generated from DEM data.
My situation is for a defined area, not the whole planet, but one thing I’m doing for performance might help you. Instead of applying the highest-resolution images to the whole area, I am applying a lower-resolution image to areas that are distant from the player camera. In effect, I’m using mipmaps (as the other person commented), but I’m creating these by downloading lower-res images ahead of time. This works in my situation because the application is an archviz scene in which the camera will always be near the structure of interest. Thus, it’s smaller file size for me to only have low-res images at the distant areas rather than having high-res all around and letting the engine select the mipmaps dynamically.
This is probably not very helpful to you if you’re moving around the map, but you didn’t specifically say how much of the world needs to be distantly visible at a time, or how much of what can be seen can actually be visited. That being the case, I offer this suggestion as one thing to consider if your situation is sufficiently location-static.
Even then, how do you account for things like trees up on a mountain or similar without actually placing models (foliage) in the proper location?
The satellite images being flat, won’t really help all that much particularly with buildings and taller structures which - for your archviz purposes - should also take earth curvature into account…
I don’t disagree at all. The way I read the OP was that they wanted to simply apply satellite images to the terrain and then replace the image with an appropriate auto-selected texture, so for example replacing a satellite image of a cultivated field with a higher-resolution Quixel texture.
The way I’m using the technique I described, is that I place down the satellite image accurately and then use it as a reference for manually painting any areas that my auto-material gets wrong. The question of trees and structures is not applicable; I place (procedurally or manually) 3D models of the foliage or structures that matter for the scene. The satellite image is, for me, just a convenience during level editing.
I agree with you 100% to start with an auto-material…that’s the only scalable method for large landscapes unless, as you say, there is enormous bandwidth and local storage available.)