Initial commit
This commit is contained in:
124
application/target/opengl.h
Normal file
124
application/target/opengl.h
Normal file
@@ -0,0 +1,124 @@
|
||||
#ifndef _opengl
|
||||
|
||||
#define _opengl
|
||||
|
||||
|
||||
// Macros
|
||||
|
||||
#define HEIGHT 480
|
||||
|
||||
|
||||
#define WIDTH 640
|
||||
|
||||
|
||||
#define GL_GLEXT_PROTOTYPES
|
||||
|
||||
|
||||
|
||||
|
||||
#include "stdlib.h"
|
||||
|
||||
extern char * __ClassNames[];
|
||||
|
||||
|
||||
// Includes
|
||||
|
||||
#include <time.h>
|
||||
|
||||
#include <GL/glx.h>
|
||||
|
||||
#include <GL/gl.h>
|
||||
|
||||
#include <GL/glext.h>
|
||||
|
||||
#include <X11/keysym.h>
|
||||
|
||||
#include <X11/Xlib.h>
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
#include "unsignedIntegerArray.h"
|
||||
|
||||
#include "floatArray.h"
|
||||
|
||||
#include "shader.h"
|
||||
|
||||
#include "mesh.h"
|
||||
|
||||
|
||||
typedef struct opengl{
|
||||
|
||||
unsigned short __classIndex;
|
||||
|
||||
Display * mainDisplay;
|
||||
|
||||
Window mainWindow;
|
||||
|
||||
int MainScreen;
|
||||
|
||||
Window RootWindow;
|
||||
|
||||
int lastTime;
|
||||
|
||||
clock_t deltaTime;
|
||||
|
||||
struct timespec startTime;
|
||||
|
||||
int frameCount;
|
||||
|
||||
GLuint vertexbuffer;
|
||||
|
||||
GLuint indexBuffer;
|
||||
|
||||
struct shader * currentShader;
|
||||
|
||||
struct mesh * quads;
|
||||
|
||||
unsigned char image[HEIGHT][WIDTH];
|
||||
|
||||
|
||||
} opengl;
|
||||
|
||||
void opengl_initialize( opengl * this );
|
||||
|
||||
void opengl_showVersion( opengl * this );
|
||||
|
||||
void opengl_setupTime( opengl * this );
|
||||
|
||||
void opengl_setupWindow( opengl * this );
|
||||
|
||||
void opengl_setupRenderLoop( opengl * this );
|
||||
|
||||
void opengl_createShaders( opengl * this );
|
||||
|
||||
void opengl_createQuad( opengl * this );
|
||||
|
||||
double opengl_clockToMilliseconds( opengl * this, clock_t ticks );
|
||||
|
||||
void opengl_render( opengl * this );
|
||||
|
||||
void opengl_displayFPS( opengl * this );
|
||||
|
||||
void opengl_vertex2f( opengl * this, float x, float y );
|
||||
|
||||
void opengl_color3f( opengl * this, float r, float g, float b );
|
||||
|
||||
void opengl_clear( opengl * this, GLbitfield mask );
|
||||
|
||||
void opengl_clearColor( opengl * this, float r, float g, float b, float a );
|
||||
|
||||
void opengl_begin( opengl * this, GLenum mode );
|
||||
|
||||
void opengl_end( opengl * this );
|
||||
|
||||
void opengl_flush( opengl * this );
|
||||
|
||||
static int DoubleBufferAttributes[] ;
|
||||
|
||||
opengl opengl_new( );
|
||||
|
||||
opengl * opengl_newPointer( );
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user