Skip to content

Instantly share code, notes, and snippets.

I may be slow to respond.

Dan Glastonbury djg

I may be slow to respond.
Block or report user

Report or block djg

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
View gist:8996684
if (texture() && texture()->SomeMethod()) {
Texture* tex = texture();
if (tex && tex->SomeMethod()) {
View pilots
Truly superior pilots are those who use their superior judgment to avoid those situations where they might have to use their superior skills.
— cliché
View gist:11203023
// -----------------------------------------------------------------------------
djg / ugh
Created May 12, 2014
GLSL 1.2 -> GLSL 1.5
View ugh
#version 150
out vec4 gl_FragColor
#ifdef GL_ES
precision mediump float;
#define COLOR_PRECISION lowp
uniform COLOR_PRECISION vec4 uRenderColor;
uniform sampler2D uTexture;
View gist:7cae0c28501ab4108510
The GL_TRANSFORM_FEEDBACK_BUFFER buffer binding point may be
passed to glBindBuffer, but will not directly affect transform
feedback state. Instead, the indexed GL_TRANSFORM_FEEDBACK_BUFFER
bindings must be used through a call to glBindBufferBase or
glBindBufferRange. This will affect the generic
Likewise, the GL_UNIFORM_BUFFER buffer binding point may be used,
but does not directly affect uniform buffer
state. glBindBufferBase or glBindBufferRange must be used to bind
View djg.el
;; I'm always opening a buffer in the wrong window. These function
;; help move the newly opened buffer to another window and restore the
;; buffer I was previously looking at.
(defun djg/buf-move (dir errmsg)
(let* ((other-win (windmove-find-other-window dir))
(buf-this-buf (window-buffer (selected-window))))
(if (null other-win)
(error errmsg)
(set-window-buffer other-win buf-this-buf)
djg / gist:7140c17b7f1fa8e8110e
Created Apr 13, 2015
That doesn't seem right...
View gist:7140c17b7f1fa8e8110e
$ ninja && ./xfb
[2/2] clang++ xfb.o deRandom.o gl3w.o -o xfb -lglfw3 -framework Cocoa -framework OpenGL -framework IOKit -framework CoreVideo
glDrawArrays(0x0000, 0, 64)
glDrawArrays(0x0000, 64, 64)
glDrawArrays(0x0000, 128, 64)
View gist:572eb0acc7c7c9667493
GLuint buf;
glGenBuffers(1, &buf);
// glBindBuffer(GL_UNIFORM, buf); <-- OSX needs this or ...
glBindBufferRange(GL_UNIFORM_BUFFER, 0, buf, 0, 4); // ... this returns GL_INVALID_VALUE
View bsearch
int* bsearch(int val, int* base, int nelems)
if (base == NULL || nelems == 0)
return NULL;
int lo = 0;
int hi = nelems - 1;
for (;;)
View bsearch2.c
int binarysearch(DataType t)
/* return (any) position
if t in sorted x[0..n-1] or
-1 if t is not present */
int l, u, m;
l = 0;
u = n-1;
while (l <= u) {
m = (l + u) / 2;
You can’t perform that action at this time.