Hrmpf,
I debugged all values into a floatingpoint bitmap and accessed the data through bmap.finalbits.
So, now I know that VPOS has no offset.
I debuged every other value, too.
TEXCOORD0 starts with an half pixel offset.
So the thing I do not understand is this.
I have two bitmaps of exactly the same size.
For testing purposes I sampled the second bitmap through tex2D('sampler', 'TEXCOORD0').
Texture mtlSkin1;
sampler2D smpSrc = sampler_state
{
texture = <mtlSkin1>;
MipFilter = NONE;
MinFilter = NONE;
MagFilter = NONE;
};
float4 process_debug(in float2 tex: TEXCOORD0): COLOR
{
float4 color = 1;
color = tex2D(smpSrc, tex);
return color;
}
I thought if you want to sample a texture your texture range is always 0.0 - 1.0.
But the output showed me much smaller copy of the original. And it is not even the half of the original.
I can't get, how the ratio between the two bitmaps is calculated.
In my example it is x(1.0 to 0.6) and y(1.0 to ca. 0.7).
Ok, if the bitmaps are not the same size I could imagine that this has to do something with a size ratio between the two bitmaps. But this things have the same size. So the size ratio is 1.0.
Do I have to do something special declaring the sampler?