TGC Codebase Backup



Third Person Camera Function by Movian

6th Apr 2008 8:02
Summary

Third Person Camera Function



Description

This Function will provide a basic ThirdPerson Camera
Simply give it the Object ID you wish to follow and it should do so :)



Code
                                    ` This code was downloaded from The Game Creators
                                    ` It is reproduced here with full permission
                                    ` http://www.thegamecreators.com
                                    
                                    	float fCameraAngleX = 0.0f;
	float fCameraAngleY = 0.0f;
	float my,mx;

void ThirdPerson (int obj)
{
	my = dbMouseMoveY ( );
	mx = dbMouseMoveX ( );
	float x = dbCameraAngleX ();
	float y = dbCameraAngleY ();
	float z = dbCameraAngleZ ();

		dbPositionCamera( dbObjectPositionX(obj),dbObjectPositionY(obj),dbObjectPositionZ(obj) );
		dbRotateCamera( dbObjectAngleX(obj),dbObjectAngleY(obj),dbObjectAngleZ(obj) );
		dbPitchCameraDown (40);
		dbMoveCamera( -300 );

	if (dbMouseClick() == 2) 
		{	
			dbPointCamera (x,y,z);
			fCameraAngleX = dbWrapValue ( fCameraAngleX + my * 0.4f );
			fCameraAngleY = dbWrapValue ( fCameraAngleY + mx * 0.4f );

			dbPositionMouse (dbScreenWidth() /2, dbScreenHeight() /2);

			dbXRotateCamera (fCameraAngleX );
			dbYRotateObject (obj, fCameraAngleY);
			dbYRotateCamera (fCameraAngleY );

			dbHideMouse();
			
		}
		else
		{
			dbPointCamera (dbObjectPositionX (obj),dbObjectPositionY (obj), dbObjectPositionZ(obj));
			dbPitchCameraUp (20);
			dbShowMouse();
		}
}