Advertisement Jump to content
Sign in to follow this  

Planting Map / Texture Selection Stencils - Best Format ?

This topic is 1064 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts



On a standard terrain I want to render using a texture based on a precalculated "environment map" - i.e. Meadow Texture, Beach Texture etc. I have seen many examples use a full R8G8B8A8 "environment map" texture to allow linear sampling then blend their textures based on the weight of each channel that the sample returns.


Is there a more modern way of achieving this ? I feel that committing 8bits to each channel seems wasteful (depending on how high resolution the "environment map" is). Also the need to have multiple environment map textures since each can only depict four possible textures again seems wasteful.


Is there a common better method than this ?


I have attempted using an R8_UINT texture and using the Load() method - this gives me 255 possible texture selections - I could then do my own 4 tap interpolation and blend based on pixel world distance for each tap. Does this seem a reasonable approach or is it too computationally expensive ?


Philip H.

Share this post

Link to post
Share on other sites

I pretty much answered my own question. If I use a set of BC1_UNORM planting maps I can cram three "planting schemes" into each single textures and costs me only 4bpp. So for a set of 9 possible textures I use three BC1 textures which costs 12 bpp. I can interpolate freely between all three, and this seems quite efficient. If there are any other schemes out there I'd be interested in knowing still.

Share this post

Link to post
Share on other sites
Sign in to follow this  

  • Advertisement

Important Information

By using, you agree to our community Guidelines, Terms of Use, and Privacy Policy. is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!