Hi,

when scaling and/or mirroring a panel with bitmap several small 'offset-bugs' seem to occur in the bitmap:



In the case of mirroring only (scale_x/y=-1) a single pixel offset appears (in mirroring direction).

Using scale_x/y=-2 gives nearly the same effect but it´s now just a half-pixel offset.

scale_x/y=(-)16 gives the same result but the panel without mirroring displays its bitmap now shifted too.

I used engine version 8.10.1

Grüße

PS: test code
Click to reveal..
Code:
#include <acknex.h>
#include <default.c>

BMAP *_bQuad="Quad.tga";

PANEL *_pQuad1=
{
	bmap=_bQuad;
	flags=SHOW;
}

PANEL *_pQuad2=
{
	bmap=_bQuad;
	flags=SHOW;
}

PANEL *_pQuad3=
{
	bmap=_bQuad;
	flags=SHOW;
}

PANEL *_pQuad4=
{
	bmap=_bQuad;
	flags=SHOW;
}

void main()
{
	fps_max=50;

	video_mode=9;
	
	vec_set(screen_color,vector(255,255,255));
	
	var _vScale=16;
	
	_pQuad1->scale_x=_vScale;
	_pQuad1->scale_y=_vScale;
	
	_pQuad1->pos_x=1*_vScale;
	_pQuad1->pos_y=1*_vScale;
	
	_pQuad2->scale_x=-_vScale;
	_pQuad2->scale_y=_vScale;
	
	_pQuad2->pos_x=18*_vScale;
	_pQuad2->pos_y=1*_vScale;
	
	_pQuad3->scale_x=_vScale;
	_pQuad3->scale_y=-_vScale;
	
	_pQuad3->pos_x=1*_vScale;
	_pQuad3->pos_y=18*_vScale;
	
	_pQuad4->scale_x=-_vScale;
	_pQuad4->scale_y=-_vScale;
	
	_pQuad4->pos_x=18*_vScale;
	_pQuad4->pos_y=18*_vScale;
}




Last edited by Hummel; 01/05/11 20:25.