Close up, my leaves are colored nicely. But far away, they're a completely different shade. I have no idea what's causing this. This doesn't happen with any other resource back I've had.
I've tried deleting the custom colored maps, reverting back to the default maps, etc. But none of them work
Close up, my leaves are colored nicely. But far away, they're a completely different shade. I have no idea what's causing this. This doesn't happen with any other resource back I've had.
I've tried deleting the custom colored maps, reverting back to the default maps, etc. But none of them work
Any ideas on what's happening?
Yes, I can not only tell you exactly what's happening but also how to fix it.
What's happening is an odd interaction between mipmapping and transparency. If you turn your mipmap levels to 0 you'll notice that it stops happening. Likewise, it doesn't happen on purely opaque blocks. (If you had a more conventional grass side, it would likely suffer a bit of this for the same reason.)
To understand why this is happening, you first need to understand a bit about the .png file format. See, when a .png file is saved it saves color and transparency information for every pixel. This means that even the 100% transparent pixels still have color information saved even though it's not used. Some editors will try to optimize this space by filling it with solid black or, in your case, solid white.
So what mipmapping does is it generates progressively lower-resolution versions of textures to display from farther away. This makes sense as you're not seeing the full resolution from that distance, so why spend the processing power rendering it? Of course, Minecraft does this in a quick and dirty way by just lowering the resolution.
Here's the problem though: It doesn't take transparency into account when doing this the way that an image editor would. Instead, it lowers the resolution of the color channels separately from the alpha channel using different methods. This allows it to preserve the "all or nothing" binary transparency while blending the colors smoothly. And because the colors are blended smoothly, that means that some of that white that you can't see because it's masked by transparency is getting mixed in - hence the reason it's becoming lighter.
So how do you get rid of it? Well in older versions of Minecraft leaves actually had two textures - a normal transparent version and a "fast" all-opaque version. The game still has a setting for this, but it works just a little differently. Instead of changing between two textures, what it does is just turns off the alpha channel (the transparency) for the leaf textures. I bring this up because you'll want to do the same thing. Create an opaque leaf texture in addition to your normal one.
Once you've done that you can use this opaque texture to fix the problem. In your image editor, open both leaf textures. Take the "fast" version and put it in a layer behind/under your normal transparent one. Then, set it's opacity to 1%. Minecraft will normally just cull transparency set to such a low value as it's deemed not worth rendering. On the other hand, having the texture partially opaque your image editor will save all of that lovely color information in those transparent areas, and thus won't fill them with white.
Oh, and as a bonus anyone playing with your pack who has to use Fast Graphics for whatever reason will have nicer looking leaves! Everyone wins!
Close up, my leaves are colored nicely. But far away, they're a completely different shade. I have no idea what's causing this. This doesn't happen with any other resource back I've had.
I've tried deleting the custom colored maps, reverting back to the default maps, etc. But none of them work
Any ideas on what's happening?
I'm not sure but could it be that smooth lightning is off? it made my leaves look weird as well.
was dis
Yes, I can not only tell you exactly what's happening but also how to fix it.
What's happening is an odd interaction between mipmapping and transparency. If you turn your mipmap levels to 0 you'll notice that it stops happening. Likewise, it doesn't happen on purely opaque blocks. (If you had a more conventional grass side, it would likely suffer a bit of this for the same reason.)
To understand why this is happening, you first need to understand a bit about the .png file format. See, when a .png file is saved it saves color and transparency information for every pixel. This means that even the 100% transparent pixels still have color information saved even though it's not used. Some editors will try to optimize this space by filling it with solid black or, in your case, solid white.
So what mipmapping does is it generates progressively lower-resolution versions of textures to display from farther away. This makes sense as you're not seeing the full resolution from that distance, so why spend the processing power rendering it? Of course, Minecraft does this in a quick and dirty way by just lowering the resolution.
Here's the problem though: It doesn't take transparency into account when doing this the way that an image editor would. Instead, it lowers the resolution of the color channels separately from the alpha channel using different methods. This allows it to preserve the "all or nothing" binary transparency while blending the colors smoothly. And because the colors are blended smoothly, that means that some of that white that you can't see because it's masked by transparency is getting mixed in - hence the reason it's becoming lighter.
So how do you get rid of it? Well in older versions of Minecraft leaves actually had two textures - a normal transparent version and a "fast" all-opaque version. The game still has a setting for this, but it works just a little differently. Instead of changing between two textures, what it does is just turns off the alpha channel (the transparency) for the leaf textures. I bring this up because you'll want to do the same thing. Create an opaque leaf texture in addition to your normal one.
Once you've done that you can use this opaque texture to fix the problem. In your image editor, open both leaf textures. Take the "fast" version and put it in a layer behind/under your normal transparent one. Then, set it's opacity to 1%. Minecraft will normally just cull transparency set to such a low value as it's deemed not worth rendering. On the other hand, having the texture partially opaque your image editor will save all of that lovely color information in those transparent areas, and thus won't fill them with white.
Oh, and as a bonus anyone playing with your pack who has to use Fast Graphics for whatever reason will have nicer looking leaves! Everyone wins!
I hope that helps you.
Hey! You just fixed another issue I was having with fast leaves! Thanks!
I'm so glad that there's a fix for it