New Renderer (OpenGL 3.3)
-
I’ll admit to not having a great opinion of old Freeworlds, for many reasons… One of which was the very poor overall quality of the assets. “Everything and the kitchen sink” was the favored approach and it shows.
We should probably move this discussion to another thread if we want to keep going though.
-
FriendlyFire wrote:
We should probably move this discussion to another thread if we want to keep going though.Yeah it would be nice if you could continue this discussion in another topic and maybe move your replies from here into the new one as they are quite offtopic
Freestalker wanted some replies on how you like his textures so maybe we should continue there. I personally miss a better distinction between the different heights. It will look better ingame due to self shadowing, but still.
I have been experimenting with neural networks and came up with an approach which first removes the dds compression artefacts and then uses a different trained network to upscale them. After that I plan use normal algorithms for further filtering and upscaling (currently it’s only a very good upscaling algorithm afterwards). The results look more than promising to say the least. Here are a few examples (click on them for full size):
Original Vanilla:
Upscaled:
Original:
Upscaled:
Original:
Upscaled:
What do you guys think? Want more examples?
-
I think you’re on to something.
Better impression of height. -
Neural net texture upscale in Freelancer ? Legit ! XD
The result is nice. With this, FL textures, even if they are High Def, could become high quality even with a compression. Nice approach ! I shouldn’t have been able to think about doing that. Honestly hats off !
More examples ? Rheinland textures please ? Because there are some details that I don’t want to miss. THX ! (Edit : Just Upscale)
-
I could be wrong but… I have the feeling that the original has a higher contrast than the upscaled version
-
Upscaling always brings luma and chroma changes, a great upscaler preserves contrast and other things. Upscalers like Genuine Fractal and S-Spline Max keep contrast and sharpness. They are top of the line upscalers that are vector based and the others are interpolation based.
But in the printing univers we haven’t the right to upscale above 20% ! It should be the same for internet and so on.
Neural net is promising. Although it’s not a mature algorithm it does the job. With 1024X1024 textures it could be very interesting to see it ingame.
-
To be honest I dont expect much of a difference in the game.
-
At the same time seamless 1024X1024 HD texture is sufficient but filtered with Neural networks it can preserve sharpness.
I’m using this to upscale my textures and it works very well, sharpness and details are kept, so I’m optimistic of the result ingame.
-
I am already using 4x upscaled textures in the videos and that did make a lot of difference (some of this is because of the DDS compression). I hope there will another jump with the new ones. We will see. The current ones I use are quite good, though.
I am still training the networks and experimenting with different layers so the results might change (like the colors still do during training). I think that is was SWAT_OP-R8R noticed.
Here are some from yesterday (rheinland) which Freestalker wanted. I only applied antialiasing afterwards (which helps a lot).
Also Freestalker thanks for the kind words
Original:
Upscaled:
Original:
Upscaled:
Original:
Upscaled:
-
You’re welcome !
Thanks for uploading but now I remain a little bit lost. Especially with DTL2… I’m less lost with DTL3, it clarifies the window part. DTL1, easy.
-
I am still trying different network configurations and am looking for a way to get less aliasing. The results are already somewhat better, but I am not satisfied yet.
Here are results from a completely different network:
Original:
Upscaled:
Upscaled:
Upscaled:
Upscaled:
I did not apply any further filtering besides upscaling again. As you can see, hard edges can be quite aliased. I might have to filter the input with antialiasing without making it to blurry.
-
IMHO:
The only thing you remove with upscaling is the aliasing effect. The texture itself does not get any more details. Only repainting those can bring more details. Also the higher resolution just blurs the image more and more, which doesnt look good for my feeling.
The thing in question: Does it pay the effort…?
-
It’s not so easy. The DXT compression introduces a lot of artefacts, so if you upscale it without them and compress it with a better compressor or even better into a different format, you will have won a lot. Also I don’t have to do much since basically the networks are training while I am working on different stuff
Also unless someone is willing to redo them we don’t have an alternative. I think Freestalker is currently trying, but who knows how many he can afford to rework. The models also have to be reworked, but no one is doing that currently I think.
Edit:
Here is an example to show what the networks are doing:
Vanilla upscaled (Lanzos3):
DXT NN filtered, antialiasing (hard edges), NN upscaled, Lanzos3 Upscaled:
Maybe this helps you understand why I am doing this
-
Yes, you can of course sharpen the image and apply other filters, but that is for later when am tired of testing networks The goal is a good starting point.
-
The main problem with this is that there is so much work that it’s clearly hard to say when it could be finished, the game has hundreds of textures and Freelancer texture creators was not an only man carrying all the texture conception, and we have to remind that it was only diffuse map. Even if I do one texture per day, and it’s not easy due to the fact I have a job and I’m kind of slow, it could could take 3 years to complet the project…
For now it’s diffuse then height then normal and the trickiest part specular. And everything has to be optimized. I have simplified the process using Filterforge to have stencils ready to use. But to use it you have to pay so I use the 30 day demo and finding the good filter is difficult. If I want to do a new filter, my CPU isn’t sufficient and it overheats so I have to spend a lot of money in an Intel I5 8600 K, I can’t afford that investment only for a free project, and will surely not do games every days, I’m more a casual than a gamer.I don’t say I give up but some guys helping me should worth it.
-
And a 1 and a 2 and a 3…
-
I think there is a misunderstanding here. What my wrapper is doing is exactly using normal and height maps (although I am not using dxt5_nm, but rather ati2n for normal maps and ati1n for the height maps, which gives you nearly lossless compression). So we all agree that it is needed, but you don’t need dxt5 for it (the nm format just uses the alpha channel to get less compression artefacts in the normal maps). If you go back a few pages you’ll find screens and videos of my wrapper in case you missed it. They are done with Freelancer and it uses normal and parallax mapping thanks to shaders (i currently even use some optional dx10 stuff for the antialiased post processing).
The problem now is to generate all the height and normal maps including high res textures which at best don’t have any height baked in them like FL textures have. Even if your method e.g. allows automatic height map creation or eases it up a lot this would help out quite a bit. And don’t get me started on the old low poly models
-
Nope pal. That’s exactly why I msg you. You GET it. What I’ll show you is to NOT bake the texture. What it’s about is using DXT5_NM into the 3D software’s material channels (Normals Map and Displacement set for Sub-Polygon displacement to render a 1024 x 1024 texture directly from the 3D packages renderer into .dds and or .tga files. No resizing, no aliasing, clean sharp lines and no faking the highlights or shadows). The result is exactly what Freelancer uses and that’s a 16, 24 or 32 bit targa or a DXT1 dds file or 3 or 5 depending on what your needs are if your using alpha mats or whatnot. This technique uses the power of your renderer to take the burden off Freelancer’s engine. Why bake when you can make?
And you’re absolutely right about DXT5_NM’s compression artifacts…If you don’t know how to completely bypass the entire issue. Which I do.
As a matter of fact if you use DXT5_NM in that alpha channel as advertised. you’re in SERIOUS trouble.
That’s why the pros know EXACTLY what to do and everybody else DOESN’T.