gltk.Buffer.set_buffer_data() can take an arbitrary array.
This commit is contained in:
parent
24b7ee9f16
commit
64c3285fbc
@ -38,4 +38,11 @@ class Buffer
|
|||||||
bind();
|
bind();
|
||||||
glBufferData(target, size, ptr, usage);
|
glBufferData(target, size, ptr, usage);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void set_buffer_data(T)(GLenum target, GLenum usage, T[] arr)
|
||||||
|
{
|
||||||
|
m_target = target;
|
||||||
|
bind();
|
||||||
|
glBufferData(target, arr.length * arr[0].sizeof, arr.ptr, usage);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -74,7 +74,7 @@ class Font
|
|||||||
cast(GLfloat)left, cast(GLfloat)top, 0.0, t_max,
|
cast(GLfloat)left, cast(GLfloat)top, 0.0, t_max,
|
||||||
cast(GLfloat)(left + cglyph.width), cast(GLfloat)top, s_max, t_max,
|
cast(GLfloat)(left + cglyph.width), cast(GLfloat)top, s_max, t_max,
|
||||||
];
|
];
|
||||||
m_buffer.set_buffer_data(GL_ARRAY_BUFFER, GL_STATIC_DRAW, data.ptr, data.length * GLfloat.sizeof);
|
m_buffer.set_buffer_data(GL_ARRAY_BUFFER, GL_STATIC_DRAW, data);
|
||||||
|
|
||||||
glEnableVertexAttribArray(0);
|
glEnableVertexAttribArray(0);
|
||||||
glVertexAttribPointer(0, 4, GL_FLOAT, GL_FALSE, 0, null);
|
glVertexAttribPointer(0, 4, GL_FLOAT, GL_FALSE, 0, null);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user