Jump to content
  • Advertisement
Sign in to follow this  
widmowyfox

visual problem with texture tiling

This topic is 856 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

Hello, i have a problem with terrain texturing, I want to make it natural but when I used tiling textures it looks like that:

 

10ncpyd.jpg

 

How can I improve visual effect? I read about random rotating UV's but I have no idea how it works.

Share this post


Link to post
Share on other sites
Advertisement

This is a well know issue. 

One solution would be to flesh out the terrain more, i.e. blend with other textures (A patch of grass that fades into the sand texture?), add supportive meshes (A cactus, a palm tree, a decrepit colonist cart partially devoured by the sand dune, and some ram skulls for good measure ;) ) 

 

Another one that can be used in conjunction with the previous solution is to use Google! no, haha sorry. But seriously, upon searching your issue in google I found something called Multi-UV mixing which appears to be the result of sampling your base texture with a replica texture at a larger resolution in your shader (I may have butchered that). The results based upon a few articles that I glanced over seem to be something worth looking into

 

(I'll include the link in the case I completely butchered the idea behind the technique)

 

http://forum.unity3d.com/threads/improved-terrain-texture-tiling.116509/

 

http://polycount.com/discussion/116254/terrain-tiling-reduction-multi-uv-mixing 

 

Marcus

Edited by markypooch

Share this post


Link to post
Share on other sites

yeah, I know about multi UV, but u know it work great on short distance but  when you have large amounts of open land this work partially.

 

But today i found this: http://forum.unity3d.com/threads/random-tiling-mask-shader.367166/

 

It operates on a similar principle but randomly turns UV (90,180,270)[that means that texture must be seamless horizontal and vertical :/] and multiplying by the basic (not rotated) texture. I'll see if anything will come of this but until tomorrow. If anyone has any other ways to fix this I'm looking forward. PS: Is there any sense in using textures bigger than 2048x2048?

Edited by widmowyfox

Share this post


Link to post
Share on other sites


PS: Is there any sense in using textures bigger than 2048x2048

 

You should use a texture size that fits your needs. It's unlikely that you'll ever be viewing a complete 4096x4096 texture in a given frame since most people's monitors aren't capable of displaying that and they're going to be looking at a lower mip level. However, if it is likely that they'll be viewing different parts of it very quickly from frame to frame, it does make sense to keep it in memory rather than paging parts in and parts out since 16 megs of texture probably isn't going to break the bank so long as you don't have a ton of them. 

 

You can use debugging tools or a custom shader to inspect the mip level you're looking at of various textures. If you're never or rarely hitting mip 0 on a large texture, it could probably stand to be dropped.

Share this post


Link to post
Share on other sites

There are many ways to mitigate this. There's no magic solution, it will take some creativity and compromises.  

 

- Use good artwork that doesn't have too many high-frequency details

- Blend with another texture that tiles at a different frequency

- Use a blend map to blend between different variations of the tiling textures

    I liked this article (from GPU Pro 2): http://www.crcnetbase.com/doi/abs/10.1201/b11325-9

    But there are many ways to go about this... you'll need good source textures though. Here's an example of what my terrain looks like using this technique: https://mtnphil.files.wordpress.com/2012/09/grid.jpg

- Add color variation and more in-world objects to make the repetition less noticeable 

Edited by phil_t

Share this post


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

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!