Originally Posted By: txesmi
Hi,
It does not happen on my computer.
The engine loads some functionalities when a level is loaded. Try loading an empty level... just guessing.
txes


I've tried also with loading a level before, but not working.
Here is the main.c Code I'm using to try it. I have 5 draw_quad calls, but just the first three of them are drawn. Did I something wrong?
Could you try it on your pc? Size.x is 1440px

Code:
#include <acknex.h>

// Material skills
#define skPosX       skill9  // X coord relative to the center of the map in map coords (centered on the screen)
#define skPosY       skill10 // Y coord
#define skScale      skill11 // scale of the map
#define skScaleNext  skill12 // needed a map scale smooth transition variable

void main ()
{
	video_mode = 10;
	mouse_mode = 4;
	fps_max = 60;

	wait(1);

	BMAP *bmpMap = bmap_createblack(1920,1200,32);
	
	BMAP *bmpScreen = bmap_createblack(1920,1200,24);
	PANEL *panScreen = pan_create ( "flags=SHOW", 1 );
	panScreen->bmap = bmpScreen;
	MATERIAL *mtlCamMap = mtl_create ();
	mtlCamMap->skPosX = 0;
	mtlCamMap->skPosY = 0;
	mtlCamMap->skScale = 1;
	mtlCamMap->skScaleNext = mtlCamMap->skScale;
	effect_load ( mtlCamMap, "display_map.fx" );
	
	mtlCamMap->skill4 = floatd ( bmap_height(bmpScreen) * bmap_width(bmpMap), bmap_width(bmpScreen) * bmap_height(bmpMap) );
	var nProp = bmap_width(bmpScreen) / bmap_width(bmpMap);

	var x=100;
	
	bmap_zbuffer(bmap_createblack(2048,2048,32));
	
	while ( !key_esc )
	{
		//------------

		bmap_rendertarget(bmpMap,0,0);
		
		draw_quad(NULL,vector(-50,20,0),NULL,vector(100,100,0),NULL,vector(200,200,200),100,NULL);	
		draw_quad(NULL,vector(500,20,0),NULL,vector(100,100,0),NULL,vector(200,200,200),100,NULL);	
		draw_quad(NULL,vector(1000,20,0),NULL,vector(100,100,0),NULL,vector(200,200,200),100,NULL);	
		draw_quad(NULL,vector(1450,20,0),NULL,vector(100,100,0),NULL,vector(200,200,200),100,NULL);	
		draw_quad(NULL,vector(2000,20,0),NULL,vector(100,100,0),NULL,vector(200,200,200),100,NULL);	
		
		bmap_rendertarget(NULL,0,0);
		
		//----------
		
		if ( mouse_left )
		{
			mtlCamMap->skPosX += mickey.x / mtlCamMap->skScale;
			mtlCamMap->skPosY += mickey.y / mtlCamMap->skScale;
		}
		
		if ( mickey.z )
		{
			mtlCamMap->skScaleNext = clamp ( mtlCamMap->skScaleNext + sign(mickey.z),0.001, 1000 );
		}
		mtlCamMap->skScale += ( mtlCamMap->skScaleNext - mtlCamMap->skScale ) * time_step * 0.5;
		
		mtlCamMap->skill1 = floatd ( mtlCamMap->skPosX, bmap_width(bmpMap) );
		mtlCamMap->skill2 = floatd ( mtlCamMap->skPosY, bmap_height(bmpMap) );
		mtlCamMap->skill3 = floatd ( nProp, mtlCamMap->skScale );
		mtlCamMap->skill5 = floatd ( 0.5, bmap_width(bmpMap) * mtlCamMap->skScale );
		mtlCamMap->skill6 = floatd ( 0.5, bmap_height(bmpMap) * mtlCamMap->skScale );
		
		bmap_process ( bmpScreen, bmpMap, mtlCamMap );
		
		
		wait(1);
	}
	
	mtl_remove ( mtlCamMap );
	pan_remove ( panScreen );
	bmap_remove ( bmpScreen );
	bmap_remove ( bmpMap );
	
	sys_exit ( NULL );
}