}
std::stringstream out;
- out << target << ", " << texture;
+ out << std::hex << target << ", " << std::dec << texture;
TraceCallStack::NamedParams namedParams;
- namedParams["target"] << target;
+ namedParams["target"] << std::hex << target;
namedParams["texture"] << texture;
mTextureTrace.PushCall("BindTexture", out.str(), namedParams);
case GL_ACTIVE_UNIFORM_MAX_LENGTH:
*params = 100;
break;
+ case GL_ACTIVE_ATTRIBUTE_MAX_LENGTH:
+ *params = 100;
+ break;
}
}
out << std::hex << target << ", " << pname << ", " << param;
std::string params = out.str();
- out.str("");
- out << std::hex << target;
TraceCallStack::NamedParams namedParams;
- namedParams["target"] << out.str();
- out.str("");
- out << std::hex << pname;
- namedParams["pname"] << out.str();
- out.str("");
- out << std::hex << param;
- namedParams["param"] << out.str();
+ namedParams["target"] << std::hex << target;
+ namedParams["pname"] << std::hex << pname;
+ namedParams["param"] << param;
mTexParameterTrace.PushCall("TexParameteri", params, namedParams);
}
inline GLboolean UnmapBuffer(GLenum target) override
{
- return false;
+ if(mMappedBuffer)
+ {
+ free(mMappedBuffer);
+ mMappedBuffer = nullptr;
+ }
+ return true; // false indicates corruption, nothing else.
}
inline void GetBufferPointerv(GLenum target, GLenum pname, GLvoid** params) override
inline GLvoid* MapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access) override
{
- return NULL;
+ mMappedBuffer = reinterpret_cast<GLvoid*>(malloc(offset + length));
+ return mMappedBuffer;
}
inline void FlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length) override
GLuint mCompileStatus;
BufferDataCalls mBufferDataCalls;
BufferSubDataCalls mBufferSubDataCalls;
+ GLvoid* mMappedBuffer{nullptr};
GLuint mLinkStatus;
GLint mNumberOfActiveUniforms;
GLenum mGetErrorResult;
// Shaders & Uniforms
GLuint mLastShaderIdUsed;
- GLuint mLastProgramIdUsed;
+ GLuint mLastProgramIdUsed{0u};
GLuint mLastUniformIdUsed;
typedef std::map<std::string, GLint> UniformIDMap;
typedef std::map<GLuint, UniformIDMap> ProgramUniformMap;