Scaling textures questions


Glidias
07-21-2004, 01:42 AM
I know that (if you want sharpness for non-tiling textures), you should do something like scale the texture down by a factor of 2 (0.5 and 0.25 for example). This is how you get extremely sharp looking textures. However, if you scale it down by something odd (eg. 0.4), what the engine does is scale the texture down to 0.25 first (the lower factor-2 number), then stretch it back up to 0.4 according to the specficiations. Thus, you get an even blurer texture than what you normally aspect. I know engine must work that way because they use bitshift operators (very effecient and fast), to round down textures in the iteration by constantly dividing it by 2.

Also, textures must be base-2 sizes having dimensions of 16, 32, 64, 128, and 256. Any odd dimensions like 192 would lead to blurriness.

As you know, the subdivide is fixed at 240. Now, i tried using 240x240 brush surface with a special 256x256 texture with 240x240 tilable content within it and black border for unoccupied space). Experienced mappers would know of this method. This is normally used on walls and houses and especially surfaces that are non-tiling. Unfortunatley, the hardware rendering pixel smoothing would cause black edges to appear at the edges of the 240x240 patch. I wonder, is there anyway to avoid this? Lol...don't tell me to use software rendering! Whatever methods i choose, it seems there will ALWAYS be seams and images with 240x240 content is NEVER suited for tiling. If i stick to the standard 256x256 texture method, each brush surface patch on the ground would consist of 4 wpoly each! And not forgetting the fact that there is vis-portal splitting that you totally can't control! If i could lower such polycount by half or quarter using 240x240 patches, it would be so much better, wouldn't it? I could use 240x240 patches of brush surfaces, but unfortunately there WILL be seams when using a 256x256 texture. What i want is for every brush surface to account for 1 wpoly each. But doing so would obviously result in texture seams. Is there anyway to have seamless-looking terrain where almost each patch accounts to 1 poly?

One thing is for certain, if it's possible to size a brush dimension down to 240xx instead of your normal 256xx, do it! You lose 16 units of game space but save 2-3 wpoly per tile. One thing i realised: It seems that if you want properly aligned textures with no seams between brushes, you've got to pay dearly in terms of r_speeds! Why? Because 256 and 240 don't match :(

Craftos
07-21-2004, 03:46 AM
I think that you have to live with it (not for too long though, till HL2 release :) ).

You could dump software renderer compatibity and order compiler to subdivide by 256. I have tried this in the past but Batch Compiler 2.0.2 had bug that he always used 240 subdivider. After editing BAT file it worked ok, map worked well in opengl mode.

Day of Defeat Forum Archive created by Neil Jedrzejewski.

This in an partial archive of the old Day of Defeat forums orignally hosted by Valve Software LLC.
Material has been archived for the purpose of creating a knowledge base from messages posted between 2003 and 2008.