Index: game-gui-glfw.cpp
===================================================================
--- game-gui-glfw.cpp	(revision 1ce9afe3ae0ad78348a9673e25aa7483c890246d)
+++ game-gui-glfw.cpp	(revision 7fc5e27815abd569d87a4fa334a3f9f9c9ebf923)
@@ -11,20 +11,23 @@
 bool GameGui_GLFW::s_keyDown[NUM_KEYS];
 
-string& GameGui_GLFW::GetError() {
+string& GameGui_GLFW::getError() {
    return GameGui_GLFW::s_errorMessage;
 }
 
-bool GameGui_GLFW::Init() {
+bool GameGui_GLFW::init() {
    GameGui_GLFW::s_errorMessage = "No error";
    glfwSetErrorCallback(glfw_error_callback);
+
+   windowWidth = -1;
+   windowHeight = -1;
 
    return glfwInit() == GLFW_TRUE ? RTWO_SUCCESS : RTWO_ERROR;
 }
 
-void GameGui_GLFW::Shutdown() {
+void GameGui_GLFW::shutdown() {
    glfwTerminate();
 }
 
-void* GameGui_GLFW::CreateWindow(const string& title, unsigned int width, unsigned int height, bool fullscreen) {
+void* GameGui_GLFW::createWindow(const string& title, int width, int height, bool fullscreen) {
    GLFWwindow* window = nullptr;
    GLFWmonitor* mon = nullptr;
@@ -49,13 +52,12 @@
       const GLFWvidmode* vmode = glfwGetVideoMode(mon);
 
-      width = vmode->width;
-      height = vmode->height;
-
-      // TODO: Should probably enable some way to retrieve this from outside this class
-      // and print it out there
-      cout << "Fullscreen resolution " << vmode->width << "x" << vmode->height << endl;
+      windowWidth = vmode->width;
+      windowHeight = vmode->height;
+   } else {
+      windowWidth = width;
+      windowHeight = height;
    }
 
-   window = glfwCreateWindow(width, height, title.c_str(), mon, nullptr);
+   window = glfwCreateWindow(windowWidth, windowHeight, title.c_str(), mon, nullptr);
    //glfwMakeContextCurrent(window);
 
@@ -68,5 +70,5 @@
 }
 
-void GameGui_GLFW::DestroyWindow() {
+void GameGui_GLFW::destroyWindow() {
    // TODO: This function can throw some errors. They should be handled
    glfwDestroyWindow(window);
@@ -75,5 +77,5 @@
 #ifdef GAMEGUI_INCLUDE_VULKAN
 
-bool GameGui_GLFW::CreateVulkanSurface(VkInstance instance, VkSurfaceKHR* surface) {
+bool GameGui_GLFW::createVulkanSurface(VkInstance instance, VkSurfaceKHR* surface) {
    return glfwCreateWindowSurface(instance, window, nullptr, surface) == VK_SUCCESS ?
       RTWO_SUCCESS : RTWO_ERROR;
@@ -82,5 +84,5 @@
 #endif
 
-vector<const char*> GameGui_GLFW::GetRequiredExtensions() {
+vector<const char*> GameGui_GLFW::getRequiredExtensions() {
    uint32_t glfwExtensionCount = 0;
    const char** glfwExtensions;
@@ -93,6 +95,10 @@
 }
 
-void GameGui_GLFW::GetWindowSize(int* width, int* height) {
-   glfwGetFramebufferSize(window, width, height);
+void GameGui_GLFW::getWindowSize(int* width, int* height) {
+   // This function segfaults on OSX, check other platforms
+   //glfwGetFramebufferSize(window, width, height);
+
+   *width = windowWidth;
+   *height = windowHeight;
 }
 
Index: game-gui-glfw.hpp
===================================================================
--- game-gui-glfw.hpp	(revision 1ce9afe3ae0ad78348a9673e25aa7483c890246d)
+++ game-gui-glfw.hpp	(revision 7fc5e27815abd569d87a4fa334a3f9f9c9ebf923)
@@ -21,21 +21,23 @@
       static bool s_keyDown[NUM_KEYS];
 
-      string& GetError();
+      string& getError();
 
-      bool Init();
-      void Shutdown();
+      bool init();
+      void shutdown();
 
-      void* CreateWindow(const string& title, unsigned int width, unsigned int height, bool fullscreen);
-      void DestroyWindow();
+      void* createWindow(const string& title, int width, int height, bool fullscreen);
+      void destroyWindow();
 
 #ifdef GAMEGUI_INCLUDE_VULKAN
-      bool CreateVulkanSurface(VkInstance instance, VkSurfaceKHR* surface);
+      bool createVulkanSurface(VkInstance instance, VkSurfaceKHR* surface);
 #endif
 
-      vector<const char*> GetRequiredExtensions();
-      void GetWindowSize(int* width, int* height);
+      vector<const char*> getRequiredExtensions();
+      void getWindowSize(int* width, int* height);
 
    private:
       GLFWwindow* window;
+
+      int windowWidth, windowHeight;
 };
 
Index: game-gui-sdl.cpp
===================================================================
--- game-gui-sdl.cpp	(revision 1ce9afe3ae0ad78348a9673e25aa7483c890246d)
+++ game-gui-sdl.cpp	(revision 7fc5e27815abd569d87a4fa334a3f9f9c9ebf923)
@@ -5,5 +5,5 @@
 string GameGui_SDL::s_errorMessage;
 
-string& GameGui_SDL::GetError() {
+string& GameGui_SDL::getError() {
    GameGui_SDL::s_errorMessage = SDL_GetError();
 
@@ -11,5 +11,5 @@
 }
 
-bool GameGui_SDL::Init() {
+bool GameGui_SDL::init() {
    // may want to define SDL_INIT_NOPARACHUTE when I start handling crashes since it
    // prevents SDL from setting up its own handlers for SIG_SEGV and stuff like that
@@ -33,24 +33,26 @@
 }
 
-void GameGui_SDL::Shutdown() {
+void GameGui_SDL::shutdown() {
    SDL_Quit();
 }
 
-void* GameGui_SDL::CreateWindow(const string& title, unsigned int width, unsigned int height, bool fullscreen) {
-   cout << "About to go fullscreen in SDL..." << endl;
-
+void* GameGui_SDL::createWindow(const string& title, int width, int height, bool fullscreen) {
    // TODO: Make an OpenGL version of the SDL_CreateWindow call as well
 
    // On Apple's OS X you must set the NSHighResolutionCapable Info.plist property to YES,
    // otherwise you will not receive a High DPI OpenGL canvas.
+
+   uint32_t flags = SDL_WINDOW_VULKAN;
+
+   flags |= fullscreen ? SDL_WINDOW_FULLSCREEN_DESKTOP : SDL_WINDOW_RESIZABLE;
+
    window = SDL_CreateWindow(title.c_str(),
                SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED,
-               width, height,
-               SDL_WINDOW_VULKAN | SDL_WINDOW_SHOWN | SDL_WINDOW_RESIZABLE);
+               width, height, flags);
 
    return window;
 }
 
-void GameGui_SDL::DestroyWindow() {
+void GameGui_SDL::destroyWindow() {
    // TODO: This function can throw some errors. They should be handled
    SDL_DestroyWindow(window);
@@ -59,5 +61,5 @@
 #ifdef GAMEGUI_INCLUDE_VULKAN
 
-bool GameGui_SDL::CreateVulkanSurface(VkInstance instance, VkSurfaceKHR* surface) {
+bool GameGui_SDL::createVulkanSurface(VkInstance instance, VkSurfaceKHR* surface) {
    return SDL_Vulkan_CreateSurface(window, instance, surface) ?
       RTWO_SUCCESS : RTWO_ERROR;
@@ -66,5 +68,5 @@
 #endif
 
-vector<const char*> GameGui_SDL::GetRequiredExtensions() {
+vector<const char*> GameGui_SDL::getRequiredExtensions() {
    uint32_t extensionCount = 0;
    SDL_Vulkan_GetInstanceExtensions(window, &extensionCount, nullptr);
@@ -76,5 +78,5 @@
 }
 
-void GameGui_SDL::GetWindowSize(int* width, int* height) {
+void GameGui_SDL::getWindowSize(int* width, int* height) {
    SDL_GetWindowSize(window, width, height);
 }
Index: game-gui-sdl.hpp
===================================================================
--- game-gui-sdl.hpp	(revision 1ce9afe3ae0ad78348a9673e25aa7483c890246d)
+++ game-gui-sdl.hpp	(revision 7fc5e27815abd569d87a4fa334a3f9f9c9ebf923)
@@ -11,18 +11,18 @@
 class GameGui_SDL : public GameGui {
    public:
-      string& GetError();
+      string& getError();
 
-      bool Init();
-      void Shutdown();
+      bool init();
+      void shutdown();
 
-      void* CreateWindow(const string& title, unsigned int width, unsigned int height, bool fullscreen);
-      void DestroyWindow();
+      void* createWindow(const string& title, int width, int height, bool fullscreen);
+      void destroyWindow();
 
 #ifdef GAMEGUI_INCLUDE_VULKAN
-      bool CreateVulkanSurface(VkInstance instance, VkSurfaceKHR* surface);
+      bool createVulkanSurface(VkInstance instance, VkSurfaceKHR* surface);
 #endif
 
-      vector<const char*> GetRequiredExtensions();
-      void GetWindowSize(int* width, int* height);
+      vector<const char*> getRequiredExtensions();
+      void getWindowSize(int* width, int* height);
 
    private:
Index: game-gui.hpp
===================================================================
--- game-gui.hpp	(revision 1ce9afe3ae0ad78348a9673e25aa7483c890246d)
+++ game-gui.hpp	(revision 7fc5e27815abd569d87a4fa334a3f9f9c9ebf923)
@@ -18,18 +18,18 @@
       virtual ~GameGui() {};
 
-      virtual string& GetError() = 0;
+      virtual string& getError() = 0;
 
-      virtual bool Init() = 0;
-      virtual void Shutdown() = 0;
+      virtual bool init() = 0;
+      virtual void shutdown() = 0;
 
-      virtual void* CreateWindow(const string& title, unsigned int width, unsigned int height, bool fullscreen) = 0;
-      virtual void DestroyWindow() = 0;
+      virtual void* createWindow(const string& title, int width, int height, bool fullscreen) = 0;
+      virtual void destroyWindow() = 0;
 
 #ifdef GAMEGUI_INCLUDE_VULKAN
-      virtual bool CreateVulkanSurface(VkInstance instance, VkSurfaceKHR* surface) = 0;
+      virtual bool createVulkanSurface(VkInstance instance, VkSurfaceKHR* surface) = 0;
 #endif
 
-      virtual vector<const char*> GetRequiredExtensions() = 0;
-      virtual void GetWindowSize(int* width, int* height) = 0;
+      virtual vector<const char*> getRequiredExtensions() = 0;
+      virtual void getWindowSize(int* width, int* height) = 0;
 };
 
Index: vulkan-ref.cpp
===================================================================
--- vulkan-ref.cpp	(revision 1ce9afe3ae0ad78348a9673e25aa7483c890246d)
+++ vulkan-ref.cpp	(revision 7fc5e27815abd569d87a4fa334a3f9f9c9ebf923)
@@ -19,4 +19,5 @@
 #include <chrono>
 
+#include "consts.hpp"
 #include "utils.h"
 
@@ -226,5 +227,5 @@
          // TODO: Put all fonts, textures, and images in the assets folder
 
-         if (gui->Init() == RTWO_ERROR) {
+         if (gui->init() == RTWO_ERROR) {
             cout << "UI library could not be initialized!" << endl;
             cout << SDL_GetError() << endl;
@@ -233,5 +234,5 @@
          cout << "GUI init succeeded" << endl;
 
-         window = (SDL_Window*) gui->CreateWindow("Vulkan Game", SCREEN_WIDTH, SCREEN_HEIGHT);
+         window = (SDL_Window*) gui->createWindow("Vulkan Game", SCREEN_WIDTH, SCREEN_HEIGHT, false);
          if (window == nullptr) {
             cout << "Window could not be created!" << endl;
@@ -459,5 +460,5 @@
 
       vector<const char*> getRequiredExtensions() {
-         vector<const char*> extensions = gui->GetRequiredExtensions();
+         vector<const char*> extensions = gui->getRequiredExtensions();
 
          if (enableValidationLayers) {
@@ -488,5 +489,5 @@
 
       void createSurface() {
-         if (gui->CreateVulkanSurface(instance, &surface) == RTWO_ERROR) {
+         if (gui->createVulkanSurface(instance, &surface) == RTWO_ERROR) {
             throw runtime_error("failed to create window surface!");
          }
@@ -710,5 +711,5 @@
          else {
             int width, height;
-            gui->GetWindowSize(&width, &height);
+            gui->getWindowSize(&width, &height);
 
             VkExtent2D actualExtent = {
@@ -1812,10 +1813,10 @@
          int width = 0, height = 0;
 
-         gui->GetWindowSize(&width, &height);
+         gui->getWindowSize(&width, &height);
 
          while (width == 0 || height == 0 ||
             (SDL_GetWindowFlags(window) & SDL_WINDOW_MINIMIZED) != 0) {
             SDL_WaitEvent(nullptr);
-            gui->GetWindowSize(&width, &height);
+            gui->getWindowSize(&width, &height);
          }
 
@@ -1908,6 +1909,6 @@
          gRenderer = nullptr;
 
-         gui->DestroyWindow();
-         gui->Shutdown();
+         gui->destroyWindow();
+         gui->shutdown();
          delete gui;
       }
