www.pudn.com > 3dterrain.zip > scene.h


////////////////////////////////////////////////////////////////////// 
// Naprogramoval: Marek Mizanin, mizanin@szm.sk, mizanin@stonline.sk 
//                www.mizanin.szm.sk, ICQ: 158283635 
// 
// 
////////////////////////////////////////////////////////////////////// 
//	Pouzivane klavesy: 
//	 
//	H - help 
// 
////////////////////////////////////////////////////////////////////// 
// 
// scene.h: interface for the scene class. 
// 
////////////////////////////////////////////////////////////////////// 
 
#ifndef _SCENE_H 
#define _SCENE_H 
 
#include "init.h"				// zakladne nastavenia a zakladne hlavickove subory 
								// vazby na init.cpp 
 
#include 				// standardna kniznica 
#include 				// -- 
#include 				// -- 
#include 				// matematicka kniznica 
#include "load_texture.h" 
#include "Timer.h"				// trieda Timer pre pracu z casovacom 
#include "bitmap_Font.h"		// trieda pre vypisovanie textu pomocou bitmapoveho fontu 
#include "camera.h"				// trieda pre transformacie 
#include "Frustum.h" 
//#include "3ds1.h" 
#include "dxf.h" 
#include "Terrain.h" 
#include "Loader.h" 
#include "setup.h" 
#include "Util.h" 
 
#ifndef PI180 
#define PI180	0.0174532925199432957692369076848861f	// pi / 180 
#endif 
	 
class scene 
{ 
	Font	*font0; 
	Timer	timer0; 
	Camera	*c; 
	CFrustum Frustum; 
//	C3ds	*obj; 
	dxf		*sky_box; 
	Csetup  *setup; 
 
	Terrain *plocha; 
 
	unsigned int textura;	 
	float	fps; 
	uFPS_counter fps_counter; 
	float clip_distance;				// orezavacia vzdialenost 
	float smer_svetla[4],uhol_rotacie_svetla; 
private: 
	char	text[30];					// text pre konverziu z float na text 
	bool	svetlo,texturovanie,ciary,anim,normals,kolizia, normalove_svetlo, cull_face, draw_sky_box; 
	bool	toc_svetlom; 
	int		fog; 
 
	 
	POINT MouseBod; 
	int mouse_x,mouse_y,sirka,vyska; 
public: 
	bool isInString(char *string, const char *search); 
	void SaveScreen_RAW(); 
	void SaveScreen_TGA(); 
	void ReSizeGLScene( int width, int height); 
	void ReSizeGLScene_2D(int width, int height);	// funkcia pro zmenu velkosti okna 
	void ReSizeGLScene_3D(int width, int height);	// funkcia pro zmenu velkosti okna 
	void DrawGLScene(void); 
	scene(); 
	~scene(); 
private: 
	void KillGL(void); 
	void InitGL(void); 
	void Prepni_do_2D(void); 
	void Prepni_do_3D(void); 
	void Kurzor(void);			// zisti poziciu mysi a zobrazy kurzor 
}; 
 
#define velkost_kurzoru 5 
 
#endif