12 Commits

Author SHA1 Message Date
Benjamin Petsch
6adef607f2 added a few missing lines 2016-09-08 15:39:12 +02:00
Benjamin Petsch
996564ed7d few changes? 2016-09-08 14:38:38 +02:00
Benjamin Petsch
08776360c2 added WriteTexture function to write rendered pixel into a texture 2016-09-07 13:17:27 +02:00
Caesar2011
4f347a6ef5 Loading of multiple textures 2016-09-07 13:06:48 +02:00
Caesar2011
364ed31d8e Clean up project 2016-09-06 08:20:12 +02:00
Caesar2011
b1c6dcfecb Merged trimap into opengl 2016-09-05 22:21:21 +02:00
Caesar2011
2147b74e86 Tri-Map working now; output of every state in a different color 2016-09-05 22:21:12 +02:00
Caesar2011
2acbd0c10f Trimap implemented; need bugfixes 2016-09-05 21:58:45 +02:00
Caesar2011
fe718a4658 Merged texturebuffer into opengl 2016-09-05 19:45:47 +02:00
Caesar2011
aed54bd694 Coloring triangles with texture 2016-09-05 19:45:14 +02:00
Caesar2011
433983e4ff Colored triangles with VAO and VBO 2016-09-05 18:38:53 +02:00
Caesar2011
866fabdf45 Preparing to add texture to quad 2016-09-05 17:49:15 +02:00
19 changed files with 281 additions and 557 deletions

BIN
img/tests/flieger.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

BIN
img/tests/flieger2.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 768 KiB

After

Width:  |  Height:  |  Size: 1.2 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 56 KiB

After

Width:  |  Height:  |  Size: 108 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 876 KiB

After

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -1,56 +0,0 @@
class Libiconv < Formula
desc "Conversion library"
homepage "https://www.gnu.org/software/libiconv/"
url "https://ftpmirror.gnu.org/libiconv/libiconv-1.14.tar.gz"
mirror "https://ftp.gnu.org/gnu/libiconv/libiconv-1.14.tar.gz"
sha256 "72b24ded17d687193c3366d0ebe7cde1e6b18f0df8c55438ac95be39e8a30613"
bottle do
sha256 "64d8a9383ba42ba3e41422bb8548ebc8f296f67fdda6e6d6a324f990b03c6db0" => :el_capitan
sha256 "a0d9ff36269bc908fde4a039d2083152202055a2e053b6582ad2c9063c85ebc2" => :yosemite
sha256 "456a816a94427c963fa3cb90257830aa33268f22443cf5a8a4cf1be3e3ed3bb9" => :mavericks
end
keg_only :provided_by_osx
option :universal
patch do
url "https://raw.githubusercontent.com/Homebrew/patches/9be2793af/libiconv/patch-Makefile.devel"
sha256 "ad9b6da1a82fc4de27d6f7086a3382993a0b16153bc8e8a23d7b5f9334ca0a42"
end
patch do
url "https://raw.githubusercontent.com/Homebrew/patches/9be2793af/libiconv/patch-utf8mac.diff"
sha256 "e8128732f22f63b5c656659786d2cf76f1450008f36bcf541285268c66cabeab"
end
patch :DATA
def install
ENV.universal_binary if build.universal?
ENV.j1
system "./configure", "--disable-debug",
"--disable-dependency-tracking",
"--prefix=#{prefix}",
"--enable-extra-encodings"
system "make", "-f", "Makefile.devel", "CFLAGS=#{ENV.cflags}", "CC=#{ENV.cc}"
system "make", "install"
end
end
__END__
diff --git a/lib/flags.h b/lib/flags.h
index d7cda21..4cabcac 100644
--- a/lib/flags.h
+++ b/lib/flags.h
@@ -14,6 +14,7 @@
#define ei_ascii_oflags (0)
#define ei_utf8_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
+#define ei_utf8mac_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
#define ei_ucs2_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
#define ei_ucs2be_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
#define ei_ucs2le_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)

View File

@@ -44,8 +44,8 @@ GLuint LoadTexture(char *filename,int *textw,int *texth) {
// this reads from the sdl surface and puts it into an opengl texture // this reads from the sdl surface and puts it into an opengl texture
glTexImage2D(GL_TEXTURE_2D, 0, mode, surface->w, surface->h, 0, mode, GL_UNSIGNED_BYTE, surface->pixels); glTexImage2D(GL_TEXTURE_2D, 0, mode, surface->w, surface->h, 0, mode, GL_UNSIGNED_BYTE, surface->pixels);
// these affect how this texture is drawn later on...glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT); // these affect how this texture is drawn later on...glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT); glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_WRAP_S,GL_CLAMP_TO_EDGE);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT); glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_WRAP_T,GL_CLAMP_TO_EDGE);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
// clean up // clean up
@@ -54,22 +54,6 @@ GLuint LoadTexture(char *filename,int *textw,int *texth) {
} }
void DrawTexture(int x, int y, GLuint textureid,int textw,int texth) {
//printf("x: %d\ty: %d\tw: %d\th: %d\n", x, y, textw, texth);
//int textw,texth;
// tell opengl to use the generated texture name
glBindTexture(GL_TEXTURE_2D, textureid);
glEnable(GL_TEXTURE_2D);
// make a rectangle
glBegin(GL_QUADS);
glTexCoord2d(0.0,0.0); glVertex2f(-1, -1);
glTexCoord2d(1.0,0.0); glVertex2f(1, -1);
glTexCoord2d(1.0,1.0); glVertex2f(1, 1);
glTexCoord2d(0.0,1.0); glVertex2f(-1, 1);
glEnd();
glDisable(GL_TEXTURE_2D );
}
GLuint LoadShaders(const char * vertex_file_path,const char * fragment_file_path){ GLuint LoadShaders(const char * vertex_file_path,const char * fragment_file_path){
// Create the shaders // Create the shaders
@@ -164,17 +148,55 @@ GLuint LoadShaders(const char * vertex_file_path,const char * fragment_file_path
return ProgramID; return ProgramID;
} }
GLuint WriteTexture(int textw, int texth){
// The framebuffer, which regroups 0, 1, or more textures, and 0 or 1 depth buffer.
GLuint FramebufferName = 0;
glGenFramebuffers(1, &FramebufferName);
glBindFramebuffer(GL_FRAMEBUFFER, FramebufferName);
// The texture we're going to render to
GLuint renderedTexture;
glGenTextures(1, &renderedTexture);
// "Bind" the newly created texture : all future texture functions will modify this texture
glBindTexture(GL_TEXTURE_2D, renderedTexture);
// Give an empty image to OpenGL ( the last "0" )
glTexImage2D(GL_TEXTURE_2D, 0,GL_RGB, textw, texth, 0,GL_RGB, GL_UNSIGNED_BYTE, 0);
// Poor filtering. Needed !
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
// The depth buffer -- OPTIONAL, REMOVE WHEN NOT NEEDED
GLuint depthrenderbuffer;
glGenRenderbuffers(1, &depthrenderbuffer);
glBindRenderbuffer(GL_RENDERBUFFER, depthrenderbuffer);
glRenderbufferStorage(GL_RENDERBUFFER, GL_DEPTH_COMPONENT, 1024, 768);
glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_RENDERBUFFER, depthrenderbuffer);
// Set "renderedTexture" as our colour attachement #0
glFramebufferTexture(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, renderedTexture, 0);
// Set the list of draw buffers.
GLenum DrawBuffers[1] = {GL_COLOR_ATTACHMENT0};
glDrawBuffers(1, DrawBuffers); // "1" is the size of DrawBuffers
// Always check that our framebuffer is ok
if(glCheckFramebufferStatus(GL_FRAMEBUFFER) != GL_FRAMEBUFFER_COMPLETE)
return false;
// Render to our framebuffer
glBindFramebuffer(GL_FRAMEBUFFER, FramebufferName);
glViewport(0, 0, textw, texth);
}
int main(int argc, char* args[]) { int main(int argc, char* args[]) {
GLFWwindow* window; GLFWwindow* window;
GLuint tex_jpe; GLuint tex1, tex2;
GLuint tex_jpg;
GLuint tex_gif;
GLuint tex_png;
GLuint tex_bmp;
int textw, texth; int textw, texth;
int timer = 0; int textw2, texth2;
/* Initialize the library */ /* Initialize the library */
@@ -185,10 +207,11 @@ int main(int argc, char* args[]) {
return 1; return 1;
} }
/* Create a windowed mode window and its OpenGL context */ /* Create a windowed mode window and its OpenGL context */
glfwSetWindowSizeLimits(window, 640, 480, 640, 480);
window = glfwCreateWindow(640, 480, "Hello World", NULL, NULL); window = glfwCreateWindow(640, 480, "Hello World", NULL, NULL);
if (!window) { if (!window) {
glfwTerminate(); glfwTerminate();
return -1; return 1;
} }
/* Make the window's context current */ /* Make the window's context current */
glfwMakeContextCurrent(window); glfwMakeContextCurrent(window);
@@ -213,33 +236,111 @@ int main(int argc, char* args[]) {
} }
// INIT // INIT
tex_jpe=LoadTexture("../img/tests/test.jpeg",&textw,&texth); // An array of 3 vectors which represents 3 vertices
tex_jpg=LoadTexture("../img/tests/test.jpg",&textw,&texth); static const GLfloat g_vertex_buffer_data[] = {
tex_png=LoadTexture("../img/tests/test.png",&textw,&texth); -1.0f, -1.0f, 0.0f, // (bottom - left ) TRIANGLE 1
tex_bmp=LoadTexture("../img/tests/test.bmp",&textw,&texth); 1.0f, -1.0f, 0.0f, // (bottom - right)
-1.0f, 1.0f, 0.0f, // (top - left )
1.0f, 1.0f, 0.0f, // (top - right) TRIANGLE 2
1.0f, -1.0f, 0.0f, // (bottom - right)
-1.0f, 1.0f, 0.0f, // (top - left )
};
// One color for each vertex. They were generated randomly.
static const GLfloat g_uv_buffer_data[] = {
0.0f, 1.0f-0.0f, // (bottom - left ) TRIANGLE 1
1.0f, 1.0f-0.0f, // (bottom - right)
0.0f, 1.0f-1.0f, // (top - left )
1.0f, 1.0f-1.0f, // (top - right) TRIANGLE 2
1.0f, 1.0f-0.0f, // (bottom - right)
0.0f, 1.0f-1.0f, // (top - left )
};
// Identify our vertex buffer
GLuint vertexbuffer;
glGenBuffers(1, &vertexbuffer);
glBindBuffer(GL_ARRAY_BUFFER, vertexbuffer);
glBufferData(GL_ARRAY_BUFFER, sizeof(g_vertex_buffer_data), g_vertex_buffer_data, GL_STATIC_DRAW);
// Identify our color buffer
GLuint colorbuffer;
glGenBuffers(1, &colorbuffer);
glBindBuffer(GL_ARRAY_BUFFER, colorbuffer);
glBufferData(GL_ARRAY_BUFFER, sizeof(g_uv_buffer_data), g_uv_buffer_data, GL_STATIC_DRAW);
tex1 = LoadTexture("../img/tests/flieger.jpg",&textw,&texth);
printf("Tex1: %d", tex1);
tex2 = LoadTexture("../img/tests/flieger2.jpg",&textw2,&texth2);
printf("Tex2: %d", tex2);
glfwSetWindowSize(window, textw, texth);
glViewport(0, 0, textw, texth);
glfwSetWindowSizeLimits(window, textw, texth, textw, texth);
GLuint programID = LoadShaders("trimap.vertexshader", "trimap.fragmentshader"); GLuint programID = LoadShaders("trimap.vertexshader", "trimap.fragmentshader");
printf("%d", programID); GLint textureLoc1 = glGetUniformLocation(programID, "myTextureSampler");
GLint textureLoc2 = glGetUniformLocation(programID, "myTextureSampler2");
GLint widthLoc = glGetUniformLocation(programID, "pixWidth");
GLint heigthLoc = glGetUniformLocation(programID, "pixHeight");
glActiveTexture(GL_TEXTURE0);
glBindTexture(GL_TEXTURE_2D, tex1);
glActiveTexture(GL_TEXTURE1);
glBindTexture(GL_TEXTURE_2D, tex2);
printf("Shader program ID: %d\n", programID);
printf("textureLoc1: %d\n", textureLoc1);
printf("textureLoc2: %d\n", textureLoc2);
printf("widthLoc: %d\n", widthLoc);
printf("heigthLoc: %d\n", heigthLoc);
printf("Width: %f\n", 1.0f/textw);
printf("Height: %f\n", 1.0f/texth);
// INIT END // INIT END
/* Loop until the user closes the window */ /* Loop until the user closes the window */
while (!glfwWindowShouldClose(window)) { while (!glfwWindowShouldClose(window)) {
timer += 1;
if (timer==800)
timer = 0;
/* Render here */ /* Render here */
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glUseProgram(programID);
// RENDER glUseProgram(programID);
if (timer<200) glUniform1f(widthLoc, 1.0f/textw);
DrawTexture(50,50,tex_jpe,textw,texth); glUniform1f(heigthLoc, 1.0f/texth);
else if (timer<400) glUniform1i(textureLoc1, 0);
DrawTexture(50,50,tex_jpg,textw,texth); glUniform1i(textureLoc2, 1);
else if (timer<600)
DrawTexture(50,50,tex_png,textw,texth); // 1rst attribute buffer : vertices
else glEnableVertexAttribArray(0);
DrawTexture(50,50,tex_bmp,textw,texth); glBindBuffer(GL_ARRAY_BUFFER, vertexbuffer);
glVertexAttribPointer(
0, // attribute 0. No particular reason for 0, but must match the layout in the shader.
3, // size
GL_FLOAT, // type
GL_FALSE, // normalized?
0, // stride
(void*)0 // array buffer offset
);
// 2nd attribute buffer : colors
glEnableVertexAttribArray(1);
glBindBuffer(GL_ARRAY_BUFFER, colorbuffer);
glVertexAttribPointer(
1, // attribute. No particular reason for 1, but must match the layout in the shader.
2, // size
GL_FLOAT, // type
GL_FALSE, // normalized?
0, // stride
(void*)0 // array buffer offset
);
// Draw the triangle !
glDrawArrays(GL_TRIANGLES, 0, 2*3); // 2*3 indices starting at 0 -> 2 triangles -> 1 square
glDisableVertexAttribArray(0);
// RENDER END // RENDER END
/* Swap front and back buffers */ /* Swap front and back buffers */

View File

@@ -27,33 +27,6 @@
<Add option="-s" /> <Add option="-s" />
</Linker> </Linker>
</Target> </Target>
<Target title="Debug Mac">
<Option platforms="Mac;" />
<Option output="bin/Debug/opengl-test-two" prefix_auto="1" extension_auto="1" />
<Option object_output="obj/Debug/" />
<Option type="1" />
<Option compiler="gcc" />
<Compiler>
<Add option="-g" />
</Compiler>
<Linker>
<Add option="-framework AudioUnit" />
<Add option="-framework Carbon" />
<Add option="-framework Cocoa" />
<Add option="-framework CoreAudio" />
<Add option="-framework CoreFoundation" />
<Add option="-framework CoreVideo" />
<Add option="-framework ForceFeedback" />
<Add option="-framework IOKit" />
<Add option="-framework OpenGL" />
<Add library="GLEW" />
<Add library="glfw3" />
<Add library="iconv" />
<Add library="SDL2main" />
<Add library="SDL2" />
<Add library="SDL2_image" />
</Linker>
</Target>
</Build> </Build>
<Compiler> <Compiler>
<Add option="-Wall" /> <Add option="-Wall" />
@@ -61,18 +34,11 @@
<Add directory="include" /> <Add directory="include" />
</Compiler> </Compiler>
<Linker> <Linker>
<Add option="-framework AudioUnit" /> <Add library="glew32" />
<Add option="-framework Carbon" />
<Add option="-framework Cocoa" />
<Add option="-framework CoreAudio" />
<Add option="-framework CoreFoundation" />
<Add option="-framework CoreVideo" />
<Add option="-framework ForceFeedback" />
<Add option="-framework IOKit" />
<Add option="-framework OpenGL" />
<Add library="GLEW" />
<Add library="glfw3" /> <Add library="glfw3" />
<Add library="iconv" /> <Add library="gdi32" />
<Add library="opengl32" />
<Add library="mingw32" />
<Add library="SDL2main" /> <Add library="SDL2main" />
<Add library="SDL2" /> <Add library="SDL2" />
<Add library="SDL2_image" /> <Add library="SDL2_image" />

View File

@@ -2,7 +2,7 @@
1385320478 source:d:\owncloud\documents\programmierung\cpp\opengl-test-two\main.cpp 1385320478 source:d:\owncloud\documents\programmierung\cpp\opengl-test-two\main.cpp
<iostream> <iostream>
1473007864 source:d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\main.cpp 1473145022 source:d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\main.cpp
<GL/glew.h> <GL/glew.h>
<GLFW/glfw3.h> <GLFW/glfw3.h>
<SDL2/SDL.h> <SDL2/SDL.h>
@@ -13,7 +13,7 @@
<vector> <vector>
<stdexcept> <stdexcept>
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\glfw\glfw3.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\glfw\glfw3.h
<stddef.h> <stddef.h>
<stdint.h> <stdint.h>
<OpenGL/gl3.h> <OpenGL/gl3.h>
@@ -34,7 +34,7 @@
<GL/glext.h> <GL/glext.h>
<GL/glu.h> <GL/glu.h>
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl.h
"SDL_main.h" "SDL_main.h"
"SDL_stdinc.h" "SDL_stdinc.h"
"SDL_assert.h" "SDL_assert.h"
@@ -65,12 +65,12 @@
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_main.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_main.h
"SDL_stdinc.h" "SDL_stdinc.h"
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_stdinc.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_stdinc.h
"SDL_config.h" "SDL_config.h"
<sys/types.h> <sys/types.h>
<stdio.h> <stdio.h>
@@ -99,34 +99,34 @@
<stdlib.h> <stdlib.h>
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_config.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_config.h
"SDL_platform.h" "SDL_platform.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_platform.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_platform.h
"AvailabilityMacros.h" "AvailabilityMacros.h"
"TargetConditionals.h" "TargetConditionals.h"
<winapifamily.h> <winapifamily.h>
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\begin_code.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\begin_code.h
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\close_code.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\close_code.h
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_assert.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_assert.h
"SDL_config.h" "SDL_config.h"
"begin_code.h" "begin_code.h"
<signal.h> <signal.h>
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_atomic.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_atomic.h
"SDL_stdinc.h" "SDL_stdinc.h"
"SDL_platform.h" "SDL_platform.h"
"begin_code.h" "begin_code.h"
<mbarrier.h> <mbarrier.h>
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_audio.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_audio.h
"SDL_stdinc.h" "SDL_stdinc.h"
"SDL_error.h" "SDL_error.h"
"SDL_endian.h" "SDL_endian.h"
@@ -136,24 +136,24 @@
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_error.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_error.h
"SDL_stdinc.h" "SDL_stdinc.h"
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_endian.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_endian.h
"SDL_stdinc.h" "SDL_stdinc.h"
<endian.h> <endian.h>
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_mutex.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_mutex.h
"SDL_stdinc.h" "SDL_stdinc.h"
"SDL_error.h" "SDL_error.h"
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_thread.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_thread.h
"SDL_stdinc.h" "SDL_stdinc.h"
"SDL_error.h" "SDL_error.h"
"SDL_atomic.h" "SDL_atomic.h"
@@ -162,18 +162,18 @@
<process.h> <process.h>
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_rwops.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_rwops.h
"SDL_stdinc.h" "SDL_stdinc.h"
"SDL_error.h" "SDL_error.h"
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_clipboard.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_clipboard.h
"SDL_stdinc.h" "SDL_stdinc.h"
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_cpuinfo.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_cpuinfo.h
"SDL_stdinc.h" "SDL_stdinc.h"
<intrin.h> <intrin.h>
<intrin.h> <intrin.h>
@@ -185,7 +185,7 @@
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_events.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_events.h
"SDL_stdinc.h" "SDL_stdinc.h"
"SDL_error.h" "SDL_error.h"
"SDL_video.h" "SDL_video.h"
@@ -199,7 +199,7 @@
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_video.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_video.h
"SDL_stdinc.h" "SDL_stdinc.h"
"SDL_pixels.h" "SDL_pixels.h"
"SDL_rect.h" "SDL_rect.h"
@@ -207,12 +207,12 @@
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_pixels.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_pixels.h
"SDL_stdinc.h" "SDL_stdinc.h"
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_rect.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_rect.h
"SDL_stdinc.h" "SDL_stdinc.h"
"SDL_error.h" "SDL_error.h"
"SDL_pixels.h" "SDL_pixels.h"
@@ -220,7 +220,7 @@
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_surface.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_surface.h
"SDL_stdinc.h" "SDL_stdinc.h"
"SDL_pixels.h" "SDL_pixels.h"
"SDL_rect.h" "SDL_rect.h"
@@ -229,11 +229,11 @@
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_blendmode.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_blendmode.h
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_keyboard.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_keyboard.h
"SDL_stdinc.h" "SDL_stdinc.h"
"SDL_error.h" "SDL_error.h"
"SDL_keycode.h" "SDL_keycode.h"
@@ -241,27 +241,27 @@
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_keycode.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_keycode.h
"SDL_stdinc.h" "SDL_stdinc.h"
"SDL_scancode.h" "SDL_scancode.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_scancode.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_scancode.h
"SDL_stdinc.h" "SDL_stdinc.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_mouse.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_mouse.h
"SDL_stdinc.h" "SDL_stdinc.h"
"SDL_error.h" "SDL_error.h"
"SDL_video.h" "SDL_video.h"
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_joystick.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_joystick.h
"SDL_stdinc.h" "SDL_stdinc.h"
"SDL_error.h" "SDL_error.h"
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_gamecontroller.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_gamecontroller.h
"SDL_stdinc.h" "SDL_stdinc.h"
"SDL_error.h" "SDL_error.h"
"SDL_rwops.h" "SDL_rwops.h"
@@ -269,11 +269,11 @@
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_quit.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_quit.h
"SDL_stdinc.h" "SDL_stdinc.h"
"SDL_error.h" "SDL_error.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_gesture.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_gesture.h
"SDL_stdinc.h" "SDL_stdinc.h"
"SDL_error.h" "SDL_error.h"
"SDL_video.h" "SDL_video.h"
@@ -281,60 +281,60 @@
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_touch.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_touch.h
"SDL_stdinc.h" "SDL_stdinc.h"
"SDL_error.h" "SDL_error.h"
"SDL_video.h" "SDL_video.h"
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_filesystem.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_filesystem.h
"SDL_stdinc.h" "SDL_stdinc.h"
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_haptic.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_haptic.h
"SDL_stdinc.h" "SDL_stdinc.h"
"SDL_error.h" "SDL_error.h"
"SDL_joystick.h" "SDL_joystick.h"
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_hints.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_hints.h
"SDL_stdinc.h" "SDL_stdinc.h"
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_loadso.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_loadso.h
"SDL_stdinc.h" "SDL_stdinc.h"
"SDL_error.h" "SDL_error.h"
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_log.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_log.h
"SDL_stdinc.h" "SDL_stdinc.h"
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_messagebox.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_messagebox.h
"SDL_stdinc.h" "SDL_stdinc.h"
"SDL_video.h" "SDL_video.h"
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_power.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_power.h
"SDL_stdinc.h" "SDL_stdinc.h"
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_render.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_render.h
"SDL_stdinc.h" "SDL_stdinc.h"
"SDL_rect.h" "SDL_rect.h"
"SDL_video.h" "SDL_video.h"
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_system.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_system.h
"SDL_stdinc.h" "SDL_stdinc.h"
"SDL_keyboard.h" "SDL_keyboard.h"
"SDL_render.h" "SDL_render.h"
@@ -342,24 +342,24 @@
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_timer.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_timer.h
"SDL_stdinc.h" "SDL_stdinc.h"
"SDL_error.h" "SDL_error.h"
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_version.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_version.h
"SDL_stdinc.h" "SDL_stdinc.h"
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472737758 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_image.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\sdl2\sdl_image.h
"SDL.h" "SDL.h"
"SDL_version.h" "SDL_version.h"
"begin_code.h" "begin_code.h"
"close_code.h" "close_code.h"
1472927170 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\gl\glew.h 1473015242 d:\owncloud\documents\programmierung\cpp\imanox-chroma-matting\opengl-test-two\include\gl\glew.h
<stddef.h> <stddef.h>
<inttypes.h> <inttypes.h>
<stdint.h> <stdint.h>
@@ -368,369 +368,3 @@
<OpenGL/glu.h> <OpenGL/glu.h>
<GL/glu.h> <GL/glu.h>
1473323187 source:/Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/main.cpp
<GL/glew.h>
<GLFW/glfw3.h>
<SDL2/SDL.h>
<SDL2/SDL_image.h>
<stdio.h>
<iostream>
<fstream>
<vector>
<stdexcept>
1473057771 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/GL/glew.h
<stddef.h>
<inttypes.h>
<stdint.h>
<inttypes.h>
<Availability.h>
<OpenGL/glu.h>
<GL/glu.h>
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/GLFW/glfw3.h
<stddef.h>
<stdint.h>
<OpenGL/gl3.h>
<OpenGL/gl3ext.h>
<OpenGL/gl.h>
<OpenGL/glu.h>
<GL/glcorearb.h>
<GLES/gl.h>
<GLES/glext.h>
<GLES2/gl2.h>
<GLES2/gl2ext.h>
<GLES3/gl3.h>
<GLES2/gl2ext.h>
<GLES3/gl31.h>
<GLES2/gl2ext.h>
<vulkan/vulkan.h>
<GL/gl.h>
<GL/glext.h>
<GL/glu.h>
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL.h
"SDL_main.h"
"SDL_stdinc.h"
"SDL_assert.h"
"SDL_atomic.h"
"SDL_audio.h"
"SDL_clipboard.h"
"SDL_cpuinfo.h"
"SDL_endian.h"
"SDL_error.h"
"SDL_events.h"
"SDL_filesystem.h"
"SDL_joystick.h"
"SDL_gamecontroller.h"
"SDL_haptic.h"
"SDL_hints.h"
"SDL_loadso.h"
"SDL_log.h"
"SDL_messagebox.h"
"SDL_mutex.h"
"SDL_power.h"
"SDL_render.h"
"SDL_rwops.h"
"SDL_system.h"
"SDL_thread.h"
"SDL_timer.h"
"SDL_version.h"
"SDL_video.h"
"begin_code.h"
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_main.h
"SDL_stdinc.h"
"begin_code.h"
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_stdinc.h
"SDL_config.h"
<sys/types.h>
<stdio.h>
<stdlib.h>
<stddef.h>
<stdarg.h>
<stdlib.h>
<malloc.h>
<stddef.h>
<stdarg.h>
<memory.h>
<string.h>
<strings.h>
<inttypes.h>
<stdint.h>
<ctype.h>
<math.h>
<float.h>
<iconv.h>
<sal.h>
"begin_code.h"
<alloca.h>
<malloc.h>
<malloc.h>
<malloc.h>
<stdlib.h>
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_config.h
"SDL_platform.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_platform.h
"AvailabilityMacros.h"
"TargetConditionals.h"
<winapifamily.h>
"begin_code.h"
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/begin_code.h
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/close_code.h
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_assert.h
"SDL_config.h"
"begin_code.h"
<signal.h>
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_atomic.h
"SDL_stdinc.h"
"SDL_platform.h"
"begin_code.h"
<mbarrier.h>
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_audio.h
"SDL_stdinc.h"
"SDL_error.h"
"SDL_endian.h"
"SDL_mutex.h"
"SDL_thread.h"
"SDL_rwops.h"
"begin_code.h"
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_error.h
"SDL_stdinc.h"
"begin_code.h"
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_endian.h
"SDL_stdinc.h"
<endian.h>
"begin_code.h"
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_mutex.h
"SDL_stdinc.h"
"SDL_error.h"
"begin_code.h"
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_thread.h
"SDL_stdinc.h"
"SDL_error.h"
"SDL_atomic.h"
"SDL_mutex.h"
"begin_code.h"
<process.h>
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_rwops.h
"SDL_stdinc.h"
"SDL_error.h"
"begin_code.h"
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_clipboard.h
"SDL_stdinc.h"
"begin_code.h"
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_cpuinfo.h
"SDL_stdinc.h"
<intrin.h>
<intrin.h>
<altivec.h>
<mmintrin.h>
<mm3dnow.h>
<xmmintrin.h>
<emmintrin.h>
"begin_code.h"
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_events.h
"SDL_stdinc.h"
"SDL_error.h"
"SDL_video.h"
"SDL_keyboard.h"
"SDL_mouse.h"
"SDL_joystick.h"
"SDL_gamecontroller.h"
"SDL_quit.h"
"SDL_gesture.h"
"SDL_touch.h"
"begin_code.h"
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_video.h
"SDL_stdinc.h"
"SDL_pixels.h"
"SDL_rect.h"
"SDL_surface.h"
"begin_code.h"
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_pixels.h
"SDL_stdinc.h"
"begin_code.h"
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_rect.h
"SDL_stdinc.h"
"SDL_error.h"
"SDL_pixels.h"
"SDL_rwops.h"
"begin_code.h"
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_surface.h
"SDL_stdinc.h"
"SDL_pixels.h"
"SDL_rect.h"
"SDL_blendmode.h"
"SDL_rwops.h"
"begin_code.h"
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_blendmode.h
"begin_code.h"
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_keyboard.h
"SDL_stdinc.h"
"SDL_error.h"
"SDL_keycode.h"
"SDL_video.h"
"begin_code.h"
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_keycode.h
"SDL_stdinc.h"
"SDL_scancode.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_scancode.h
"SDL_stdinc.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_mouse.h
"SDL_stdinc.h"
"SDL_error.h"
"SDL_video.h"
"begin_code.h"
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_joystick.h
"SDL_stdinc.h"
"SDL_error.h"
"begin_code.h"
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_gamecontroller.h
"SDL_stdinc.h"
"SDL_error.h"
"SDL_rwops.h"
"SDL_joystick.h"
"begin_code.h"
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_quit.h
"SDL_stdinc.h"
"SDL_error.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_gesture.h
"SDL_stdinc.h"
"SDL_error.h"
"SDL_video.h"
"SDL_touch.h"
"begin_code.h"
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_touch.h
"SDL_stdinc.h"
"SDL_error.h"
"SDL_video.h"
"begin_code.h"
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_filesystem.h
"SDL_stdinc.h"
"begin_code.h"
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_haptic.h
"SDL_stdinc.h"
"SDL_error.h"
"SDL_joystick.h"
"begin_code.h"
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_hints.h
"SDL_stdinc.h"
"begin_code.h"
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_loadso.h
"SDL_stdinc.h"
"SDL_error.h"
"begin_code.h"
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_log.h
"SDL_stdinc.h"
"begin_code.h"
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_messagebox.h
"SDL_stdinc.h"
"SDL_video.h"
"begin_code.h"
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_power.h
"SDL_stdinc.h"
"begin_code.h"
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_render.h
"SDL_stdinc.h"
"SDL_rect.h"
"SDL_video.h"
"begin_code.h"
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_system.h
"SDL_stdinc.h"
"SDL_keyboard.h"
"SDL_render.h"
"SDL_video.h"
"begin_code.h"
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_timer.h
"SDL_stdinc.h"
"SDL_error.h"
"begin_code.h"
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_version.h
"SDL_stdinc.h"
"begin_code.h"
"close_code.h"
1472735445 /Users/leanderschmedemann/programming/imanox/imanox-chroma-matting/opengl-test-two/include/SDL2/SDL_image.h
"SDL.h"
"SDL_version.h"
"begin_code.h"
"close_code.h"

View File

@@ -1,2 +0,0 @@
glew32 -> GLEW

View File

@@ -1,8 +1,80 @@
#version 330 core #version 330 core
out vec4 color; // Interpolated values from the vertex shaders
in vec2 UV;
// Ouput data
//out vec3 color;
layout(location = 0) out vec3 color;
// Values that stay constant for the whole mesh.
uniform sampler2D myTextureSampler;
uniform sampler2D myTextureSampler2;
// Relative width/height of a pixel
uniform float pixWidth;
uniform float pixHeight;
// Pixel state
int IS_BACKGROUND = 0;
int IS_UNDEFINED = 1;
int IS_FOREGROUND = 2;
int UNSET = -1;
vec3 getColor(vec2 uvCoord) {
return texture(myTextureSampler2, uvCoord).rgb;
}
bool isBackground(vec3 c) {
/*// 49,206, 11
if (all( lessThanEqual(c, vec3(51.0f/255.0f, 208.0f/255.0f, 13.0f/255.0f))) &&
all(greaterThanEqual(c, vec3(47.0f/255.0f, 204.0f/255.0f, 9.0f/255.0f)))*/
// 0, 255, 0
if (all( lessThanEqual(c, vec3(2.0f/255.0f, 255.0f/255.0f, 2.0f/255.0f))) &&
all(greaterThanEqual(c, vec3(0.0f/255.0f, 253.0f/255.0f, 0.0f/255.0f)))
) {
return true;
} else {
return false;
}
}
void main(){ void main(){
color = vec3(0.5,0,0); int status = UNSET;
for(int w=-5;w<=5;w++){
for(int h=-5;h<=5;h++){
if (w+h==-10) { // first pixel
if (isBackground(getColor(UV+vec2(pixWidth*w, pixHeight*h)))) {
status = IS_BACKGROUND;
} else {
status = IS_FOREGROUND;
}
} else { // other pixels
if (isBackground(getColor(UV+vec2(pixWidth*w, pixHeight*h)))) {
if (status != IS_BACKGROUND) {
status = IS_UNDEFINED;
w=100000;
break;
}
} else {
if (status != IS_FOREGROUND) {
status = IS_UNDEFINED;
w=100000;
break;
}
}
}
}
}
if (status == IS_BACKGROUND) {
color = vec3(1.0f, 0.0f, 0.0f);
} else if (status == IS_FOREGROUND) {
color = vec3(0.0f, 1.0f, 0.0f);
} else {
color = vec3(0.0f, 0.0f, 1.0f);
}
} }

View File

@@ -1,8 +1,17 @@
#version 330 core #version 330 core
// Input vertex data, different for all executions of this shader.
layout(location = 0) in vec3 vertexPosition_modelspace; layout(location = 0) in vec3 vertexPosition_modelspace;
layout(location = 1) in vec2 vertexUV;
// Output data ; will be interpolated for each fragment.
out vec2 UV;
void main(){ void main(){
gl_Position.xyz = vertexPosition_modelspace; // Output position of the vertex, in clip space : MVP * position
gl_Position.w = 1.0; gl_Position = vec4(vertexPosition_modelspace, 1);
// UV of the vertex. No special space for this one.
UV = vertexUV;
} }