Can we set a better resolution for texture?

Started by
7 comments, last by BlackThirteen 20 years, 3 months ago
Is it possible to get a better resolution for texture? When I get near a surface with a texture, it is too much pixalized. I tried to load a larger picture and it didn''t change anything. There is something else I would love to know; can we apply a texture in mosaic on a surface instead of being stretched? "I''''ve never dared handle it, but I''''ve seen it. Felt its power. Christ the Man Jesus help me, I have Black Thirteen under the floorboards of my church. And it''''s come alive!"
Advertisement
Textures will always start to look worse as you zoom into them. Using normal means, one can only lessen the effect by using higher texture resolutions or by using a detail texture. The only other way to avoid this is to dynamically generate a procedural texture in a fragment program. However, this can be quite costly, has high hardware requirements, and its usefulness is limited.
-Ostsol
You can also use detail textures to minimize the effect.

Nice quote, btw
Do a google search for MIP maps. A MIP map is a list of textures, each half the size of the other. OpenGL has a command to generate MIP maps, and I think DX has one to.
ok thank you for your answer. I will do some search about it. The fact is that I would love to use a texture resolution near to the one used in Star Fox Adventure. When you approach the wall, you still see the details.



"I''''ve never dared handle it, but I''''ve seen it. Felt its power. Christ the Man Jesus help me, I have Black Thirteen under the floorboards of my church. And it''''s come alive!"

Stephen King''s Dark Tower V - Wolf of the Calla.
quote:Original post by Evangelion
Do a google search for MIP maps. A MIP map is a list of textures, each half the size of the other. OpenGL has a command to generate MIP maps, and I think DX has one to.
Mipmaps won''t solve the problem he''s describing.
If you want it to mosaic.. I assume this means you want the texture to repeat. To do this, you set the texturing (API dependant) to repeat the texture for texture coordinates outside [0,1] (as opposed to clamping them). Then, for the number of times you want it repeated in each axis... you just use a multiple of 1... ie if you texture a quad with [0,5]x[0,5] you get the texture repeated 5 times. You can also select that every second copy be mirrored (sometimes more appropriate). As for textures appearing pixelized.. Make sure you have the appropriate (bilinear) magnification filter turned on. This will soften the texture''s appearance, rather than harsh pixel artifacts. As to the texture looking sharp close up, this comes down to how close the user may get... if you have less texels than pixels.. some interpolation must take place. Anything more that 1 texel per 4 pixels, and the softening becomes fairly apparent. There are several possible solutions. One is to prevent the user from getting close enough to the surface that the texturing issues become apparent; this may or may not be viable. This however must always be done to some extent or the user will feel as if they are passing through objects (not good). Another solution, and possibly suitable is to use higher resolution textures... Remember a mipmapped 1024x1024 texture with alpha takes up 6mb (I may have miscalculated, so don''t take it as gospel)... this means that having all textures very highres is not going to be very practical (I guess a lot of consumers have 32mb cards.. though 256mb ones are around, in which case 6mb doesn''t sound so bad). You could use a highres texture of this sort for only certain objects that require being viewed at very close range. The other option is to use detail textures. These are basically special highres textures that get used only at very close range. This means (often) they don''t need to be resident in texture memory at all times... thus a lot of the concerns regarding res are reduced. For terrains a more generic version called texture splatting can also be used.
I don''t know if you took that into account (I''m just posting this before I go so I cant check ) but according to most books I read on 3d, mip maps aren''t simply the same texture at different size stored into VRAM. Apparently, they use some kind of compression to make it use less space. I hope some other poster can shed more light on this as I''ve never had much more details myself and it''s intriguing.
The point of mipmaps is not compression, it''s image quality. By storing images sampled at different sizes, you can minimise texture aliasing (flickering etc). In the simplest case, bilinear filtering, what happens is a mipmap texture image is selected according to the size of the texels on screen, to make that ratio as close to 1:1 as possible, so you end up with an appropriately sampled image as a texture.

____________________________________________________________www.elf-stone.com | Automated GL Extension Loading: GLee 5.00 for Win32 and Linux

This topic is closed to new replies.

Advertisement