Jump to content

Mesh texturing issues.


You are about to reply to a thread that has been inactive for 3950 days.

Please take a moment to consider if this thread is worth bumping.

Recommended Posts

I've been having issues lately with mesh.  With mesh on small scaler scales texturing isn't an issue.  When trying to texture larger mesh buildings however the texture gets stretched and 'fuzzy'.  I don't know what to do besides splitting the mesh into different sections, but I don't want to have 6 sections of large textures just for the floor.

 

I have a picture of the texture here to highlight the issue.

http://i1108.photobucket.com/albums/h402/Laurie7983/Firestorm-Release2013-08-1218-34-22-93_zpsb4ced29b.png

 

Tips or tricks I'm missing out on I implore you to share!!

Link to comment
Share on other sites

If your floor textures don't use shadows, there are sliders on the bottom of the texture section of the edit window that allow you to repeat the texture both horizontally and vertically a specific number of times.  Just play with the sliders until you like how it looks.  However, if your floors DO have shadows on the edges, it wont work because then you will end up with shadows where you don't want them :/

Link to comment
Share on other sites

The fuzziness is a product of the resolution. It could be that the UV map for that section of the floor is too small and needs to take up more of the total UV map. As I don't know what your UV map looks like, I can't say more. You could also up your total resolution on the texture to at least 1024.

The stretching is likely a product of how the verticies are placed, and possilby needing more verts for the mesh.

Just my thoughts, without seeing more of the model and UV.

Link to comment
Share on other sites

I feel that your individual tiles are too small in comparison to the floor area. At 1024, the highest resolution available to us, 400 tiles across are having to be defined within less than 3 pixels each, which would result in a loss of resolution (fuzziness).

 

I'd try a "larger tile" pattern [ETA quotes so the sentence parses correctly]

Link to comment
Share on other sites

Hi there!


Medhue Simoni wrote:

The fuzziness is a product of the resolution. It could be that the UV map for that section of the floor is too small and needs to take up more of the total UV map. As I don't know what your UV map looks like, I can't say more. You could also up your total resolution on the texture to at least 1024.

The stretching is likely a product of how the verticies are placed, and possilby needing more verts for the mesh.

Just my thoughts, without seeing more of the model and UV.

The texture used is 1024x1024.  I'm showing a screenshot of the UV map of the mesh object below:

http://i1108.photobucket.com/albums/h402/Laurie7983/4f35aae82f6196bb071cde71948c7480c503b47e_zps50280f5c.jpg


I'm not sure how to change the resolution/repeats without going outside the UV box.

Link to comment
Share on other sites


Laurie7983 Gothly wrote:

 

I'm not sure how to change the resolution/repeats without going outside the UV box.

If you don't use shadows or other baked in properties, nothing prevents you from going outside of the box. Here's an example I used in another thread:

house example.PNG

 

You can also use a texture repeat in SL as suggested before.

In this example I did both. The UV map 4 times as big as the texture, then on top of that a 4x4 texture repeat. You can see that in the material editor (the tiling) and you should also set this in the SL edit menu.

That way you should be able to use a 512x512 texture and get very good results, possibly even 256x256. There is absolutely no need for huge textures that degrade performance for a floor like this.

Link to comment
Share on other sites

I can think of two things.

First one is one to avoid like the plague. Split up your floor into multiple planes and texture them seperately. This would be the "texture memory killer" option. For example, a 4x1024x1024 floor would use 12MB of texture memory, quite a lot for the low end computers out there and a big chunk out of the 512MB SL lets us use.

Second one is a bit more complex and can be a bit tricky. I'm also not sure if it will survive future updates to the render system, but it has worked from the moment we got mesh until now. In 3ds max, copy your floor, assign a new material (or ID) to it and attach it to your original floor. The one floor you can texture using repeats, the other floor you can texture with a lower resolution shadows or occlusion map. Make sure the occlusion/shadows map you upload to SL is transparant/opaque rather than black/white. The two floors will have two faces in SL, just like any other object with two materials.

In 3ds max you will probably see the textures flickering. In SL one will show on top of the other though, without any glitches. This way you can have something similair to two layers in photoshop. It should even work with more than two layers, but you might have a terrible time selecting the correct face in SL if you do that, I think only a script would work then.

Kitsune Shan has a blogpost on this "trick". In fact I think that's where I picked up the idea.

Link to comment
Share on other sites

This works because the shadow (or ao) map can be much lower resolution than the diffuse map and the diffuse map can be tiled. I believe there vis at least one jira feature request to have this formally added to the materials system. Right now, you can use different sizes and repeats in the normal and specular maps, which can get some savings that way. The idea would be to allow a second diffuse texture, with independent size and repeats, that would be overlayed (multiplied is all that's needed for shadows) on the tiled diffuse texture. This would allow a 1024x1024 texture. for a tiled floor with ao, to be replaced by two 128x128 textures, a 128x128 tile with 8x repeats and a single 128x128 shadow map. That's an eight-fold reduction in download data size. It would also remove potential problems with alpha overlaying with other transparent textures. Only one channel is needed for the shadows, so the others would be available for something else. Of course, the viewer would have to combine the diffuse textures before they were put into the gpu (or can gpus do it?). So there would be no saving of gpu memory, but none extra would be used. I guess the objection would be not wanting yet another potentiall huge map, but size could be capped and repeats limited to 1x1. The texture download savings are potentially huge.

Link to comment
Share on other sites

Somehow I don't think LL will ever do this.

Let's call shadows and occlusion an "advanced" feature. Advanced features take more from a computer than just the basic features like a diffuse texture. Like in pretty much any engine, the shadows and occlusion are added by LL as a global and personal option. Adding a second way seems a bit ... odd.

I do agree it could save a ton of memory when implemented right. 128 or 256 square as a maximum should be plenty. Not allowing repeats I don't understand though.

Maybe LL needs to tune the LI system again and include texture size. Then adding a second or even third diffuse layer would be safe. It would need a "are you really really sure you want to replace this 256x256 texture with a 1024x1024 one?" feature so people won't get all their items returned when editing them. It would be fair, but I don't see that happening too. So much scenarios where people would get their things handed back to them.

EDIT

The last thing you'd want is the viewer combining the textures before they go to the graphics card, that would be baking the texture onto a 1x1 texture again, either making a 4x4 repeat huge or making it blurry again. Maybe that's the entire problem.

 

Link to comment
Share on other sites

You are probaly right. but there are problems with the inbuilt ao. To get the best effects, you need to use different ao distance dependence and falloff for different sized objects, but the inworld ao doesn't seem to allow this (I might be wrong there). Then, of course, there is probably a majority of users who can't turn it on anyway.

Link to comment
Share on other sites


Kwakkelde Kwak wrote:

I can think of two things.

First one is one to avoid like the plague. Split up your floor into multiple planes and texture them seperately. This would be the "texture memory killer" option. For example, a 4x1024x1024 floor would use 12MB of texture memory, quite a lot for the low end computers out there and a big chunk out of the 512MB SL lets us use.

Second one is a bit more complex and can be a bit tricky. I'm also not sure if it will survive future updates to the render system, but it has worked from the moment we got mesh until now. In 3ds max, copy your floor, assign a new material (or ID) to it and attach it to your original floor. The one floor you can texture using repeats, the other floor you can texture with a lower resolution shadows or occlusion map. Make sure the occlusion/shadows map you upload to SL is transparant/opaque rather than black/white. The two floors will have two faces in SL, just like any other object with two materials.

In 3ds max you will probably see the textures flickering. In SL one will show on top of the other though, without any glitches. This way you can have something similair to two layers in photoshop. It should even work with more than two layers, but you might have a terrible time selecting the correct face in SL if you do that, I think only a script would work then.

Kitsune Shan has a
on this "trick". In fact I think that's where I picked up the idea.

Thank you for the reply!  Firstly, I'm glad you told Me about the plague option.  That was the first choice I -was- going to attempt.

Secondly, you made it really click on why/how limited our use of texture space is when you regarded it that was.  (Why does SL only have 512MB when there are cards that support 4Gigs?)

Thirdly, thank you thank you thank you!  I think that trick is -exactly- what I'm looking for and I think it will work.  I'm doing testing on it now and will post results here.

 

EDIT:

 

Works FANTASTICALLY!  For very large spaces we will be using this method.  Thanks a bunch!

Link to comment
Share on other sites

You are about to reply to a thread that has been inactive for 3950 days.

Please take a moment to consider if this thread is worth bumping.

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
 Share

×
×
  • Create New...