Home Technical Talk

Texture Question

freetoplay
node
Is it possible to change the color of a texture image, by changing the material color? Or would I have to completely swap a texture image that has a different color? For example: I have a hat mesh with a colored image for the texture. One way to change the color of this hat is to swap it with a texture image of another color, but I am wondering if I can just keep the texture image, while changing the color by changing the material color?

Replies

  • CrackRockSteady
    That should be possible but I guess it depends what software you're using.  Game engines usually have some way to adjust Hue/Saturation/brightness through the material.  I'm assuming that is also possible to do through materials in 3ds Max or Maya but I'm not certain.
  • SeveredScion
    Offline / Send Message
    SeveredScion polycounter lvl 12
    It is possible if the shader you are using is set up to allow it. Varies per software.

    Examples:
    Maya - diffuse texture automatically overrides diffuse color value.
    3ds Max - diffuse texture automatically overrides diffuse color value, but there is also a map % parameter for every texture channel available by default, so you can set bright red diffuse color, add a diffuse map, and turn the map down to 50%, and it will then be mixed with red.
    Unity - albedo texture map automatically gets multiplied by albedo color. So if the albedo color is anything other than 255-white, it will darken the albedo texture map. If albedo color has saturation anything about 0%, it will tint the albedo texture map.

    Disclaimer - I've mostly been working in 3ds Max lately. I'm describing describing default behaviors of all these softwares but maybe the defaults have changed in recent versions of Maya or Unity. 

    Addendum - "multiply" in the Unity examples works like "multiply" layer blending mode in Photoshop, which is pretty standard in graphics. RGB values are treated as decimals, with 1 being 100% of that RGB value, or 255. So anything not at 100% brightness value will darken what it's being multiplied with, since it's multiplying by a number between 0 and 1.
  • uncle808us
    Offline / Send Message
    uncle808us polycounter lvl 4
    In my 3D software Cheetah 3D you can do this with the mix setting.
  • Alex_J
    Offline / Send Message
    Alex_J grand marshal polycounter
    Check out the polycount wiki and read up on shaders and textures. I suspect you are confusing some terms -- very understandable because the meaning of the technical terms isn't exactly the same as their ordinary usage. Looks like your question is already answered, but I'll add just for reiteration : yes, absolutely you can change the color of your model by using the material/shader. Many programs have a standard shader that allows you to change the tint. But you can actually create shaders that can allow you to do pretty much an infinite variety of things. 

    To get a great crash course in creating shaders without having to get deep into any coding, check out Unreal Engine basic material creation tutorials on youtube. Unreal uses a very easy to understand node graph that will help you wrap your head around how shaders and textures work in a fun and intuitive way.



  • Eric Chadwick
    To give you an idea of what's possible with tinting, here's a project I did with extreme tinting in Unity. All the textures are greyscale, all the color is done with custom shaders.
    https://polycount.com/discussion/160691/sketchbook-eric-chadwick/p1

    Here's another example of extreme tinting, made by Snefer in Unreal
    https://polycount.com/discussion/89682/an-exercise-in-modular-textures-scifi-lab-udk/p1
Sign In or Register to comment.