And some new images with (mostly) custom details.
Textures and Details Input
-
- Posts: 1343
- Joined: Tue Jul 02, 2013 1:49 pm
- Location: Beeston, Nottinghamshire, GB
- Contact:
Re: Textures and Details Input
Damn that looks so nice.
Re: Textures and Details Input
Some more progress, mostly figuring out a good way to texture without any external image editing.
And the material setup looks like this:
Some explanation:
In the center you have some texture images: a baked AO and masks for weathering, dirt and pattern.
The weathering and dirt masks are actually making the shader to show up different material. So you actually showing the shader which parts are weathered down to the base metal, or have some grime and dirt on it, and the shader shows the specified material.
Between the textures and the shader itself is a node that is used to set the color of the ship and overlays the pattern, just like in pioneer. (Down to the color glitch that can happen on boundaries with antialiasing, but that's a limitation of the method used.)
On the left I show a possible way to optimize the in-game shader a bit: Since all three mask are grayscale, all of them could be stored in the RGBA channels of a single image. Provided, they could be split at runtime without placing them into the memory separatelly. Does that makes sense?
No glow map yet, but that will be the next I want to figure out.
@fluffyfreak: A question/request: The decals themselves don't know about weathering, patterns or dirt, so they will kinda stick out. I think support for two UV maps could solve that, if it could be specified per texture. Like for example you'd have the color and spec texture use the decal UV, but you could plug in the AO (which multiplies), dirt (which is just alpha blended based on the alpha channel) and pattern (which colors) textures with a second UV map that would properly correspond to their location on the ship, so they'd be darkened, weathered, dirted, colored properly.
Edit: if I'm able to figure out a good way to trasfer UV-s easily
Another nice possibility: dynamic weathering and dirt, and PBR. You'd set up three materials for the ship: the paint color, the base metal and a dirt material with their properties like specularity, roughnesss, base color, etc. The apropriate mask would define which pixel has which material.
Then the mask could be painted quite a bit more blured, and then if you play with the brightness curve/level of the mask, you could pretty much make dynamic weathering, where the older/more damaged the ship, the more of the base metal and dirt would show up. (I think E:D works something like this). Compare the first to images for an example. (Damn, I should learn GLSL maybe? :P)
And the material setup looks like this:
Some explanation:
In the center you have some texture images: a baked AO and masks for weathering, dirt and pattern.
The weathering and dirt masks are actually making the shader to show up different material. So you actually showing the shader which parts are weathered down to the base metal, or have some grime and dirt on it, and the shader shows the specified material.
Between the textures and the shader itself is a node that is used to set the color of the ship and overlays the pattern, just like in pioneer. (Down to the color glitch that can happen on boundaries with antialiasing, but that's a limitation of the method used.)
On the left I show a possible way to optimize the in-game shader a bit: Since all three mask are grayscale, all of them could be stored in the RGBA channels of a single image. Provided, they could be split at runtime without placing them into the memory separatelly. Does that makes sense?
No glow map yet, but that will be the next I want to figure out.
@fluffyfreak: A question/request: The decals themselves don't know about weathering, patterns or dirt, so they will kinda stick out. I think support for two UV maps could solve that, if it could be specified per texture. Like for example you'd have the color and spec texture use the decal UV, but you could plug in the AO (which multiplies), dirt (which is just alpha blended based on the alpha channel) and pattern (which colors) textures with a second UV map that would properly correspond to their location on the ship, so they'd be darkened, weathered, dirted, colored properly.
Edit: if I'm able to figure out a good way to trasfer UV-s easily
Another nice possibility: dynamic weathering and dirt, and PBR. You'd set up three materials for the ship: the paint color, the base metal and a dirt material with their properties like specularity, roughnesss, base color, etc. The apropriate mask would define which pixel has which material.
Then the mask could be painted quite a bit more blured, and then if you play with the brightness curve/level of the mask, you could pretty much make dynamic weathering, where the older/more damaged the ship, the more of the base metal and dirt would show up. (I think E:D works something like this). Compare the first to images for an example. (Damn, I should learn GLSL maybe? :P)
Re: Textures and Details Input
I've figured out a nice way to export all texture maps from Pioneer using the compositor. So now I don't have to use an image editor for texturing, just the blender image painter. I think I should maybe start documenting it, so others could use it too.
Here's the decaled Sinonatrix to try out. (Not sure if it would work as a mod, due to the sgm you need to delete)
Here's the decaled Sinonatrix to try out. (Not sure if it would work as a mod, due to the sgm you need to delete)
-
- Posts: 1343
- Joined: Tue Jul 02, 2013 1:49 pm
- Location: Beeston, Nottinghamshire, GB
- Contact:
Re: Textures and Details Input
I'm 100% sure that I commented on this last night at home. I guess I was more tired than I thought.
So I tried this out in modelviewer so that I could take a really close look at details and I'm very impressed!
The decal detailing holds up really well no matter how close you zoom and makes everything seem like it's got a single super hi-res texture on it all, very impressive.
I wasn't sure how the engine would hold up with this approach but it really does looks great and I didn't see any z-fighting or other rendering issues like I expected might happen under certain circumstances.
I'll have a think about the last bit, I did/do have a branch for a 2nd UV channel already but it complicates the code a bit because some things will and won't have it which was difficult to determine from the importer.
Yeah I'll need to think more, really if we had a proper material system you'd be able to change shaders and the textures/materials used by a ship yourself but sadly we don't.
So I tried this out in modelviewer so that I could take a really close look at details and I'm very impressed!
The decal detailing holds up really well no matter how close you zoom and makes everything seem like it's got a single super hi-res texture on it all, very impressive.
I wasn't sure how the engine would hold up with this approach but it really does looks great and I didn't see any z-fighting or other rendering issues like I expected might happen under certain circumstances.
I'll have a think about the last bit, I did/do have a branch for a 2nd UV channel already but it complicates the code a bit because some things will and won't have it which was difficult to determine from the importer.
Yeah I'll need to think more, really if we had a proper material system you'd be able to change shaders and the textures/materials used by a ship yourself but sadly we don't.
Re: Textures and Details Input
Hows the progress with the decal and Blender coming along?
Re: Textures and Details Input
Quite promising. Check the Sinonatrix mod above.
Re: Textures and Details Input
The zip did not work so I had to open it and separate the file. For now I tested just copying the files into pioneer folder itself.
This was the result. You mentioned about sgm.
https://i.imgur.com/Vvl81Sg.png