#ifndef ENGINE_H__ #define ENGINE_H__ #include "define.h" #include "openglcontext.h" #include "texture.h" #include "transformation.h" #include "shader.h"" #include "player.h" #include "chunk.h" #include "skybox.h" #include "audio.h" class Engine : public OpenglContext { public: Engine(); virtual ~Engine(); virtual void Init(); virtual void DeInit(); virtual void LoadResource(); virtual void UnloadResource(); virtual void Render(float elapsedTime); virtual void KeyPressEvent(unsigned char key); virtual void KeyReleaseEvent(unsigned char key); virtual void MouseMoveEvent(int x, int y); virtual void MousePressEvent(const MOUSE_BUTTON &button, int x, int y); virtual void MouseReleaseEvent(const MOUSE_BUTTON &button, int x, int y); private: bool LoadTexture(Texture& texture, const std::string& filename, bool stopOnError = true); private: bool m_wireframe = false; Texture m_textureFloor; Texture m_textureSkybox; Texture m_textureCube1; Texture m_textureCube2; Texture m_textureCube3; Texture m_textureCube4; Skybox m_skybox; Shader m_shader01; Chunk m_testChunk; Audio m_music; Player m_player = Player(Vector3f(0, 0, 0)); bool m_keyW = false; bool m_keyA = false; bool m_keyS = false; bool m_keyD = false; bool m_keylshift = false; bool m_keySpace = false; }; #endif // ENGINE_H__