void MES2Context::texSubImage(unsigned int level, int xoffset, int yoffset, unsigned int width, unsigned int height, M_TYPES type, M_TEX_MODES mode, const void * pixels) { GLenum format = returnTexMode(mode); glTexSubImage2D(GL_TEXTURE_2D, level, xoffset, yoffset, width, height, format, returnGLType(type), pixels); if(level > 0) glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MAX_ANISOTROPY_EXT, maxAnisotropy); // anisotropic filtering }
void MGLContext::texImage(unsigned int level, unsigned int width, unsigned int height, M_TYPES type, M_TEX_MODES mode, const void * pixels) { GLenum format = returnTexMode(mode); GLenum intFormat = format; //if(type == M_FLOAT && mode == M_RGB) // intFormat = GL_RGB32F_ARB; glTexImage2D(GL_TEXTURE_2D, level, intFormat, width, height, 0, format, returnGLType(type), pixels); if(level > 0) glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MAX_ANISOTROPY_EXT, maxAnisotropy); // anisotropic filtering }
void MES2Context::drawElement(M_PRIMITIVE_TYPES type, unsigned int size, M_TYPES indicesType, const void * indices) { glDrawElements(returnPrimitiveType(type), size, returnGLType(indicesType), indices); }
void MES2Context::setAttribPointer(unsigned int location, M_TYPES type, unsigned int components, const void * pointer, const bool normalized) { glVertexAttribPointer(location, components, returnGLType(type), normalized, 0, pointer); }
void MGLContext::setTexCoordPointer(M_TYPES type, unsigned int components, const void * pointer){ glTexCoordPointer(components, returnGLType(type), 0, pointer); }
void MGLContext::setNormalPointer(M_TYPES type, const void * pointer){ glNormalPointer(returnGLType(type), 0, pointer); }