Archived

This topic is now archived and is closed to further replies.

BlackThirteen

Can we set a better resolution for texture?

Recommended Posts

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!"

Share this post


Link to post
Share on other sites
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.

Share this post


Link to post
Share on other sites
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.

Share this post


Link to post
Share on other sites
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.

Share this post


Link to post
Share on other sites
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.

Share this post


Link to post
Share on other sites
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.

Share this post


Link to post
Share on other sites
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.

Share this post


Link to post
Share on other sites