glfwWaitEventsTimeout :: (timeout: f64) -> void ---
glfwPostEmptyEvent :: () -> void ---
glfwSwapBuffers :: (window: GLFWwindow_p) -> void ---
+ glfwSetWindowSizeCallback :: (window: GLFWwindow_p, name: str) -> void ---
}
// This should always be defined right?
GLFW_HOOK(glfwSetScrollCallback, (double dx, double dy),
(WASM_F64_VAL(dx), WASM_F64_VAL(dy)))
+
+GLFW_HOOK(glfwSetWindowSizeCallback, (int width, int height),
+ (WASM_I32_VAL(width), WASM_I32_VAL(height)))
// // glfwSetDropCallback
ONYX_DEF(glfwGetLoadProcAddress, (), (LONG)) {
ONYX_FUNC(glfwSetCursorPosCallback)
ONYX_FUNC(glfwSetCursorEnterCallback)
ONYX_FUNC(glfwSetScrollCallback)
+ ONYX_FUNC(glfwSetWindowSizeCallback)
ONYX_FUNC(glfwGetLoadProcAddress)
// // glfwGetKeyName :: (key, scancode: i32) -> cstr ---
NULL
-};
\ No newline at end of file
+};
glActiveTexture :: (texture: GLenum) -> void ---
glAttachShader :: (program: GLuint, shader: GLuint) -> void ---
glBindAttribLocation :: (program: GLuint, index: GLuint, name: ^GLchar) -> void ---
- glBindBuffer :: (target: GLenum, buffer: GLuint) -> void ---
+ glBindBuffer :: (target: GLenum, buffer: GLint) -> void ---
glBindFramebuffer :: (target: GLenum, framebuffer: GLuint) -> void ---
glBindRenderbuffer :: (target: GLenum, renderbuffer: GLuint) -> void ---
glBindTexture :: (target: GLenum, texture: GLuint) -> void ---
glFramebufferTextureLayer :: (target: GLenum, attachment: GLenum, texture: GLuint, level: GLint, layer: GLint) -> void ---
glMapBufferRange :: (target: GLenum, offset: GLintptr, length: GLsizeiptr, access: GLbitfield) -> rawptr ---
glFlushMappedBufferRange :: (target: GLenum, offset: GLintptr, length: GLsizeiptr) -> void ---
- glBindVertexArray :: (array: GLuint) -> void ---
+ glBindVertexArray :: (array: GLint) -> void ---
glDeleteVertexArrays :: (n: GLsizei, arrays: ^GLuint) -> void ---
glGenVertexArrays :: (n: GLsizei, arrays: ^GLuint) -> void ---
glIsVertexArray :: (array: GLuint) -> GLboolean ---
return NULL; \
}
+#define ONYX_GL_INT_PTR_RET_PTR(name, ptr_type) \
+ ONYX_DEF(name, (INT, PTR), (INT)) { \
+ results->data[0] = WASM_I32_VAL(glad_##name (params->data[0].of.i32, (ptr_type *) ONYX_PTR(params->data[1].of.i32))); \
+ return NULL; \
+ }
+
#define ONYX_GL_INT_2_PTR(name, ptr_type) \
ONYX_DEF(name, (INT, INT, PTR), ()) { \
glad_##name (params->data[0].of.i32, params->data[1].of.i32, (ptr_type *) ONYX_PTR(params->data[2].of.i32)); \
ONYX_GL_INT_PTR(glGetFragDataLocation, char)
ONYX_GL_INT_PTR(glVertexAttribI4iv, GLint)
ONYX_GL_INT_PTR(glVertexAttribI4uiv, GLuint)
-ONYX_GL_INT_PTR(glGetUniformBlockIndex, char)
+ONYX_GL_INT_PTR_RET_PTR(glGetUniformBlockIndex, char)
ONYX_GL_INT_3(glDrawArrays)
ONYX_GL_INT_3(glStencilFunc)
ONYX_GL_INT_3(glStencilOp)