#ifndef MAIN_H_INCLUDED #define MAIN_H_INCLUDED #define GL_GLEXT_PROTOTYPES #include <caca.h> #include <SDL2/SDL.h> #include <SDL2/SDL_opengl.h> #include <GL/glu.h> typedef struct { // libcaca caca_display_t *dp; caca_canvas_t *cv; caca_dither_t *d; int w, h; // caca terminal size in characters // SDL worker SDL_Window* sdl_win; SDL_Renderer *sdl_rndr; SDL_Texture *sdl_target; // OpenGL worker SDL_Window* gl_win; SDL_GLContext gl_ctx; // framebuffer to inject OpenGL or SDL result in caca canvas uint32_t *raw_target; // Timing Uint32 sdl_ticks; Uint32 framecount; Uint32 sc_framecount; } graphical_env_t; #define FBUF_W 256 #define FBUF_H 256 #include "scene00.h" #include "scene01.h" #include "scene02.h" #endif