Quote:
Doing it via the camera/position is preferred

Then you should move the camera instead of rotating the model.

The following code should give you a good start:

Code:
BMAP* bmp_view_button1 = "filename here";
...

void view_button(var num) {

	if(player) {

		switch(num) {
			
			case 1:
			vec_set(player.pan,vector(180,0,0)); // front
			break;
			
			case 2:
			vec_set(player.pan,vector(0,0,0)); // back
			break;
			
			case 3:
			vec_set(player.pan,vector(90,0,0)); // side
			break;
			
			case 4:
			vec_set(player.pan,vector(0,90,0)); // top
			break;
			
			case 5:
			vec_set(player.pan,vector(0,-90,0)); // bottom
			
		}

		
	}
}

PANEL* pnl_view_buttons = {
	
	button(0,0,bmp_view_button1,bmp_view_button1,bmp_view_button1,view_button,NULL,NULL);
	...
	button(0,4 * your button height,bmp_view_button5,bmp_view_button5,bmp_view_button5,view_button,NULL,NULL);
	
	flags = SHOW;
	
}

action rotate()
{
	player = me;
	mouse_mode = 1;
	while(1)
	{
		if (mouse_left){
			my.pan += mouse_force.x;	
			my.tilt += mouse_force.y;
		}
		
		vec_set(mouse_pos,mouse_cursor);
		
		wait(1);
	}
}



I've assumed that your camera is at 0,0,0 and your model is in front of the camera, that means its position is x,0,0 (in WED).


"Falls das Resultat nicht einfach nur dermassen gut aussieht, sollten Sie nochmal von vorn anfangen..." - Manual

Check out my new game: Pogostuck: Rage With Your Friends