diff --git a/EXCLUDE/GLTSF/include/App.hpp b/EXCLUDE/GLTSF/include/App.hpp index afa9783e1..88cdf41da 100644 --- a/EXCLUDE/GLTSF/include/App.hpp +++ b/EXCLUDE/GLTSF/include/App.hpp @@ -18,12 +18,16 @@ public: virtual void On_Key_Down(int Key); virtual void On_Key_Up(int Key); virtual void On_Char(unsigned int Char); + virtual void On_Resized(unsigned int Width, unsigned int Height); private: + void Update(); + void Draw(); + static const int Width = 800; static const int Height = 600; static const int Bits_Per_Pixel = 32; - static const bool Fullscreen = false; + static const bool Fullscreen = true; Window my_Window; bool my_Done; diff --git a/EXCLUDE/GLTSF/src/App.cpp b/EXCLUDE/GLTSF/src/App.cpp index 6ce3b5627..feb8be51c 100644 --- a/EXCLUDE/GLTSF/src/App.cpp +++ b/EXCLUDE/GLTSF/src/App.cpp @@ -1,5 +1,11 @@ #include "App.hpp" #include "TSF.hpp" +#include +#include + +#pragma comment(lib, "glu32.lib") + +GLfloat Rotation = 0.0f; App::App() : my_Done(false) { @@ -19,6 +25,7 @@ void App::Initialize() my_Window.Initialize(L"GLTSF", Video_Mode(Width, Height, Bits_Per_Pixel), Fullscreen); my_Window.Set_Listener(this); my_Window.Show(); + my_Window.Hide_Cursor(); } void App::Finalize() @@ -31,8 +38,10 @@ void App::Run() Initialize(); while (!my_Done) { - my_Window.Update(); - my_Window.Clear(); + my_Window.Handle_Events(); + + Update(); + Draw(); my_Window.Display(); } } @@ -62,3 +71,35 @@ void App::On_Char(unsigned int Char) { printf("Char: U+%04X\n", Char); } + +void App::On_Resized(unsigned int Width, unsigned int Height) +{ + glViewport(0, 0, Width, Height); + glMatrixMode(GL_PROJECTION); + glLoadIdentity(); + + glMatrixMode(GL_MODELVIEW); + glLoadIdentity(); +} + +void App::Update() +{ + Rotation += 0.2f; +} + +void App::Draw() +{ + glClear(GL_COLOR_BUFFER_BIT); + + glLoadIdentity(); + glRotatef(Rotation, 0.0f, 0.0f, -1.0f); + + glBegin(GL_TRIANGLES); + glColor3f(0.7f, 0.0f, 0.0f); + glVertex3f(0.0f, 0.5f, 0.0f); + glColor3f(0.0f, 0.7f, 0.0f); + glVertex3f(-0.5f, -0.5f, 0.0f); + glColor3f(0.0f, 0.0f, 0.7f); + glVertex3f(0.5f, -0.5f, 0.0f); + glEnd(); +}