Hello,
ok, here we are. I have spend now some time to answer the question
Which is the best size for textures? And here is my answer.
>From a theoretical point of view I came to the following top 3:
1. The texture has the same size than the texture in the final
rendering.
2. The texture is smaller than the texture in the final rendering.
3. The texture is bigger than the texture in the final rendering.
The number 1 is simply the best solution because you have full control
over every pixel in the image. Number 2 creates only a small amount of
distortions. But the final rendering can hold nearly all information
from the source texture. Number 3 is the worse! You will loose
information. It looks like cheese from Switzerland. It will have holes
in it. Think of what would happen if you have a texture of the size
16x1 pixel which only consists of alternating black and white pixels
and you scale it down to a size of 8x1 pixels. Realsoft3D will create
8 white pixels! This is the aliasing effect. Try to use a line drawing
as a texture in Realsoft3D.
But from a practical point of view the top 3 turns around!
To have the source texture the same size than the texture in the final
rendering isnt possible, simply because the texture in the final
rendering will be distorted by the perspective. The texture in the
final rendering will have different sizes at different locations in
the texture.
If the source texture is smaller than the texture in the final
rendering than this will produce blocky images. Because there is no
information to fill the new pixels. So, many pixels will get the same
colour and the result is simply a blocky picture.
The best solution is to create the source texture bigger than the
texture in the final rendering. But to prevent the aliasing effects
you have to scan it with a higher resolution. If the source texture
has more pixel than you use for scanning, this would result in
aliasing effects. This means, you have to use as much scanning rays as
your source texture consists of. For example, if your source texture
has a size of 5000x5000 pixels, you have to setup 5000x5000 scanning
rays to prevent aliasing effects, even when the texture in the final
rendering has a size of 500x500 pixels. This would waste a great
amount of CPU time.
So, in my opinion the best solution is a source texture, which is
slightly bigger than the texture in the final rendering. After some
tests I came also to the conclusion that anti aliasing on the source
texture also helps to increase the quality of the texture in the final
rendering.
I have setup a web page which I used as a scrap book:
http://realsoft3d.turboland.de/BestTextureSize/
Its not finished yet, but it shows how I came to my opinion. I have
also done some real practical tests which doesnt shows up yet.
Now its your turn. What do you think? Whats your experiences?
--
Best wishes,
Marc Michael