removed the gl-constants sub project

This commit is contained in:
Erik 2016-03-15 18:29:22 +01:00
parent e726c469be
commit 14d2f759c6
7 changed files with 25 additions and 55 deletions

View File

@ -1,8 +0,0 @@
CFLAGS=-I/usr/local/include
LDFLAGS=-L/usr/local/lib/
LDLIBS=-lglfw3 -framework OpenGL -framework Cocoa -framework IOKit
all: gl_constants.o
clang gl_constants.c -shared -g -o gl_constants.so $(CFLAGS) $(LDFLAGS) $(LDLIBS)
clean: rm -f *.o main

View File

@ -1,3 +0,0 @@
#include <GLFW/glfw3.h>
#include "gl_constants.h"

View File

@ -1,12 +0,0 @@
#ifndef GL_CONSTANTS
#define GL_CONSTANTS
#include <GLFW/glfw3.h>
int gl_color_buffer_bit = GL_COLOR_BUFFER_BIT;
int gl_lines = GL_LINES;
int gl_line_strip = GL_LINE_STRIP;
int gl_triangles = GL_TRIANGLES;
#endif

Binary file not shown.

View File

@ -113,5 +113,5 @@
(let [evaled (eval variable-symbol)
t (type evaled)]
(if (or (int? evaled) (float? evaled) (string? evaled))
(str (type-build t) " " variable-symbol " = " (prn evaled) ";")
(str (type-build t) " " (c-ify-name (str variable-symbol)) " = " (prn evaled) ";")
(error (str "Can't handle globals of type " t " yet.")))))

View File

@ -1,32 +1,27 @@
(defn register-glfw ()
(let [glfw (load-dylib "libglfw3.dylib")
gl-constants (load-dylib (str carp-dir "gl-constants/gl_constants.so"))]
(do
(reset! header-files (cons "<GLFW/glfw3.h>" header-files))
(reset! header-files (cons (str "\"" carp-dir "gl-constants/gl_constants.h\"") header-files))
(register glfw "glfwInit" '() :bool)
(register glfw "glfwCreateWindow" '(:int :int (:ref :string) :GLFWmonitor :GLFWwindow) '(:ref :GLFWwindow))
(register glfw "glfwMakeContextCurrent" '((:ref :GLFWwindow)) :void)
(register glfw "glfwTerminate" '() :void)
(register glfw "glfwPollEvents" '() :void)
(register glfw "glfwWindowShouldClose" '((:ref :GLFWwindow)) :bool)
(register glfw "glfwSwapBuffers" '((:ref :GLFWwindow)) :void)
(register glfw "glClearColor" '(:float :float :float :float) :void)
(register glfw "glClear" '(:int) :void)
(register glfw "glColor3f" '(:float :float :float) :void)
(register glfw "glBegin" '(:int) :void)
(register glfw "glEnd" '() :void)
(register glfw "glVertex3f" '(:float, :float, :float) :void)
(def glfw (load-dylib "libglfw3.dylib"))
(register-variable gl-constants "gl_color_buffer_bit" :int)
(register-variable gl-constants "gl_lines" :int)
(register-variable gl-constants "gl_line_strip" :int)
(register-variable gl-constants "gl_triangles" :int)
)))
(reset! header-files (cons "<GLFW/glfw3.h>" header-files))
(register glfw "glfwInit" '() :bool)
(register glfw "glfwCreateWindow" '(:int :int (:ref :string) :GLFWmonitor :GLFWwindow) '(:ref :GLFWwindow))
(register glfw "glfwMakeContextCurrent" '((:ref :GLFWwindow)) :void)
(register glfw "glfwTerminate" '() :void)
(register glfw "glfwPollEvents" '() :void)
(register glfw "glfwWindowShouldClose" '((:ref :GLFWwindow)) :bool)
(register glfw "glfwSwapBuffers" '((:ref :GLFWwindow)) :void)
(register glfw "glClearColor" '(:float :float :float :float) :void)
(register glfw "glClear" '(:int) :void)
(register glfw "glColor3f" '(:float :float :float) :void)
(register glfw "glBegin" '(:int) :void)
(register glfw "glEnd" '() :void)
(register glfw "glVertex3f" '(:float, :float, :float) :void)
(def carp-gl-color-buffer-bit 16384)
(def carp-gl-lines 1)
(def carp-gl-line-strip 3)
(def carp-gl-triangles 4)
;; glfwSetKeyCallback(window, key_callback);
;; void key_callback(GLFWwindow* window, int key, int scancode, int action, int mods);;
@ -37,13 +32,11 @@
;; glfwSetCursorPosCallback(window, cursor_pos_callback);
;; static void cursor_position_callback(GLFWwindow* window, double xpos, double ypos)
(register-glfw)
(defn set-clear-color ()
(glClearColor 0.0f 0.95f 0.75f 1.0f))
(defn draw-rect (x y w h)
(do (glBegin gl-triangles)
(do (glBegin carp-gl-triangles)
(glVertex3f x y 0.0f)
(glVertex3f (+ x w) y 0.0f)
(glVertex3f (+ x w) (+ y h) 0.0f)

View File

@ -13,7 +13,7 @@
(while (not (glfwWindowShouldClose window))
(do
(glClearColor (red) 0.85f 0.85f 1.0f)
(glClear gl-color-buffer-bit)
(glClear carp-gl-color-buffer-bit)
(glColor3f 1.0 0.9f 0.2f)
(draw-rect -0.5f -0.5f 1.0f 1.0f)
(glfwSwapBuffers window)