Beispiel #1
0
Game* Game_Create( Keyboard* const keyboard, Mouse* const mouse)
{
	Mat4 tmpProjectionMatrix;
	
	OBJFile* objFile = OBJFile_Load( "assets/models/cubeModel.obj");
	MTLFile* mtlFile = MTLFile_Load( "assets/models/cubeModel.mtl");

	Game* game = malloc( sizeof(Game));
	memset( game, 0, sizeof(Game));

	Keyboard_Initialize( keyboard);
	Mouse_Initialize( mouse);

	game->Keyboard = keyboard;
	game->Mouse = mouse;

	// load content
	game->DiffuseTexture = Texture_Load("assets/textures/checkerboard.png");
	game->CubeModel = Mesh_CreateFromOBJGroup( objFile->Objects, objFile->Objects->Groups);
	
	// unload temp data
	OBJFile_Unload(objFile);
	MTLFile_Unload(mtlFile);

	// setup camera
	Mat4_LoadPerspective( &tmpProjectionMatrix, 70.0f, (float)SCREEN_WIDTH / (float)SCREEN_HEIGHT, 0.1f, 100.0f);
	game->Camera = Camera_Create( &tmpProjectionMatrix);

	return game;
}
int32_t  Buttons_Initialize   (void)
{
	Keyboard_Initialize();
	return 0;
}