Removing newMain.cc.
This commit is contained in:
parent
6c329b1240
commit
9caad22156
239
newMain.cc
239
newMain.cc
@ -1,239 +0,0 @@
|
||||
#include "main.hh"
|
||||
|
||||
#include <iostream>
|
||||
/*
|
||||
#include <fstream>
|
||||
#include <iomanip>
|
||||
#include <sstream>
|
||||
|
||||
#include <ACGL/OpenGL/Objects.hh>
|
||||
#include <ACGL/OpenGL/Data/TextureData.hh>
|
||||
#include <ACGL/Math/Math.hh>
|
||||
#include <ACGL/Utils/FileHelpers.hh>
|
||||
#include <ACGL/Utils/StringHelpers.hh>
|
||||
|
||||
#include <ACGL/OpenGL/glloaders/extensions.hh>
|
||||
|
||||
using namespace std;
|
||||
using namespace ACGL::OpenGL;
|
||||
using namespace ACGL::Base;
|
||||
using namespace ACGL::Utils;
|
||||
|
||||
glm::uvec2 g_windowSize( 1024, 786 );
|
||||
float g_nearPlane = 0.1f;
|
||||
float g_farPlane = 100.0f;
|
||||
bool glfwWindowClosed = false;
|
||||
|
||||
GLFWwindow* g_window;
|
||||
|
||||
Level currentLevel;
|
||||
Physics physics;
|
||||
|
||||
void setGLFWHintsForOpenGLVersion( unsigned int _version )
|
||||
{
|
||||
#ifdef __APPLE__
|
||||
#if (ACGL_OPENGL_VERSION >= 30)
|
||||
// request OpenGL 3.2, will return a 4.1 context on Mavericks
|
||||
glfwWindowHint( GLFW_CONTEXT_VERSION_MAJOR, 3 );
|
||||
glfwWindowHint( GLFW_CONTEXT_VERSION_MINOR, 2 );
|
||||
glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);
|
||||
glfwWindowHint(GLFW_OPENGL_FORWARD_COMPAT, GL_TRUE);
|
||||
#endif
|
||||
#else
|
||||
// non-apple
|
||||
glfwWindowHint( GLFW_CONTEXT_VERSION_MAJOR, _version / 10 );
|
||||
glfwWindowHint( GLFW_CONTEXT_VERSION_MINOR, _version % 10 );
|
||||
#ifdef ACGL_OPENGL_PROFILE_CORE
|
||||
glfwWindowHint(GLFW_OPENGL_FORWARD_COMPAT, GL_TRUE);
|
||||
glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);
|
||||
#endif
|
||||
#endif
|
||||
}
|
||||
|
||||
bool createWindow()
|
||||
{
|
||||
/////////////////////////////////////////////////////////////////////////////////////
|
||||
// Initialise GLFW
|
||||
//
|
||||
if ( !glfwInit() )
|
||||
{
|
||||
error() << "Failed to initialize GLFW" << endl;
|
||||
exit( -1 );
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////////////
|
||||
// Configure OpenGL context
|
||||
//
|
||||
setGLFWHintsForOpenGLVersion( ACGL_OPENGL_VERSION );
|
||||
|
||||
// activate multisampling (second parameter is the number of samples):
|
||||
//glfwWindowHint( GLFW_SAMPLES, 8 );
|
||||
|
||||
// request an OpenGL debug context:
|
||||
glfwWindowHint( GLFW_OPENGL_DEBUG_CONTEXT, true );
|
||||
|
||||
// define whether the window can get resized:
|
||||
//glfwWindowHint( GLFW_RESIZABLE, true );
|
||||
|
||||
// non-decorated windows can be used as splash screens:
|
||||
//glfwWindowHint( GLFW_DECORATED, false );
|
||||
|
||||
// request an sRGB framebuffer:
|
||||
//glfwWindowHint( GLFW_SRGB_CAPABLE, true );
|
||||
|
||||
//glfwWindowHint( , true );
|
||||
//glfwWindowHint( , true );
|
||||
//glfwWindowHint( , true );
|
||||
//glfwWindowHint( , true );
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////////////
|
||||
// try to create an OpenGL context in a window and check the supported OpenGL version:
|
||||
// R,G,B,A, Depth,Stencil
|
||||
g_window = glfwCreateWindow( g_windowSize.x, g_windowSize.y, "ACGL GLFWExamples", NULL, NULL);
|
||||
if (!g_window) {
|
||||
error() << "Failed to open a GLFW window - requested OpenGL: " << ACGL_OPENGL_VERSION << endl;
|
||||
return false;
|
||||
}
|
||||
glfwMakeContextCurrent(g_window);
|
||||
ACGL::init();
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////////////
|
||||
// Init debug-extension
|
||||
//
|
||||
if (ACGL_ARB_debug_output()) {
|
||||
//debug() << "GL_ARB_DEBUG_OUTPUT is supported, register callback" << endl;
|
||||
//glDebugMessageCallbackARB( debugCallback, NULL);
|
||||
|
||||
// filter out the strange performance warnings about shader recompiles:
|
||||
//glDebugMessageControlARB( GL_DEBUG_SOURCE_API_ARB, GL_DEBUG_TYPE_PERFORMANCE_ARB, GL_DEBUG_SEVERITY_MEDIUM_ARB, 0, NULL, GL_FALSE );
|
||||
} else {
|
||||
//debug() << "GL_ARB_DEBUG_OUTPUT is missing!" << endl;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
static void keyCallback(GLFWwindow* _window, int _key, int, int _action, int)
|
||||
{
|
||||
if (_key == GLFW_KEY_ESCAPE && _action == GLFW_PRESS) {
|
||||
glfwSetWindowShouldClose( _window, GL_TRUE );
|
||||
//TODO physics.kill();
|
||||
}
|
||||
}
|
||||
|
||||
void update(){
|
||||
//TODO handleInput();
|
||||
//TODO updateLogic();
|
||||
//TODO physics.update();
|
||||
|
||||
}
|
||||
|
||||
void render(){
|
||||
currentLevel.render();
|
||||
}
|
||||
|
||||
std::vector<std::string> initWindow(char *argv[]){
|
||||
/////////////////////////////////////////////////////////////////////////////////////
|
||||
// Create OpenGL capable window:
|
||||
//
|
||||
if ( !createWindow() ) {
|
||||
glfwTerminate();
|
||||
exit( -1 );
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////////////
|
||||
// Set window title to binary name (without the path):
|
||||
//
|
||||
std::vector<std::string> tmp = StringHelpers::split( std::string( argv[0] ), '/' );
|
||||
glfwSetWindowTitle( g_window, tmp[tmp.size()-1].c_str() );
|
||||
// Ensure we can capture the escape key being pressed below
|
||||
glfwSetInputMode( g_window, GLFW_STICKY_KEYS, 1 );
|
||||
glfwSetWindowSizeCallback( g_window, resizeCallback );
|
||||
glfwSetKeyCallback( g_window, keyCallback );
|
||||
|
||||
// Enable vertical sync (on cards that support it) with parameter 1 - 0 means off
|
||||
glfwSwapInterval( 0 );
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////////////
|
||||
// OpenGL state:
|
||||
//
|
||||
glClearColor( 0.0, 0.0, 0.0, 1.0 );
|
||||
glEnable( GL_DEPTH_TEST );
|
||||
initCustomResources();
|
||||
return tmp;
|
||||
}
|
||||
|
||||
std::vector<std::string> init(char *argv[]){
|
||||
//TODO physics.init();
|
||||
//TODO Load Menu: till then:
|
||||
currentLevel = Level("Levels/LevelTest");
|
||||
Model model = Model("Bunny.obj"); //TODO should we get another model here? dont know how shader creation should work
|
||||
//OurShader shader;
|
||||
//shader = OurShader("Shader/phong.fsh", model); //TODO fix ourShader
|
||||
//currentLevel.load(shader);
|
||||
return initWindow(argv);
|
||||
}
|
||||
|
||||
int main( int argc, char *argv[] )
|
||||
{
|
||||
//init FPS counter:
|
||||
int frameCount = 0;
|
||||
|
||||
const double FPSdelay = 2.0;
|
||||
double startTimeInSeconds = glfwGetTime();
|
||||
double showNextFPS = startTimeInSeconds + FPSdelay;
|
||||
|
||||
std::vector<std::string> tmp = init(argv);
|
||||
do {
|
||||
|
||||
//Display FPS:
|
||||
double now = glfwGetTime();
|
||||
if (showNextFPS <= now) {
|
||||
stringstream sstream (stringstream::in | stringstream::out);
|
||||
sstream << setprecision(1) << std::fixed
|
||||
<< tmp[tmp.size()-1] << " - FPS: " << frameCount / (now-showNextFPS + FPSdelay) << " " << 1000 * (now-showNextFPS + FPSdelay)/frameCount << " msec";
|
||||
glfwSetWindowTitle( g_window, sstream.str().c_str() );
|
||||
showNextFPS = now + FPSdelay;
|
||||
frameCount = 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
} // Check if the window was closed
|
||||
while( !glfwWindowShouldClose( g_window ) );
|
||||
|
||||
deleteCustomResources();
|
||||
|
||||
glfwTerminate();
|
||||
exit(0);
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user