Texture aspect ratio - Does it matter?

Started by
54 comments, last by cgrant 6 years, 2 months ago
Just now, Scouting Ninja said:

How so? Pixels will still bleed into each other if you use the wrong types of mips and irregular geometry stays the same no matter if the texture is long or square.

Changing the shape of your texture does not change the way it all works.

Can you show a small example of what your trying to do? 

In your first example image each 64x64 part should tile in the up direction, not horizontally. With them layed out like that each part will be tiled automatically in the shader, in one direction.

Advertisement
Just now, CarlML said:

In your first example image each 64x64 part should tile in the up direction, not horizontally. With them layed out like that each part will be tiled automatically in the shader, in one direction.

long2.thumb.jpg.8480a3d3f792ce913bd4458e116a0626.jpg

Fat2.jpg.92d21bbfeff6b487e48777adf6cb5dff.jpg

Same thing, just less friendly to use by the post.

4 minutes ago, CarlML said:

With them layed out like that each part will be tiled automatically in the shader, in one direction.

This won't matter, your shader can read it both ways.

4 minutes ago, Scouting Ninja said:

long2.thumb.jpg.8480a3d3f792ce913bd4458e116a0626.jpg

Fat2.jpg.92d21bbfeff6b487e48777adf6cb5dff.jpg

Same thing, just less friendly to use by the post.

It only tiles becuase you have the same image in every square... There is no use having an atlas with the same texture repeated. Nothing would tile naturally if you have a unique texture in each square.

Again, in the top example it should tile the other way for the idea to work.

1 minute ago, CarlML said:

It only tiles becuase you have the same image in every square... There is no use having an atlas with the same texture repeated. Nothing would tile naturally if you have a unique texture in each square.

I am a professional artist, making textures that tile is 25% part of my job. I promise you there are no textures I can't make tile. If you wait a while I will make the texture using some google images.

So what your saying is that your shader is going to scroll down from above to change the background? Will this be like a side scroller platformer but down words?

 

I also want to point out that if your yous storing textures of game objects, the only thing that matters is that the UV map is mapped correctly. The whole point of UV maps is to find parts of a texture no matter where they are.

7 minutes ago, Scouting Ninja said:

I am a professional artist, making textures that tile is 25% part of my job. I promise you there are no textures I can't make tile. If you wait a while I will make the texture using some google images.

So what your saying is that your shader is going to scroll down from above to change the background? Will this be like a side scroller platformer but down words?

For a texture to tile it needs to have the same values on each side. A texture atlas is basically just a big texture so the same rules apply for that. Your second example would not tile at all unless you repeat the mesh using the same part of the texture, it won't tile over a single face for example.

10 minutes ago, CarlML said:

Your second example would not tile at all unless you repeat the mesh using the same part of the texture, it won't tile over a single face for example.

It's difficult to figure out what your trying to do from this. If your moving the pixel buffer it won't matter, it's an array anyway but if you plan on scrolling with the UV then it will matter.

If you also plan on tiling the texture to make a larger texture it will also matter but you plan to do it in only one direction there are easier ways to do it.

What is it you want to do?

13 minutes ago, Scouting Ninja said:

It's difficult to figure out what your trying to do from this. If your moving the pixel buffer it won't matter, it's an array anyway but if you plan on scrolling with the UV then it will matter.

If you also plan on tiling the texture to make a larger texture it will also matter but you plan to do it in only one direction there are easier ways to do it.

What is it you want to do?

When the uv´'s go outside 0.0<->1.0 the texture is automatically wrapped and tiled, this only works if the texture is layed out as I described. Having to align all faces to the uv borders of the local texture in the atlas is not a pleasant thing, especially for irregular geometry. With my example you can go over the uv borders freely, in one direction. So for an example you can tile a wall texture across a long wall consisting of only two triangles.

11 minutes ago, CarlML said:

When the uv´'s go outside 0.0<->1.0 the texture is automatically wrapped and tiled

To do this with the UV just use a long polygon cut into X amount as your rows. And scroll the object instead of the UV map. 1 vs 4 polygons won't matter and is very easy to do.

Here is what I mean:

Example.jpg.a60f46f0ca1dd6775071034ad24f2e5f.jpg

See you use 4 polygons to make the rows into long strips. Here is the texture used in the example.

1uickLong.thumb.jpg.083d32dc088afba69cd83afc1350798e.jpg

QuickFat.jpg.a4be5c631aa2cfddbf7fc4dc82b5fbf8.jpg

I only made 5 images seamless, to show how it works. 5 is odd so they don't end up side by side.

 

Else you need to learn how pixels are stored in the buffer so you can scroll them. Or you can just stick with what you have and make DirectX 11 computers the target.

Nothing in that image tiles when uv's go outside 0.0<->1.0, as it should. That's the point. Splitting up and tiling the mesh is not a good option, it might sound easy when it comes to square polygons but it becomes a headache when dealing with something like an irregular cliff wall that is not easily divided into square chunks. You're likely to get visible seams then, especially when using parallax occlusion mapping, which I am. With parallax occlusion mapping you're likely to spot areas outside the texture area when viewing it at oblique angles. Having it tiling fully counters that somewhat.

This topic is closed to new replies.

Advertisement