Home General Discussion

GameTextures.com - I, uh, how... huH!?

So I recently signed up for GameTextures. It advertises UE4 support, which means (as far as I'm aware) that it supports the metalness workflow. I'm not using UE4, but I AM using the metalness workflow so I figure it must be possible to beat the maps they give into submission for my purposes.

I download a few textures and here's where things get confusing.

I get that most of these you're supposed to just plug in a flat metalness value. But for the ones that give you a "mask" texture, you have to guess what those values are. Guesswork sucks when I'm dealing with, say, dusty metal where I'm not entirely sure what the metalness value for "dust on metal" should be. I shouldn't have to guess - why not just include a metalness map? Would that be so hard? That's not so bad, I suppose, but then I got to this one.

http://gametextures.com/clean-oak-barrel.html

PBR Ready? Yes. Oooh, look at those nice shiny bands.
But then I took a look at the diffuse texture.
The bands which represent the metal are a really dark grey value. Eh? That doesn't look right, not for metalness workflows.
Actually, both of the two supplied images (albedo and diffuse) have this issue. The only difference is that the diffuse image has slightly brighter edges on the metal bands.

The result is that plugged into a metalness PBR shader they look something like rough black plastic, not the shiny metal you see in the preview image. Certainly not what I would expect of a so-called "UE4-ready" texture.

So really, that's my main complaint about the service. The textures you actually get are frequently confusing, and sometimes not even remotely "UE4-ready" like they advertise.

Replies

  • Joao Sapiro
    Offline / Send Message
    Joao Sapiro sublime tool
    thats something you should complain to them directly, and if what they advertise doesnt correspond with what you get then you should be entitled to a refund.
  • PhobicGunner
    thats something you should complain to them directly, and if what they advertise doesnt correspond with what you get then you should be entitled to a refund.

    I will be.
    Thankfully, I haven't paid just yet. I'm still within the 14-day trial period.

    I'd LOVE to use their service - I really would, because these textures are very high quality - but as it is I'd really like to see them make things less utterly confusing and guesswork-heavy before I would feel comfortable actually paying a subscription.
  • Will Faucher
    Offline / Send Message
    Will Faucher polycounter lvl 12
    What you described sounds right. Metal reflects almost 100% of light, so the diffuse (albedo) is very dark. In UE4, when a material is considered a metal (metalness value 1), the albedo becomes black. It is the roughness map that determines the detail along with the metalness set to 1.
  • PhobicGunner
    What you described sounds right. Metal reflects almost 100% of light, so the diffuse (albedo) is very dark. In UE4, when a material is considered a metal (metalness value 1), the albedo becomes black. It is the roughness map that determines the detail along with the metalness set to 1.

    Except it isn't right, not in a metalness workflow
    Because the metalness value is supposed to do that FOR YOU. That is, if metalness is set to 1.0, the reflection map takes its color from your diffuse map, and your materia's albedo is set to zero/black.

    If the albedo color is black, and metalness is one, it tries to take reflection color from the diffuse map - but all it gets is a near-black value which reduces the reflectivity of the material and causes it to look more like plastic than metal.
  • Will Faucher
    Offline / Send Message
    Will Faucher polycounter lvl 12
    Precisely, but it would be useful to see screenshots of what you mean, because right now it's hard to troubleshoot for you. Maybe seeing your material tree as well.
  • PhobicGunner
    This isn't in UE4, but it's using the same concepts as the UE4 rendering system.
    It's a custom-written viewport shader for 3DS Max. But the same concepts and inputs apply.

    http://imgur.com/a/o1QuL#0

    The first image is where I manually brightened up the metal albedo in Photoshop. The Metalness then picks up the brighter color and the result looks like metal.

    The second image is the unmodified source albedo texture. Notice how it looks more like black plastic even though metalness is set to 1 for the metal bands.
  • Will Faucher
    Offline / Send Message
    Will Faucher polycounter lvl 12
    The unmodified texture looks a lot like the kind of diffuse map we use in Marmoset Skyshop (unity). It's a PBR workflow, but not a Metalness workflow. In which case, the textures you got are not for a metalness workflow, like you said. Certainly check in with GameTextures!
  • PhobicGunner
    The unmodified texture looks a lot like the kind of diffuse map we use in Marmoset Skyshop (unity). It's a PBR workflow, but not a Metalness workflow. In which case, the textures you got are not for a metalness workflow, like you said. Certainly check in with GameTextures!

    Exactly.
    I wouldn't normally be upset, but they did specifically say their textures were UE4 compatible which is a bit misleading if some textures only support specular color workflow (which UE4 does not support).
  • low odor
    Offline / Send Message
    low odor polycounter lvl 17
    Tanner is a great guy (the GameTextures Guru). I'm sure sending him an email will get things sorted out for you..
  • Seaseme
    Offline / Send Message
    Seaseme polycounter lvl 8
    Thanks for the kind words guys, you rock.

    As for his problem, I'll just copy paste the solution to the email he also sent us:

    Thanks for the OP's post and I hope he can accept my apologies for our website not being up to snuff. It's not easy creating materials which work with all of the different game engines, and for the particular material we began work on it far before UE4 had even announced that they were moving toward a metalness workflow.

    That being said, this material is definitely still very useful inside of UE4, as are all of our materials. Like most things UE4 they do take a bit of set up to make work properly.

    So, the biggest differences (as it seems like you are already aware) are that in Metalness workflow a metal material takes its specular color from the base material, and in roughness/ specular workflow the metal takes its color from the specular texture. Both workflows are fine, and have their own merits, but to be sure, they are different. Lucky for us, we include a "mask" file instead of a metalness texture, which is just as useful. Using it you can easily mask between different materials and set up shaders which blend the physically correct specular color back into the base color input, resulting in proper metalness workflow.

    Attached is a screenshot of this material setup and working well in UE4. You may use the gloss map if you like, sometimes I Find I have better results in UE4 just by setting up a LERP tree dedicated to having fine control over the different materials of a shader.

    Yes, this is not quite a great metalness workflow, but it definitely does work. The mask texture is included with all of our PBR materials and makes setup a breeze. I did this demo in less than two minutes, but then again, I've practiced quite a bit.

    The LERP tree is set up to take the color channels of specific materials as alpha, then use the constant 1 and constant 3 nodes as the inputs for those specific element types.

    I'm sorry for the trouble, we do have tutorials set up (admittedly, they're not in great places and are kind of outdated, as we're learning this at the same time as well.) Great places to look for them are our FAQ, and our blog - which has a fantastic search feature which can point you in the direction you need to go.

    The MASK file IS indeed a greyscale metalness texture, as you requested. It's very simple to use - you pick the color channel which represents the "metal" sections of a texture, and plug that channel directly into the metalness input.

    For Gloss maps, sRGB is not needed, so you need to open those up and turn of sRGB (UE4 imports it as sRGB as a default), then invert and plug in to roughness. Like I said above, I tend to prefer just setting up a LERP tree to handle that for me.

    I can see why this wouldn't be ideal for you having your own shader having to figure out which materials are metal and which aren't - so I definitely see where you are coming from here. I didn't realize you were trying to do this all in your own shader, which definitely makes things a bit more complicated.

    As stated though, our materials DO work in UE4, just like most things in UE they take a little bit of tweaking to make look correct. We're working to fix it, and changes are coming but we have a large library and rolling them out is no small task.

    pdA97g1.png

    If anyone wants to download the material themselves so they can see, you can grab that right here.

    If you're curious what the mask file looks like that I talk about, it's right here:
    TiScp7F.png


    https://www.dropbox.com/s/daudftdvfa0sovd/Misc_OakbarrelClean_PBR.zip?dl=0
  • PhobicGunner
    I can see that it is possible to get it working in UE4.
    That said, I'd like to suggest including more maps in the future. Even in UE4, working around the different texture types inevitably will involve different shaders for different specific scenarios and more shader instructions. I'd think just the following maps would work perfectly fine for almost every PBR setup:

    - 2 Albedo maps (one for metalness, one for specular)
    - Roughness map as it already is
    - Normal map as it already is
    - Specular color map as it already is
    - Metalness map

    That would satisfy just about every use case already, and would be perfect for people to use textures from the site as good base textures.

    EDIT: I hope you know I'm not angry, and there's no sour taste in my mouth :) The only reason I cancelled the subscription is because I'd prefer to wait until the site better suits my particular needs before becoming a paying subscriber.
    I think at this point everybody is scrambling to move to the new PBR workflow, and there's bound to be a ton of confusion and general wierdness in the process.
  • Seaseme
    Offline / Send Message
    Seaseme polycounter lvl 8
    Thanks man, I absolutely agree. It's definitely in our short term goals to get those all updated, for now the method I described above is definitely the best way to go about using them for now. Sorry about that.
  • PhobicGunner
    So here's the thing. I actually have an artist on my team. While GameTextures won't really work for my individual purposes, I've discussed it with him and decided that if he can get a few textures I downloaded tweaked and looking decent in our engine of choice (Unity, using the metalness shader included in the Lux PBR plugin), and is fine with the tweaking workflow, then I'll go ahead and re-subscribe to GameTextures for him.
  • Seaseme
    Offline / Send Message
    Seaseme polycounter lvl 8
    So here's the thing. I actually have an artist on my team. While GameTextures won't really work for my individual purposes, I've discussed it with him and decided that if he can get a few textures I downloaded tweaked and looking decent in our engine of choice (Unity, using the metalness shader included in the Lux PBR plugin), and is fine with the tweaking workflow, then I'll go ahead and re-subscribe to GameTextures for him.

    Well just know we're here to help man, that's my job 24/7 and I take it very, very seriously. If your artist needs anything or needs custom textures, or even needs PSDs or custom masks literally every single "contact us" button on our website goes right to my phone so that I can be there to help ASAP. :)
  • NegevPro
    Offline / Send Message
    NegevPro polycounter lvl 4
    As a fan of applesauce, I can confirm that GameTextures support is amazing. They even put up with my stupid pointless bullshit!

    Also their custom texture service is pretty much unbeatable as far as I know, they do some great work.
  • PhobicGunner
    Today I had a thought and so I set about seeing if I could somehow convert specular color workflow to metalness workflow.

    While not perfect by any means, I managed to get a nice proof of concept prototyped in Unity.
    It takes a source albedo map and specular map, and attempts to:

    1.) Correct the albedo map for metalness by moving specular color into albedo
    2.) Determine the contents of the metalness map based on the brightness of the specular map.

    There's a bit of fudge factor involved, there's a Remap Range slider which can be used to sort of "fudge" the resulting metalness map, so for instance on the aforementioned oak barrel texture I had to play around with the slider in order to get the wood to be black and the metal bands to be white.
    Still, it works well enough I guess.
  • juniez
    Offline / Send Message
    juniez polycounter lvl 10
    I was also wondering that as well: If the metalness workflow can be mathematically separated into their diffuse / specular counterparts (and vice versa, maybe?), would it be possible to create a converter that takes maps from either side of the workflow and brings it to the other side?

    or perhaps even going from a physically based map to older rendering methods by adjusting the specular value using the roughness map?
  • PhobicGunner
    It's dead simple to convert from metalness to specular with zero human intervention.
    Unfortunately it seems it's not quite so simple to go the other way.
  • Xoliul
    Offline / Send Message
    Xoliul polycounter lvl 14
    I think Substance Designer has a converter node to go between the workflows, doing it in Photoshop is silly tedious in comparison. And you could always modify or build your own node in Designer if it doesn't do exactly what you want.
  • PhobicGunner
    SUbstance Designer's converter AFAIK only goes from metalness -> specular for now, doesn't go the other way yet.
  • Seaseme
    Offline / Send Message
    Seaseme polycounter lvl 8
    There is a method, we've been using layers in photoshop, we overlay the specular image on the base color, then in blending options we blend in everything in the metalness range to the base color just by tweaking the little sliders. It works pretty well, and can enable us to go through them very quickly. So, that's what we're going to do :)
Sign In or Register to comment.