Hello.
I am fairly new to 3D art in general. I do not know how to sculpt, i instead reverse engineered existing models and followed some tutorials. I created all the texture files manually.
I expected some issues because of my decision to paint every texture file, however i came across an odd issue that i just can't wrap my head around.
Basically; some artifacts are created that ruin the smooth edges between parts of the model that have different texture properties; (Shoulder pads for Spirit Breaker)
I disabled the normal map (flat color) to see if it was causing the issue however the top picture already doesn't have the normal map and the issue is there.
Next i tried to disable other channels, by giving them flat colors, and try to find out what was causing the messy transition between the outer gray metal part and the inner blue part. Here is another picture with the color file replaced with a flat gray one;
The issue is much more apparent in the picture to the top.
Next, in an attempt to narrow the channels down, i , one by one, replaced every single channel with a solid color, except for "mask 2 green channel " which has the rimlight information which i assumed to be trivial, however;
Some weird artifacts were still there. The only time these artifacts disappeared is when when i gave the Mask 2 Blue channel a solitary color, this was deceptive however since this channel merely made the issue more apparent due to exaggarated lighting rather then to cause it as i managed to spot some artifacts that were barely visible (though at that point i might have gone mad). Disabling rimlight alone does not get rid of the problem either!
The problem only happens with Spirit Breaker's shoulders, and despite using the same exact values on other bits of armor (such as the lower armor on the belt that is visible on the first picture) the problem does not occur on anywhere else. This could be because the shoulders have a huge model despite having a relatively small texture size causing the issue to be more apparent but im not sure.
I have spent years working on a set for Dota 2, this is actually the 4th set im making, every time i learn more and more about 3D art and decide to re-do the set, as a result i can safely say that i have been working on this for at least 3 years, and now that i am at the brink of finally publishing something i am happy with, facing this issue has frustrated me to no end. I would be truly grateful if anyone could help me out with the issue.
I can upload more pictures if needed, such as the texture files themselves.
Thank you in advance.
Replies
A quick guess is that it needs more padding for mips.
Im using Blender for modelling.
Thank you for the extremely fast response.
A screenshot from blender:
Thank you for the response.
My game settings were indeed not max. I maxed the render quality and everything and viewed the model again, however the problem did not go away.
I resized the image to "256 x 256" as stated by valve and i noticed something weird around the edges:
The edges appear a bit brighter then they are supposed to be (mask 2 alpha channel to the left and mask 2 blue channel to the right). Could this be causing the issue? I must point out that the size of the pixels still do not match that of the artifacts as they appear a lot bigger, however i am ready to try anything at this point.
Dxt is a compression format that takes up 1/4 of the size it's uncompressed counterpart would. Almost every texture in dota2 uses it regardless of resolution.
How it works is it divides the texture into 4 by 4 chunks and creates a palette of 4 colors to use in that chunk.
This is why artifacts appear in large blocks across the whole texture despite having a very reasonable resolution. Artifacts are of course worsened when the resolution is lowered even further.
It's not perfect by any means. Dxt can be outright nasty; especially to normalmaps.
While it's supposed to sample 4 colors and work from there it has a bias for the green channel if all other rgb channel are filled. The red and blue channels (specular and basetint) are often loaded with artifacts. In contrast the alpha is generally cleanly compressed.
Here is an example of dxt on one of my mask2 textures. Uncompressed on top and dxt compressed on the bottom.
Ordered rgb, r, g, b, a.
It's not really something you can fix. Although it compresses with slightly less artifacts if you reduce the resolution of your textures to their ingame res before running them through the importer.
I see. Thank you very much. I am relieved to find out the cause of the problem, i was going insane toggling channels on and off trying to find the culprit, little did i know it had to do with compressing.
Thanks again, i really appreciate it.
I did as you recommended and lowered the texture size down to 256 x 256 as it appears in game. I also sort of trimmed the edges of the brighter parts of the blue channel. I must say it look much better now and the artifacts are barely noticeable.
Thanks again for everyones help.