static void InitGL() { OGLEXT(PFNGLCLIENTACTIVETEXTUREPROC, glClientActiveTexture); OGLEXT(PFNGLACTIVETEXTUREPROC, glActiveTexture); OGLEXT(PFNGLDELETEBUFFERSARBPROC, glDeleteBuffers); OGLEXT(PFNGLGENBUFFERSPROC, glGenBuffers); OGLEXT(PFNGLBINDBUFFERPROC, glBindBuffer); OGLEXT(PFNGLBUFFERDATAPROC, glBufferData); OGLEXT(PFNGLATTACHSHADERPROC, glAttachShader); OGLEXT(PFNGLCOMPILESHADERPROC, glCompileShader); OGLEXT(PFNGLCREATEPROGRAMPROC, glCreateProgram); OGLEXT(PFNGLCREATESHADERPROC, glCreateShader); OGLEXT(PFNGLDELETEPROGRAMPROC, glDeleteProgram); OGLEXT(PFNGLDELETESHADERPROC, glDeleteShader); OGLEXT(PFNGLLINKPROGRAMPROC, glLinkProgram); OGLEXT(PFNGLSHADERSOURCEPROC, glShaderSource); OGLEXT(PFNGLUSEPROGRAMPROC, glUseProgram); OGLEXT(PFNGLGETUNIFORMLOCATIONPROC, glGetUniformLocation); OGLEXT(PFNGLVERTEXATTRIB4FVARBPROC, glVertexAttrib4fvARB); OGLEXT(PFNGLGETATTRIBLOCATIONPROC, glGetAttribLocation); OGLEXT(PFNGLUNIFORMMATRIX4FVARBPROC, glUniformMatrix4fvARB); OGLEXT(PFNGLUNIFORM3FPROC, glUniform3f); OGLEXT(PFNGLUNIFORM1IPROC, glUniform1i); OGLEXT(PFNGLVERTEXATTRIBPOINTERPROC, glVertexAttribPointer); OGLEXT(PFNGLENABLEVERTEXATTRIBARRAYPROC, glEnableVertexAttribArray); OGLEXT(PFNGLDISABLEVERTEXATTRIBARRAYPROC, glDisableVertexAttribArray); OGLEXT(PFNGLGENPROGRAMSARBPROC, glGenProgramsARB); OGLEXT(PFNGLPROGRAMSTRINGARBPROC, glProgramStringARB); OGLEXT(PFNGLBINDPROGRAMARBPROC, glBindProgramARB); OGLEXT(PFNGLDELETEPROGRAMSARBPROC, glDeleteProgramARB); OGLEXT(PFNGLPROGRAMENVPARAMETER4FARBPROC, glProgramEnvParameter4fARB); OGLEXT(PFNGLPROGRAMLOCALPARAMETER4FARBPROC, glProgramLocalParameter4fARB); OGLEXT(PFNGLBINDFRAMEBUFFEREXTPROC, glBindFramebufferEXT); OGLEXT(PFNGLDELETEFRAMEBUFFERSEXTPROC, glDeleteFramebuffersEXT); OGLEXT(PFNGLGENFRAMEBUFFERSEXTPROC, glGenFramebuffersEXT); OGLEXT(PFNGLBINDRENDERBUFFEREXTPROC, glBindRenderbufferEXT); OGLEXT(PFNGLDELETERENDERBUFFERSEXTPROC, glDeleteRenderbuffersEXT); OGLEXT(PFNGLGENRENDERBUFFERSEXTPROC, glGenRenderbuffersEXT); OGLEXT(PFNGLFRAMEBUFFERRENDERBUFFEREXTPROC, glFramebufferRenderbufferEXT); OGLEXT(PFNGLRENDERBUFFERSTORAGEEXTPROC, glRenderbufferStorageEXT); OGLEXT(PFNGLFRAMEBUFFERTEXTURE2DEXTPROC, glFramebufferTexture2DEXT); OGLEXT(PFNGLCHECKFRAMEBUFFERSTATUSEXTPROC, glCheckFramebufferStatusEXT); glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_FASTEST); glClearColor(1.0f, 1.0f, 1.0f, 1.0f); glClearDepth(1.0f); ClientActiveTexture(GL_TEXTURE0_ARB); glShadeModel(GL_FLAT); glDepthFunc(GL_LEQUAL); glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); CullFace(true); AlphaTest(false); DepthTest(false); DepthWrite(false); Blend(false); }
RenderSystem::RenderSystem(sf::RenderTarget& p_renderTarget) : SortedIteratingSystem(ECS::Family::all<RenderComponent>().get(), DepthTest()), m_renderTarget(p_renderTarget) { }