Add important tagging to parameters in GL

This commit is contained in:
baldurk
2021-07-01 15:15:02 +01:00
parent 70a51ae498
commit 3036b854ad
8 changed files with 244 additions and 306 deletions
+5 -3
View File
@@ -1112,7 +1112,7 @@ bool GLResourceManager::Serialise_InitialState(SerialiserType &ser, ResourceId i
if(initial)
initContents = *initial;
SERIALISE_ELEMENT(id).TypedAs("GLResource"_lit);
SERIALISE_ELEMENT(id).TypedAs("GLResource"_lit).Important();
SERIALISE_ELEMENT_LOCAL(Type, initial->type);
if(IsReplayingAndReading())
@@ -1156,7 +1156,8 @@ bool GLResourceManager::Serialise_InitialState(SerialiserType &ser, ResourceId i
// not using SERIALISE_ELEMENT_ARRAY so we can deliberately avoid allocation - we serialise
// directly into upload memory
ser.Serialise("BufferContents"_lit, BufferContents, BufferContentsSize, SerialiserFlags::NoFlags);
ser.Serialise("BufferContents"_lit, BufferContents, BufferContentsSize, SerialiserFlags::NoFlags)
.Important();
if(mappedBuffer.name)
GL.glUnmapNamedBufferEXT(mappedBuffer.name);
@@ -1670,7 +1671,8 @@ bool GLResourceManager::Serialise_InitialState(SerialiserType &ser, ResourceId i
}
// serialise without allocating memory as we already have our scratch buf sized.
ser.Serialise("SubresourceContents"_lit, scratchBuf, size, SerialiserFlags::NoFlags);
ser.Serialise("SubresourceContents"_lit, scratchBuf, size, SerialiserFlags::NoFlags)
.Important();
// on replay, restore the data into the initial contents texture
if(IsReplayingAndReading() && !ser.IsErrored())
@@ -957,11 +957,11 @@ bool WrappedOpenGL::Serialise_glNamedBufferSubDataEXT(SerialiserType &ser, GLuin
GLintptr offsetPtr, GLsizeiptr size,
const void *data)
{
SERIALISE_ELEMENT_LOCAL(buffer, BufferRes(GetCtx(), bufferHandle));
SERIALISE_ELEMENT_LOCAL(buffer, BufferRes(GetCtx(), bufferHandle)).Important();
SERIALISE_ELEMENT_LOCAL(offset, (uint64_t)offsetPtr);
SERIALISE_ELEMENT_LOCAL(bytesize, (uint64_t)size);
SERIALISE_ELEMENT_ARRAY(data, bytesize);
SERIALISE_ELEMENT_ARRAY(data, bytesize).Important();
SERIALISE_CHECK_READ_ERRORS();
@@ -1097,8 +1097,8 @@ bool WrappedOpenGL::Serialise_glNamedCopyBufferSubDataEXT(SerialiserType &ser,
GLintptr readOffsetPtr,
GLintptr writeOffsetPtr, GLsizeiptr sizePtr)
{
SERIALISE_ELEMENT_LOCAL(readBuffer, BufferRes(GetCtx(), readBufferHandle));
SERIALISE_ELEMENT_LOCAL(writeBuffer, BufferRes(GetCtx(), writeBufferHandle));
SERIALISE_ELEMENT_LOCAL(readBuffer, BufferRes(GetCtx(), readBufferHandle)).Important();
SERIALISE_ELEMENT_LOCAL(writeBuffer, BufferRes(GetCtx(), writeBufferHandle)).Important();
SERIALISE_ELEMENT_LOCAL(readOffset, (uint64_t)readOffsetPtr);
SERIALISE_ELEMENT_LOCAL(writeOffset, (uint64_t)writeOffsetPtr);
SERIALISE_ELEMENT_LOCAL(size, (uint64_t)sizePtr);
@@ -1118,9 +1118,6 @@ bool WrappedOpenGL::Serialise_glNamedCopyBufferSubDataEXT(SerialiserType &ser,
ResourceId dstid = GetResourceManager()->GetResID(writeBuffer);
DrawcallDescription draw;
draw.name = StringFormat::Fmt("%s(%s, %s)", ToStr(gl_CurChunk).c_str(),
ToStr(GetResourceManager()->GetOriginalID(srcid)).c_str(),
ToStr(GetResourceManager()->GetOriginalID(dstid)).c_str());
draw.flags |= DrawFlags::Copy;
draw.copySource = GetResourceManager()->GetOriginalID(srcid);
@@ -1431,9 +1428,9 @@ bool WrappedOpenGL::Serialise_glBindBufferRange(SerialiserType &ser, GLenum targ
GLuint bufferHandle, GLintptr offsetPtr,
GLsizeiptr sizePtr)
{
SERIALISE_ELEMENT(target);
SERIALISE_ELEMENT(index);
SERIALISE_ELEMENT_LOCAL(buffer, BufferRes(GetCtx(), bufferHandle));
SERIALISE_ELEMENT(target).Important();
SERIALISE_ELEMENT(index).Important();
SERIALISE_ELEMENT_LOCAL(buffer, BufferRes(GetCtx(), bufferHandle)).Important();
SERIALISE_ELEMENT_LOCAL(offset, (uint64_t)offsetPtr);
SERIALISE_ELEMENT_LOCAL(size, (uint64_t)sizePtr);
@@ -1574,8 +1571,8 @@ template <typename SerialiserType>
bool WrappedOpenGL::Serialise_glBindBuffersBase(SerialiserType &ser, GLenum target, GLuint first,
GLsizei count, const GLuint *bufferHandles)
{
SERIALISE_ELEMENT(target);
SERIALISE_ELEMENT(first);
SERIALISE_ELEMENT(target).Important();
SERIALISE_ELEMENT(first).Important();
SERIALISE_ELEMENT(count);
// can't serialise arrays of GL handles since they're not wrapped or typed :(.
@@ -1588,7 +1585,7 @@ bool WrappedOpenGL::Serialise_glBindBuffersBase(SerialiserType &ser, GLenum targ
buffers.push_back(BufferRes(GetCtx(), bufferHandles ? bufferHandles[i] : 0));
}
SERIALISE_ELEMENT(buffers);
SERIALISE_ELEMENT(buffers).Important();
SERIALISE_CHECK_READ_ERRORS();
@@ -1782,10 +1779,10 @@ bool WrappedOpenGL::Serialise_glBindBuffersRange(SerialiserType &ser, GLenum tar
sizes.push_back((uint64_t)sizePtrs[i]);
}
SERIALISE_ELEMENT(target);
SERIALISE_ELEMENT(first);
SERIALISE_ELEMENT(target).Important();
SERIALISE_ELEMENT(first).Important();
SERIALISE_ELEMENT(count);
SERIALISE_ELEMENT(buffers);
SERIALISE_ELEMENT(buffers).Important();
SERIALISE_ELEMENT(offsets);
SERIALISE_ELEMENT(sizes);
@@ -2009,8 +2006,6 @@ bool WrappedOpenGL::Serialise_glInvalidateBufferData(SerialiserType &ser, GLuint
AddEvent();
DrawcallDescription draw;
draw.name = StringFormat::Fmt("%s(%s)", ToStr(gl_CurChunk).c_str(),
ToStr(GetResourceManager()->GetOriginalID(id)).c_str());
draw.flags |= DrawFlags::Clear;
draw.copyDestination = GetResourceManager()->GetOriginalID(id);
@@ -2055,7 +2050,7 @@ template <typename SerialiserType>
bool WrappedOpenGL::Serialise_glInvalidateBufferSubData(SerialiserType &ser, GLuint bufferHandle,
GLintptr offsetPtr, GLsizeiptr lengthPtr)
{
SERIALISE_ELEMENT_LOCAL(buffer, BufferRes(GetCtx(), bufferHandle));
SERIALISE_ELEMENT_LOCAL(buffer, BufferRes(GetCtx(), bufferHandle)).Important();
SERIALISE_ELEMENT_LOCAL(offset, (uint64_t)offsetPtr);
SERIALISE_ELEMENT_LOCAL(length, (uint64_t)lengthPtr);
@@ -2088,8 +2083,6 @@ bool WrappedOpenGL::Serialise_glInvalidateBufferSubData(SerialiserType &ser, GLu
AddEvent();
DrawcallDescription draw;
draw.name = StringFormat::Fmt("%s(%s)", ToStr(gl_CurChunk).c_str(),
ToStr(GetResourceManager()->GetOriginalID(id)).c_str());
draw.flags |= DrawFlags::Clear;
draw.copyDestination = GetResourceManager()->GetOriginalID(id);
@@ -4786,9 +4779,9 @@ bool WrappedOpenGL::Serialise_glVertexArrayBindVertexBufferEXT(SerialiserType &s
GLuint bufferHandle,
GLintptr offsetPtr, GLsizei stride)
{
SERIALISE_ELEMENT_LOCAL(vaobj, VertexArrayRes(GetCtx(), vaobjHandle));
SERIALISE_ELEMENT(bindingindex);
SERIALISE_ELEMENT_LOCAL(buffer, BufferRes(GetCtx(), bufferHandle));
SERIALISE_ELEMENT_LOCAL(vaobj, VertexArrayRes(GetCtx(), vaobjHandle)).Important();
SERIALISE_ELEMENT(bindingindex).Important();
SERIALISE_ELEMENT_LOCAL(buffer, BufferRes(GetCtx(), bufferHandle)).Important();
SERIALISE_ELEMENT_LOCAL(offset, (uint64_t)offsetPtr);
SERIALISE_ELEMENT(stride);
@@ -4910,10 +4903,10 @@ bool WrappedOpenGL::Serialise_glVertexArrayVertexBuffers(SerialiserType &ser, GL
offsets.push_back((uint64_t)offsetPtrs[i]);
}
SERIALISE_ELEMENT_LOCAL(vaobj, VertexArrayRes(GetCtx(), vaobjHandle));
SERIALISE_ELEMENT(first);
SERIALISE_ELEMENT_LOCAL(vaobj, VertexArrayRes(GetCtx(), vaobjHandle)).Important();
SERIALISE_ELEMENT(first).Important();
SERIALISE_ELEMENT(count);
SERIALISE_ELEMENT(buffers);
SERIALISE_ELEMENT(buffers).Important();
SERIALISE_ELEMENT(offsets);
SERIALISE_ELEMENT_ARRAY(strides, count);
+70 -117
View File
@@ -312,8 +312,6 @@ bool WrappedOpenGL::Serialise_glDispatchCompute(SerialiserType &ser, GLuint num_
AddEvent();
DrawcallDescription draw;
draw.name = StringFormat::Fmt("%s(%u, %u, %u)", ToStr(gl_CurChunk).c_str(), num_groups_x,
num_groups_y, num_groups_z);
draw.flags |= DrawFlags::Dispatch;
draw.dispatchDimension[0] = num_groups_x;
@@ -377,9 +375,9 @@ bool WrappedOpenGL::Serialise_glDispatchComputeGroupSizeARB(SerialiserType &ser,
GLuint num_groups_z, GLuint group_size_x,
GLuint group_size_y, GLuint group_size_z)
{
SERIALISE_ELEMENT(num_groups_x);
SERIALISE_ELEMENT(num_groups_y);
SERIALISE_ELEMENT(num_groups_z);
SERIALISE_ELEMENT(num_groups_x).Important();
SERIALISE_ELEMENT(num_groups_y).Important();
SERIALISE_ELEMENT(num_groups_z).Important();
SERIALISE_ELEMENT(group_size_x);
SERIALISE_ELEMENT(group_size_y);
SERIALISE_ELEMENT(group_size_z);
@@ -400,9 +398,6 @@ bool WrappedOpenGL::Serialise_glDispatchComputeGroupSizeARB(SerialiserType &ser,
AddEvent();
DrawcallDescription draw;
draw.name =
StringFormat::Fmt("%s(%u, %u, %u, %u, %u, %u)", ToStr(gl_CurChunk).c_str(), num_groups_x,
num_groups_y, num_groups_z, group_size_x, group_size_y, group_size_z);
draw.flags |= DrawFlags::Dispatch;
draw.dispatchDimension[0] = num_groups_x;
@@ -486,7 +481,7 @@ void WrappedOpenGL::glDispatchComputeGroupSizeARB(GLuint num_groups_x, GLuint nu
template <typename SerialiserType>
bool WrappedOpenGL::Serialise_glDispatchComputeIndirect(SerialiserType &ser, GLintptr indirect)
{
SERIALISE_ELEMENT_LOCAL(offset, (uint64_t)indirect);
SERIALISE_ELEMENT_LOCAL(offset, (uint64_t)indirect).Important();
Serialise_DebugMessages(ser);
@@ -660,7 +655,7 @@ bool WrappedOpenGL::Serialise_glDrawTransformFeedback(SerialiserType &ser, GLenu
GLuint xfbHandle)
{
SERIALISE_ELEMENT_TYPED(GLdrawmode, mode);
SERIALISE_ELEMENT_LOCAL(xfb, FeedbackRes(GetCtx(), xfbHandle));
SERIALISE_ELEMENT_LOCAL(xfb, FeedbackRes(GetCtx(), xfbHandle)).Important();
Serialise_DebugMessages(ser);
@@ -731,8 +726,8 @@ bool WrappedOpenGL::Serialise_glDrawTransformFeedbackInstanced(SerialiserType &s
GLsizei instancecount)
{
SERIALISE_ELEMENT_TYPED(GLdrawmode, mode);
SERIALISE_ELEMENT_LOCAL(xfb, FeedbackRes(GetCtx(), xfbHandle));
SERIALISE_ELEMENT(instancecount);
SERIALISE_ELEMENT_LOCAL(xfb, FeedbackRes(GetCtx(), xfbHandle)).Important();
SERIALISE_ELEMENT(instancecount).Important();
Serialise_DebugMessages(ser);
@@ -750,7 +745,7 @@ bool WrappedOpenGL::Serialise_glDrawTransformFeedbackInstanced(SerialiserType &s
GLNOTIMP("Not fetching feedback object count for glDrawTransformFeedbackInstanced() display");
DrawcallDescription draw;
draw.name = ToStr(gl_CurChunk) + "(<?>)";
draw.name = StringFormat::Fmt("%s(<?, %u>)", ToStr(gl_CurChunk).c_str(), instancecount);
draw.numIndices = 1;
draw.numInstances = 1;
draw.indexOffset = 0;
@@ -802,8 +797,8 @@ bool WrappedOpenGL::Serialise_glDrawTransformFeedbackStream(SerialiserType &ser,
GLuint xfbHandle, GLuint stream)
{
SERIALISE_ELEMENT_TYPED(GLdrawmode, mode);
SERIALISE_ELEMENT_LOCAL(xfb, FeedbackRes(GetCtx(), xfbHandle));
SERIALISE_ELEMENT(stream);
SERIALISE_ELEMENT_LOCAL(xfb, FeedbackRes(GetCtx(), xfbHandle)).Important();
SERIALISE_ELEMENT(stream).Important();
Serialise_DebugMessages(ser);
@@ -874,9 +869,9 @@ bool WrappedOpenGL::Serialise_glDrawTransformFeedbackStreamInstanced(SerialiserT
GLsizei instancecount)
{
SERIALISE_ELEMENT_TYPED(GLdrawmode, mode);
SERIALISE_ELEMENT_LOCAL(xfb, FeedbackRes(GetCtx(), xfbHandle));
SERIALISE_ELEMENT(stream);
SERIALISE_ELEMENT(instancecount);
SERIALISE_ELEMENT_LOCAL(xfb, FeedbackRes(GetCtx(), xfbHandle)).Important();
SERIALISE_ELEMENT(stream).Important();
SERIALISE_ELEMENT(instancecount).Important();
Serialise_DebugMessages(ser);
@@ -896,7 +891,7 @@ bool WrappedOpenGL::Serialise_glDrawTransformFeedbackStreamInstanced(SerialiserT
"display");
DrawcallDescription draw;
draw.name = ToStr(gl_CurChunk) + "(<?>)";
draw.name = StringFormat::Fmt("%s(<?, %u>)", ToStr(gl_CurChunk).c_str(), instancecount);
draw.numIndices = 1;
draw.numInstances = 1;
draw.indexOffset = 0;
@@ -950,7 +945,7 @@ bool WrappedOpenGL::Serialise_glDrawArrays(SerialiserType &ser, GLenum mode, GLi
{
SERIALISE_ELEMENT_TYPED(GLdrawmode, mode);
SERIALISE_ELEMENT(first);
SERIALISE_ELEMENT(count);
SERIALISE_ELEMENT(count).Important();
Serialise_DebugMessages(ser);
@@ -966,7 +961,6 @@ bool WrappedOpenGL::Serialise_glDrawArrays(SerialiserType &ser, GLenum mode, GLi
AddEvent();
DrawcallDescription draw;
draw.name = StringFormat::Fmt("%s(%u)", ToStr(gl_CurChunk).c_str(), count);
draw.numIndices = count;
draw.numInstances = 1;
draw.indexOffset = 0;
@@ -1206,7 +1200,7 @@ bool WrappedOpenGL::Serialise_glDrawArraysIndirect(SerialiserType &ser, GLenum m
const void *indirect)
{
SERIALISE_ELEMENT_TYPED(GLdrawmode, mode);
SERIALISE_ELEMENT_LOCAL(offset, (uint64_t)indirect);
SERIALISE_ELEMENT_LOCAL(offset, (uint64_t)indirect).Important();
Serialise_DebugMessages(ser);
@@ -1227,7 +1221,7 @@ bool WrappedOpenGL::Serialise_glDrawArraysIndirect(SerialiserType &ser, GLenum m
AddEvent();
DrawcallDescription draw;
draw.name = StringFormat::Fmt("%s(%u, %u)", ToStr(gl_CurChunk).c_str(), params.count,
draw.name = StringFormat::Fmt("%s(<%u, %u>)", ToStr(gl_CurChunk).c_str(), params.count,
params.instanceCount);
draw.numIndices = params.count;
draw.numInstances = params.instanceCount;
@@ -1286,8 +1280,8 @@ bool WrappedOpenGL::Serialise_glDrawArraysInstanced(SerialiserType &ser, GLenum
{
SERIALISE_ELEMENT_TYPED(GLdrawmode, mode);
SERIALISE_ELEMENT(first);
SERIALISE_ELEMENT(count);
SERIALISE_ELEMENT(instancecount);
SERIALISE_ELEMENT(count).Important();
SERIALISE_ELEMENT(instancecount).Important();
Serialise_DebugMessages(ser);
@@ -1303,7 +1297,6 @@ bool WrappedOpenGL::Serialise_glDrawArraysInstanced(SerialiserType &ser, GLenum
AddEvent();
DrawcallDescription draw;
draw.name = StringFormat::Fmt("%s(%u, %u)", ToStr(gl_CurChunk).c_str(), count, instancecount);
draw.numIndices = count;
draw.numInstances = instancecount;
draw.indexOffset = 0;
@@ -1365,8 +1358,8 @@ bool WrappedOpenGL::Serialise_glDrawArraysInstancedBaseInstance(SerialiserType &
{
SERIALISE_ELEMENT_TYPED(GLdrawmode, mode);
SERIALISE_ELEMENT(first);
SERIALISE_ELEMENT(count);
SERIALISE_ELEMENT(instancecount);
SERIALISE_ELEMENT(count).Important();
SERIALISE_ELEMENT(instancecount).Important();
SERIALISE_ELEMENT(baseinstance);
Serialise_DebugMessages(ser);
@@ -1383,7 +1376,6 @@ bool WrappedOpenGL::Serialise_glDrawArraysInstancedBaseInstance(SerialiserType &
AddEvent();
DrawcallDescription draw;
draw.name = StringFormat::Fmt("%s(%u, %u)", ToStr(gl_CurChunk).c_str(), count, instancecount);
draw.numIndices = count;
draw.numInstances = instancecount;
draw.indexOffset = 0;
@@ -1443,7 +1435,7 @@ bool WrappedOpenGL::Serialise_glDrawElements(SerialiserType &ser, GLenum mode, G
GLenum type, const void *indicesPtr)
{
SERIALISE_ELEMENT_TYPED(GLdrawmode, mode);
SERIALISE_ELEMENT(count);
SERIALISE_ELEMENT(count).Important();
SERIALISE_ELEMENT(type);
SERIALISE_ELEMENT_LOCAL(indices, (uint64_t)indicesPtr);
@@ -1463,7 +1455,6 @@ bool WrappedOpenGL::Serialise_glDrawElements(SerialiserType &ser, GLenum mode, G
uint32_t IdxSize = GetIdxSize(type);
DrawcallDescription draw;
draw.name = StringFormat::Fmt("%s(%u)", ToStr(gl_CurChunk).c_str(), count);
draw.numIndices = count;
draw.numInstances = 1;
draw.indexOffset = uint32_t(indices) / IdxSize;
@@ -1521,7 +1512,7 @@ bool WrappedOpenGL::Serialise_glDrawElementsIndirect(SerialiserType &ser, GLenum
{
SERIALISE_ELEMENT_TYPED(GLdrawmode, mode);
SERIALISE_ELEMENT(type);
SERIALISE_ELEMENT_LOCAL(offset, (uint64_t)indirect);
SERIALISE_ELEMENT_LOCAL(offset, (uint64_t)indirect).Important();
Serialise_DebugMessages(ser);
@@ -1608,7 +1599,7 @@ bool WrappedOpenGL::Serialise_glDrawRangeElements(SerialiserType &ser, GLenum mo
SERIALISE_ELEMENT_TYPED(GLdrawmode, mode);
SERIALISE_ELEMENT(start);
SERIALISE_ELEMENT(end);
SERIALISE_ELEMENT(count);
SERIALISE_ELEMENT(count).Important();
SERIALISE_ELEMENT(type);
SERIALISE_ELEMENT_LOCAL(indices, (uint64_t)indicesPtr);
@@ -1628,7 +1619,6 @@ bool WrappedOpenGL::Serialise_glDrawRangeElements(SerialiserType &ser, GLenum mo
uint32_t IdxSize = GetIdxSize(type);
DrawcallDescription draw;
draw.name = StringFormat::Fmt("%s(%u)", ToStr(gl_CurChunk).c_str(), count);
draw.numIndices = count;
draw.numInstances = 1;
draw.indexOffset = uint32_t(indices) / IdxSize;
@@ -1690,7 +1680,7 @@ bool WrappedOpenGL::Serialise_glDrawRangeElementsBaseVertex(SerialiserType &ser,
SERIALISE_ELEMENT_TYPED(GLdrawmode, mode);
SERIALISE_ELEMENT(start);
SERIALISE_ELEMENT(end);
SERIALISE_ELEMENT(count);
SERIALISE_ELEMENT(count).Important();
SERIALISE_ELEMENT(type);
SERIALISE_ELEMENT_LOCAL(indices, (uint64_t)indicesPtr);
SERIALISE_ELEMENT(basevertex);
@@ -1712,7 +1702,6 @@ bool WrappedOpenGL::Serialise_glDrawRangeElementsBaseVertex(SerialiserType &ser,
uint32_t IdxSize = GetIdxSize(type);
DrawcallDescription draw;
draw.name = StringFormat::Fmt("%s(%u)", ToStr(gl_CurChunk).c_str(), count);
draw.numIndices = count;
draw.numInstances = 1;
draw.indexOffset = uint32_t(indices) / IdxSize;
@@ -1773,7 +1762,7 @@ bool WrappedOpenGL::Serialise_glDrawElementsBaseVertex(SerialiserType &ser, GLen
const void *indicesPtr, GLint basevertex)
{
SERIALISE_ELEMENT_TYPED(GLdrawmode, mode);
SERIALISE_ELEMENT(count);
SERIALISE_ELEMENT(count).Important();
SERIALISE_ELEMENT(type);
SERIALISE_ELEMENT_LOCAL(indices, (uint64_t)indicesPtr);
SERIALISE_ELEMENT(basevertex);
@@ -1794,7 +1783,6 @@ bool WrappedOpenGL::Serialise_glDrawElementsBaseVertex(SerialiserType &ser, GLen
uint32_t IdxSize = GetIdxSize(type);
DrawcallDescription draw;
draw.name = StringFormat::Fmt("%s(%u)", ToStr(gl_CurChunk).c_str(), count);
draw.numIndices = count;
draw.numInstances = 1;
draw.indexOffset = uint32_t(indices) / IdxSize;
@@ -1853,10 +1841,10 @@ bool WrappedOpenGL::Serialise_glDrawElementsInstanced(SerialiserType &ser, GLenu
const void *indicesPtr, GLsizei instancecount)
{
SERIALISE_ELEMENT_TYPED(GLdrawmode, mode);
SERIALISE_ELEMENT(count);
SERIALISE_ELEMENT(count).Important();
SERIALISE_ELEMENT(type);
SERIALISE_ELEMENT_LOCAL(indices, (uint64_t)indicesPtr);
SERIALISE_ELEMENT(instancecount);
SERIALISE_ELEMENT(instancecount).Important();
Serialise_DebugMessages(ser);
@@ -1874,7 +1862,6 @@ bool WrappedOpenGL::Serialise_glDrawElementsInstanced(SerialiserType &ser, GLenu
uint32_t IdxSize = GetIdxSize(type);
DrawcallDescription draw;
draw.name = StringFormat::Fmt("%s(%u, %u)", ToStr(gl_CurChunk).c_str(), count, instancecount);
draw.numIndices = count;
draw.numInstances = instancecount;
draw.indexOffset = uint32_t(indices) / IdxSize;
@@ -1936,10 +1923,10 @@ bool WrappedOpenGL::Serialise_glDrawElementsInstancedBaseInstance(SerialiserType
GLuint baseinstance)
{
SERIALISE_ELEMENT_TYPED(GLdrawmode, mode);
SERIALISE_ELEMENT(count);
SERIALISE_ELEMENT(count).Important();
SERIALISE_ELEMENT(type);
SERIALISE_ELEMENT_LOCAL(indices, (uint64_t)indicesPtr);
SERIALISE_ELEMENT(instancecount);
SERIALISE_ELEMENT(instancecount).Important();
SERIALISE_ELEMENT(baseinstance);
Serialise_DebugMessages(ser);
@@ -1959,7 +1946,6 @@ bool WrappedOpenGL::Serialise_glDrawElementsInstancedBaseInstance(SerialiserType
uint32_t IdxSize = GetIdxSize(type);
DrawcallDescription draw;
draw.name = StringFormat::Fmt("%s(%u, %u)", ToStr(gl_CurChunk).c_str(), count, instancecount);
draw.numIndices = count;
draw.numInstances = instancecount;
draw.indexOffset = uint32_t(indices) / IdxSize;
@@ -2024,10 +2010,10 @@ bool WrappedOpenGL::Serialise_glDrawElementsInstancedBaseVertex(SerialiserType &
GLint basevertex)
{
SERIALISE_ELEMENT_TYPED(GLdrawmode, mode);
SERIALISE_ELEMENT(count);
SERIALISE_ELEMENT(count).Important();
SERIALISE_ELEMENT(type);
SERIALISE_ELEMENT_LOCAL(indices, (uint64_t)indicesPtr);
SERIALISE_ELEMENT(instancecount);
SERIALISE_ELEMENT(instancecount).Important();
SERIALISE_ELEMENT(basevertex);
Serialise_DebugMessages(ser);
@@ -2047,7 +2033,6 @@ bool WrappedOpenGL::Serialise_glDrawElementsInstancedBaseVertex(SerialiserType &
uint32_t IdxSize = GetIdxSize(type);
DrawcallDescription draw;
draw.name = StringFormat::Fmt("%s(%u, %u)", ToStr(gl_CurChunk).c_str(), count, instancecount);
draw.numIndices = count;
draw.numInstances = instancecount;
draw.indexOffset = uint32_t(indices) / IdxSize;
@@ -2110,10 +2095,10 @@ bool WrappedOpenGL::Serialise_glDrawElementsInstancedBaseVertexBaseInstance(
GLsizei instancecount, GLint basevertex, GLuint baseinstance)
{
SERIALISE_ELEMENT_TYPED(GLdrawmode, mode);
SERIALISE_ELEMENT(count);
SERIALISE_ELEMENT(count).Important();
SERIALISE_ELEMENT(type);
SERIALISE_ELEMENT_LOCAL(indices, (uint64_t)indicesPtr);
SERIALISE_ELEMENT(instancecount);
SERIALISE_ELEMENT(instancecount).Important();
SERIALISE_ELEMENT(basevertex);
SERIALISE_ELEMENT(baseinstance);
@@ -2134,7 +2119,6 @@ bool WrappedOpenGL::Serialise_glDrawElementsInstancedBaseVertexBaseInstance(
uint32_t IdxSize = GetIdxSize(type);
DrawcallDescription draw;
draw.name = StringFormat::Fmt("%s(%u, %u)", ToStr(gl_CurChunk).c_str(), count, instancecount);
draw.numIndices = count;
draw.numInstances = instancecount;
draw.indexOffset = uint32_t(indices) / IdxSize;
@@ -2199,7 +2183,7 @@ bool WrappedOpenGL::Serialise_glMultiDrawArrays(SerialiserType &ser, GLenum mode
{
SERIALISE_ELEMENT_TYPED(GLdrawmode, mode);
SERIALISE_ELEMENT_ARRAY(first, drawcount);
SERIALISE_ELEMENT_ARRAY(count, drawcount);
SERIALISE_ELEMENT_ARRAY(count, drawcount).Important();
SERIALISE_ELEMENT(drawcount);
Serialise_DebugMessages(ser);
@@ -2349,7 +2333,7 @@ bool WrappedOpenGL::Serialise_glMultiDrawElements(SerialiserType &ser, GLenum mo
}
SERIALISE_ELEMENT_TYPED(GLdrawmode, mode);
SERIALISE_ELEMENT_ARRAY(count, drawcount);
SERIALISE_ELEMENT_ARRAY(count, drawcount).Important();
SERIALISE_ELEMENT(type);
SERIALISE_ELEMENT(indices);
SERIALISE_ELEMENT(drawcount);
@@ -2518,7 +2502,7 @@ bool WrappedOpenGL::Serialise_glMultiDrawElementsBaseVertex(SerialiserType &ser,
}
SERIALISE_ELEMENT_TYPED(GLdrawmode, mode);
SERIALISE_ELEMENT_ARRAY(count, drawcount);
SERIALISE_ELEMENT_ARRAY(count, drawcount).Important();
SERIALISE_ELEMENT(type);
SERIALISE_ELEMENT(indices);
SERIALISE_ELEMENT(drawcount);
@@ -2680,8 +2664,8 @@ bool WrappedOpenGL::Serialise_glMultiDrawArraysIndirect(SerialiserType &ser, GLe
GLsizei stride)
{
SERIALISE_ELEMENT_TYPED(GLdrawmode, mode);
SERIALISE_ELEMENT_LOCAL(offset, (uint64_t)indirect);
SERIALISE_ELEMENT(drawcount);
SERIALISE_ELEMENT_LOCAL(offset, (uint64_t)indirect).Important();
SERIALISE_ELEMENT(drawcount).Important();
SERIALISE_ELEMENT(stride);
Serialise_DebugMessages(ser);
@@ -2698,7 +2682,7 @@ bool WrappedOpenGL::Serialise_glMultiDrawArraysIndirect(SerialiserType &ser, GLe
GL.glMultiDrawArraysIndirect(mode, (const void *)offset, drawcount, stride);
DrawcallDescription draw;
draw.name = StringFormat::Fmt("%s(%i)", ToStr(gl_CurChunk).c_str(), drawcount);
draw.name = StringFormat::Fmt("%s(<%i>)", ToStr(gl_CurChunk).c_str(), drawcount);
draw.flags |= DrawFlags::MultiDraw;
@@ -2897,8 +2881,8 @@ bool WrappedOpenGL::Serialise_glMultiDrawElementsIndirect(SerialiserType &ser, G
{
SERIALISE_ELEMENT_TYPED(GLdrawmode, mode);
SERIALISE_ELEMENT(type);
SERIALISE_ELEMENT_LOCAL(offset, (uint64_t)indirect);
SERIALISE_ELEMENT(drawcount);
SERIALISE_ELEMENT_LOCAL(offset, (uint64_t)indirect).Important();
SERIALISE_ELEMENT(drawcount).Important();
SERIALISE_ELEMENT(stride);
Serialise_DebugMessages(ser);
@@ -2920,7 +2904,7 @@ bool WrappedOpenGL::Serialise_glMultiDrawElementsIndirect(SerialiserType &ser, G
GL.glMultiDrawElementsIndirect(mode, type, (const void *)offset, drawcount, stride);
DrawcallDescription draw;
draw.name = StringFormat::Fmt("%s(%i)", ToStr(gl_CurChunk).c_str(), drawcount);
draw.name = StringFormat::Fmt("%s(<%i>)", ToStr(gl_CurChunk).c_str(), drawcount);
draw.flags |= DrawFlags::MultiDraw;
@@ -3123,9 +3107,9 @@ bool WrappedOpenGL::Serialise_glMultiDrawArraysIndirectCount(SerialiserType &ser
GLsizei maxdrawcount, GLsizei stride)
{
SERIALISE_ELEMENT_TYPED(GLdrawmode, mode);
SERIALISE_ELEMENT_LOCAL(offset, (uint64_t)indirect);
SERIALISE_ELEMENT_LOCAL(drawcount, (uint64_t)drawcountPtr);
SERIALISE_ELEMENT(maxdrawcount);
SERIALISE_ELEMENT_LOCAL(offset, (uint64_t)indirect).Important();
SERIALISE_ELEMENT_LOCAL(drawcount, (uint64_t)drawcountPtr).Important();
SERIALISE_ELEMENT(maxdrawcount).Important();
SERIALISE_ELEMENT(stride);
Serialise_DebugMessages(ser);
@@ -3352,9 +3336,9 @@ bool WrappedOpenGL::Serialise_glMultiDrawElementsIndirectCount(SerialiserType &s
{
SERIALISE_ELEMENT_TYPED(GLdrawmode, mode);
SERIALISE_ELEMENT(type);
SERIALISE_ELEMENT_LOCAL(offset, (uint64_t)indirect);
SERIALISE_ELEMENT_LOCAL(drawcount, (uint64_t)drawcountPtr);
SERIALISE_ELEMENT(maxdrawcount);
SERIALISE_ELEMENT_LOCAL(offset, (uint64_t)indirect).Important();
SERIALISE_ELEMENT_LOCAL(drawcount, (uint64_t)drawcountPtr).Important();
SERIALISE_ELEMENT(maxdrawcount).Important();
SERIALISE_ELEMENT(stride);
Serialise_DebugMessages(ser);
@@ -3587,8 +3571,8 @@ bool WrappedOpenGL::Serialise_glClearNamedFramebufferfv(SerialiserType &ser,
{
SERIALISE_ELEMENT_LOCAL(framebuffer, FramebufferRes(GetCtx(), framebufferHandle));
SERIALISE_ELEMENT(buffer);
SERIALISE_ELEMENT(drawbuffer);
SERIALISE_ELEMENT_ARRAY(value, buffer == eGL_DEPTH ? 1 : 4);
SERIALISE_ELEMENT(drawbuffer).Important();
SERIALISE_ELEMENT_ARRAY(value, buffer == eGL_DEPTH ? 1 : 4).Important();
Serialise_DebugMessages(ser);
@@ -3609,18 +3593,7 @@ bool WrappedOpenGL::Serialise_glClearNamedFramebufferfv(SerialiserType &ser,
{
AddEvent();
rdcstr name;
if(buffer == eGL_DEPTH)
name = StringFormat::Fmt("%s(%s, %i, %f)", ToStr(gl_CurChunk).c_str(),
ToStr(buffer).c_str(), drawbuffer, value[0]);
else
name = StringFormat::Fmt("%s(%s, %i, %f, %f, %f, %f)", ToStr(gl_CurChunk).c_str(),
ToStr(buffer).c_str(), drawbuffer, value[0], value[1], value[2],
value[3]);
DrawcallDescription draw;
draw.name = name;
draw.flags |= DrawFlags::Clear;
if(buffer == eGL_COLOR)
draw.flags |= DrawFlags::ClearColor;
@@ -3738,8 +3711,8 @@ bool WrappedOpenGL::Serialise_glClearNamedFramebufferiv(SerialiserType &ser,
{
SERIALISE_ELEMENT_LOCAL(framebuffer, FramebufferRes(GetCtx(), framebufferHandle));
SERIALISE_ELEMENT(buffer);
SERIALISE_ELEMENT(drawbuffer);
SERIALISE_ELEMENT_ARRAY(value, buffer == eGL_STENCIL ? 1 : 4);
SERIALISE_ELEMENT(drawbuffer).Important();
SERIALISE_ELEMENT_ARRAY(value, buffer == eGL_STENCIL ? 1 : 4).Important();
Serialise_DebugMessages(ser);
@@ -3760,18 +3733,7 @@ bool WrappedOpenGL::Serialise_glClearNamedFramebufferiv(SerialiserType &ser,
{
AddEvent();
rdcstr name;
if(buffer == eGL_STENCIL)
name = StringFormat::Fmt("%s(%s, %i, %i)", ToStr(gl_CurChunk).c_str(),
ToStr(buffer).c_str(), drawbuffer, value[0]);
else
name = StringFormat::Fmt("%s(%s, %i, %i, %i, %i, %i)", ToStr(gl_CurChunk).c_str(),
ToStr(buffer).c_str(), drawbuffer, value[0], value[1], value[2],
value[3]);
DrawcallDescription draw;
draw.name = name;
draw.flags |= DrawFlags::Clear;
if(buffer == eGL_COLOR)
draw.flags |= DrawFlags::ClearColor;
@@ -3874,8 +3836,8 @@ bool WrappedOpenGL::Serialise_glClearNamedFramebufferuiv(SerialiserType &ser,
{
SERIALISE_ELEMENT_LOCAL(framebuffer, FramebufferRes(GetCtx(), framebufferHandle));
SERIALISE_ELEMENT(buffer);
SERIALISE_ELEMENT(drawbuffer);
SERIALISE_ELEMENT_ARRAY(value, 4);
SERIALISE_ELEMENT(drawbuffer).Important();
SERIALISE_ELEMENT_ARRAY(value, 4).Important();
Serialise_DebugMessages(ser);
@@ -3897,10 +3859,6 @@ bool WrappedOpenGL::Serialise_glClearNamedFramebufferuiv(SerialiserType &ser,
AddEvent();
DrawcallDescription draw;
draw.name = StringFormat::Fmt("%s(%s, %i, %u, %u, %u, %u)", ToStr(gl_CurChunk).c_str(),
ToStr(buffer).c_str(), drawbuffer, value[0], value[1], value[2],
value[3]);
draw.flags |= DrawFlags::Clear | DrawFlags::ClearColor;
GLuint attachment = 0;
@@ -3998,9 +3956,9 @@ bool WrappedOpenGL::Serialise_glClearNamedFramebufferfi(SerialiserType &ser, GLu
{
SERIALISE_ELEMENT_LOCAL(framebuffer, FramebufferRes(GetCtx(), framebufferHandle));
SERIALISE_ELEMENT(buffer);
SERIALISE_ELEMENT(drawbuffer);
SERIALISE_ELEMENT(depth);
SERIALISE_ELEMENT(stencil);
SERIALISE_ELEMENT(drawbuffer).Important();
SERIALISE_ELEMENT(depth).Important();
SERIALISE_ELEMENT(stencil).Important();
Serialise_DebugMessages(ser);
@@ -4022,7 +3980,6 @@ bool WrappedOpenGL::Serialise_glClearNamedFramebufferfi(SerialiserType &ser, GLu
AddEvent();
DrawcallDescription draw;
draw.name = StringFormat::Fmt("%s(%f, %i)", ToStr(gl_CurChunk).c_str(), depth, stencil);
draw.flags |= DrawFlags::Clear | DrawFlags::ClearDepthStencil;
GLuint attachment = 0;
@@ -4138,10 +4095,10 @@ bool WrappedOpenGL::Serialise_glClearNamedBufferDataEXT(SerialiserType &ser, GLu
GLenum internalformat, GLenum format,
GLenum type, const void *dataPtr)
{
SERIALISE_ELEMENT_LOCAL(buffer, BufferRes(GetCtx(), bufferHandle));
SERIALISE_ELEMENT_LOCAL(buffer, BufferRes(GetCtx(), bufferHandle)).Important();
SERIALISE_ELEMENT(internalformat);
SERIALISE_ELEMENT(format);
SERIALISE_ELEMENT(type);
SERIALISE_ELEMENT(format).Important();
SERIALISE_ELEMENT(type).Important();
uint64_t data[4] = {0};
@@ -4289,12 +4246,12 @@ bool WrappedOpenGL::Serialise_glClearNamedBufferSubDataEXT(SerialiserType &ser,
GLsizeiptr sizePtr, GLenum format,
GLenum type, const void *dataPtr)
{
SERIALISE_ELEMENT_LOCAL(buffer, BufferRes(GetCtx(), bufferHandle));
SERIALISE_ELEMENT_LOCAL(buffer, BufferRes(GetCtx(), bufferHandle)).Important();
SERIALISE_ELEMENT(internalformat);
SERIALISE_ELEMENT_LOCAL(offset, (uint64_t)offsetPtr);
SERIALISE_ELEMENT_LOCAL(size, (uint64_t)sizePtr);
SERIALISE_ELEMENT(format);
SERIALISE_ELEMENT(type);
SERIALISE_ELEMENT(format).Important();
SERIALISE_ELEMENT(type).Important();
uint64_t data[4] = {0};
@@ -4584,10 +4541,10 @@ template <typename SerialiserType>
bool WrappedOpenGL::Serialise_glClearTexImage(SerialiserType &ser, GLuint textureHandle, GLint level,
GLenum format, GLenum type, const void *dataPtr)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(level);
SERIALISE_ELEMENT(format);
SERIALISE_ELEMENT(type);
SERIALISE_ELEMENT(format).Important();
SERIALISE_ELEMENT(type).Important();
uint64_t data[4] = {0};
@@ -4675,7 +4632,6 @@ bool WrappedOpenGL::Serialise_glClearTexImage(SerialiserType &ser, GLuint textur
ResourceId id = GetResourceManager()->GetOriginalID(liveId);
DrawcallDescription draw;
draw.name = StringFormat::Fmt("%s(%s)", ToStr(gl_CurChunk).c_str(), ToStr(id).c_str());
draw.flags |= DrawFlags::Clear;
if(format == eGL_DEPTH_STENCIL || format == eGL_DEPTH_COMPONENT || format == eGL_STENCIL_INDEX)
draw.flags |= DrawFlags::ClearDepthStencil;
@@ -4726,7 +4682,7 @@ bool WrappedOpenGL::Serialise_glClearTexSubImage(SerialiserType &ser, GLuint tex
GLsizei depth, GLenum format, GLenum type,
const void *dataPtr)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(level);
SERIALISE_ELEMENT(xoffset);
SERIALISE_ELEMENT(yoffset);
@@ -4734,8 +4690,8 @@ bool WrappedOpenGL::Serialise_glClearTexSubImage(SerialiserType &ser, GLuint tex
SERIALISE_ELEMENT(width);
SERIALISE_ELEMENT(height);
SERIALISE_ELEMENT(depth);
SERIALISE_ELEMENT(format);
SERIALISE_ELEMENT(type);
SERIALISE_ELEMENT(format).Important();
SERIALISE_ELEMENT(type).Important();
uint64_t data[4] = {0};
@@ -4824,7 +4780,6 @@ bool WrappedOpenGL::Serialise_glClearTexSubImage(SerialiserType &ser, GLuint tex
ResourceId id = GetResourceManager()->GetOriginalID(liveId);
DrawcallDescription draw;
draw.name = StringFormat::Fmt("%s(%s)", ToStr(gl_CurChunk).c_str(), ToStr(id).c_str());
draw.flags |= DrawFlags::Clear;
if(format == eGL_DEPTH_STENCIL || format == eGL_DEPTH_COMPONENT || format == eGL_STENCIL_INDEX)
draw.flags |= DrawFlags::ClearDepthStencil;
@@ -4881,7 +4836,6 @@ bool WrappedOpenGL::Serialise_glFlush(SerialiserType &ser)
if(IsLoading(m_State))
{
DrawcallDescription draw;
draw.name = ToStr(gl_CurChunk) + "()";
draw.flags |= DrawFlags::PassBoundary | DrawFlags::EndPass;
AddEvent();
@@ -4922,7 +4876,6 @@ bool WrappedOpenGL::Serialise_glFinish(SerialiserType &ser)
AddEvent();
DrawcallDescription draw;
draw.name = ToStr(gl_CurChunk) + "()";
draw.flags |= DrawFlags::PassBoundary | DrawFlags::EndPass;
AddDrawcall(draw);
@@ -1680,9 +1680,9 @@ bool WrappedOpenGL::Serialise_glFramebufferDrawBuffersEXT(SerialiserType &ser,
GLuint framebufferHandle, GLsizei n,
const GLenum *bufs)
{
SERIALISE_ELEMENT_LOCAL(framebuffer, FramebufferRes(GetCtx(), framebufferHandle));
SERIALISE_ELEMENT_LOCAL(framebuffer, FramebufferRes(GetCtx(), framebufferHandle)).Important();
SERIALISE_ELEMENT(n);
SERIALISE_ELEMENT_ARRAY(bufs, n);
SERIALISE_ELEMENT_ARRAY(bufs, n).Important();
SERIALISE_CHECK_READ_ERRORS();
@@ -1775,7 +1775,7 @@ bool WrappedOpenGL::Serialise_glInvalidateNamedFramebufferData(SerialiserType &s
GLsizei numAttachments,
const GLenum *attachments)
{
SERIALISE_ELEMENT_LOCAL(framebuffer, FramebufferRes(GetCtx(), framebufferHandle));
SERIALISE_ELEMENT_LOCAL(framebuffer, FramebufferRes(GetCtx(), framebufferHandle)).Important();
SERIALISE_ELEMENT(numAttachments);
SERIALISE_ELEMENT_ARRAY(attachments, numAttachments);
@@ -1817,8 +1817,6 @@ bool WrappedOpenGL::Serialise_glInvalidateNamedFramebufferData(SerialiserType &s
ResourceId fbid = GetResourceManager()->GetResID(framebuffer);
DrawcallDescription draw;
draw.name = StringFormat::Fmt("%s(%s)", ToStr(gl_CurChunk).c_str(),
ToStr(GetResourceManager()->GetOriginalID(fbid)).c_str());
draw.flags |= DrawFlags::Clear;
for(GLsizei i = 0; i < numAttachments; i++)
@@ -1970,7 +1968,7 @@ bool WrappedOpenGL::Serialise_glInvalidateNamedFramebufferSubData(
SerialiserType &ser, GLuint framebufferHandle, GLsizei numAttachments,
const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height)
{
SERIALISE_ELEMENT_LOCAL(framebuffer, FramebufferRes(GetCtx(), framebufferHandle));
SERIALISE_ELEMENT_LOCAL(framebuffer, FramebufferRes(GetCtx(), framebufferHandle)).Important();
SERIALISE_ELEMENT(numAttachments);
SERIALISE_ELEMENT_ARRAY(attachments, numAttachments);
SERIALISE_ELEMENT(x);
@@ -2017,8 +2015,6 @@ bool WrappedOpenGL::Serialise_glInvalidateNamedFramebufferSubData(
ResourceId fbid = GetResourceManager()->GetResID(framebuffer);
DrawcallDescription draw;
draw.name = StringFormat::Fmt("%s(%s)", ToStr(gl_CurChunk).c_str(),
ToStr(GetResourceManager()->GetOriginalID(fbid)).c_str());
draw.flags |= DrawFlags::Clear;
for(GLsizei i = 0; i < numAttachments; i++)
@@ -2136,8 +2132,10 @@ bool WrappedOpenGL::Serialise_glBlitNamedFramebuffer(SerialiserType &ser,
GLint dstX0, GLint dstY0, GLint dstX1,
GLint dstY1, GLbitfield mask, GLenum filter)
{
SERIALISE_ELEMENT_LOCAL(readFramebuffer, FramebufferRes(GetCtx(), readFramebufferHandle));
SERIALISE_ELEMENT_LOCAL(drawFramebuffer, FramebufferRes(GetCtx(), drawFramebufferHandle));
SERIALISE_ELEMENT_LOCAL(readFramebuffer, FramebufferRes(GetCtx(), readFramebufferHandle))
.Important();
SERIALISE_ELEMENT_LOCAL(drawFramebuffer, FramebufferRes(GetCtx(), drawFramebufferHandle))
.Important();
SERIALISE_ELEMENT(srcX0);
SERIALISE_ELEMENT(srcY0);
SERIALISE_ELEMENT(srcX1);
@@ -2172,9 +2170,6 @@ bool WrappedOpenGL::Serialise_glBlitNamedFramebuffer(SerialiserType &ser,
ResourceId drawId = GetResourceManager()->GetResID(drawFramebuffer);
DrawcallDescription draw;
draw.name = StringFormat::Fmt("%s(%s, %s)", ToStr(gl_CurChunk).c_str(),
ToStr(GetResourceManager()->GetOriginalID(readId)).c_str(),
ToStr(GetResourceManager()->GetOriginalID(drawId)).c_str());
draw.flags |= DrawFlags::Resolve;
GLint numCols = 8;
@@ -193,9 +193,9 @@ bool WrappedOpenGL::Serialise_glBindSamplers(SerialiserType &ser, GLuint first,
samplers.push_back(SamplerRes(GetCtx(), samplerHandles ? samplerHandles[i] : 0));
}
SERIALISE_ELEMENT(first);
SERIALISE_ELEMENT(first).Important();
SERIALISE_ELEMENT(count);
SERIALISE_ELEMENT(samplers);
SERIALISE_ELEMENT(samplers).Important();
SERIALISE_CHECK_READ_ERRORS();
@@ -364,7 +364,7 @@ template <typename SerialiserType>
bool WrappedOpenGL::Serialise_glShaderSource(SerialiserType &ser, GLuint shaderHandle, GLsizei count,
const GLchar *const *source, const GLint *length)
{
SERIALISE_ELEMENT_LOCAL(shader, ShaderRes(GetCtx(), shaderHandle));
SERIALISE_ELEMENT_LOCAL(shader, ShaderRes(GetCtx(), shaderHandle)).Important();
// serialisation can't handle the length parameter neatly, so we compromise by serialising via a
// vector
@@ -380,7 +380,7 @@ bool WrappedOpenGL::Serialise_glShaderSource(SerialiserType &ser, GLuint shaderH
}
}
SERIALISE_ELEMENT(count);
SERIALISE_ELEMENT(count).Important();
SERIALISE_ELEMENT(sources);
SERIALISE_ELEMENT_ARRAY(length, count);
+128 -133
View File
@@ -333,7 +333,7 @@ template <typename SerialiserType>
bool WrappedOpenGL::Serialise_glBindTextures(SerialiserType &ser, GLuint first, GLsizei count,
const GLuint *textureHandles)
{
SERIALISE_ELEMENT(first);
SERIALISE_ELEMENT(first).Important();
SERIALISE_ELEMENT(count);
// can't serialise arrays of GL handles since they're not wrapped or typed :(.
@@ -346,7 +346,7 @@ bool WrappedOpenGL::Serialise_glBindTextures(SerialiserType &ser, GLuint first,
textures.push_back(TextureRes(GetCtx(), textureHandles ? textureHandles[i] : 0));
}
SERIALISE_ELEMENT(textures);
SERIALISE_ELEMENT(textures).Important();
SERIALISE_CHECK_READ_ERRORS();
@@ -420,9 +420,9 @@ template <typename SerialiserType>
bool WrappedOpenGL::Serialise_glBindMultiTextureEXT(SerialiserType &ser, GLenum texunit,
GLenum target, GLuint textureHandle)
{
SERIALISE_ELEMENT(texunit);
SERIALISE_ELEMENT(texunit).Important();
SERIALISE_ELEMENT(target);
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
if(IsReplayingAndReading())
{
@@ -791,7 +791,7 @@ template <typename SerialiserType>
bool WrappedOpenGL::Serialise_glGenerateTextureMipmapEXT(SerialiserType &ser, GLuint textureHandle,
GLenum target)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(target);
HIDE_ARB_DSA_TARGET();
@@ -817,9 +817,6 @@ bool WrappedOpenGL::Serialise_glGenerateTextureMipmapEXT(SerialiserType &ser, GL
m_Textures[liveId].mipsValid = (1 << mips) - 1;
DrawcallDescription draw;
draw.name = StringFormat::Fmt(
"%s(%s)", ToStr(gl_CurChunk).c_str(),
ToStr(GetResourceManager()->GetOriginalID(GetResourceManager()->GetResID(texture))).c_str());
draw.flags |= DrawFlags::GenMips;
AddDrawcall(draw);
@@ -920,7 +917,7 @@ template <typename SerialiserType>
bool WrappedOpenGL::Serialise_glInvalidateTexImage(SerialiserType &ser, GLuint textureHandle,
GLint level)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(level);
Serialise_DebugMessages(ser);
@@ -1023,8 +1020,6 @@ bool WrappedOpenGL::Serialise_glInvalidateTexImage(SerialiserType &ser, GLuint t
AddEvent();
DrawcallDescription draw;
draw.name = StringFormat::Fmt("%s(%s)", ToStr(gl_CurChunk).c_str(),
ToStr(GetResourceManager()->GetOriginalID(liveId)).c_str());
draw.flags |= DrawFlags::Clear;
draw.copyDestination = GetResourceManager()->GetOriginalID(liveId);
@@ -1076,7 +1071,7 @@ bool WrappedOpenGL::Serialise_glInvalidateTexSubImage(SerialiserType &ser, GLuin
GLint zoffset, GLsizei width, GLsizei height,
GLsizei depth)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(level);
SERIALISE_ELEMENT(xoffset);
SERIALISE_ELEMENT(yoffset);
@@ -1177,8 +1172,6 @@ bool WrappedOpenGL::Serialise_glInvalidateTexSubImage(SerialiserType &ser, GLuin
AddEvent();
DrawcallDescription draw;
draw.name = StringFormat::Fmt("%s(%s)", ToStr(gl_CurChunk).c_str(),
ToStr(GetResourceManager()->GetOriginalID(liveId)).c_str());
draw.flags |= DrawFlags::Clear;
draw.copyDestination = GetResourceManager()->GetOriginalID(liveId);
@@ -1238,7 +1231,8 @@ bool WrappedOpenGL::Serialise_glCopyImageSubData(SerialiserType &ser, GLuint src
{
SERIALISE_ELEMENT_LOCAL(srcName, srcTarget == eGL_RENDERBUFFER
? RenderbufferRes(GetCtx(), srcHandle)
: TextureRes(GetCtx(), srcHandle));
: TextureRes(GetCtx(), srcHandle))
.Important();
SERIALISE_ELEMENT(srcTarget);
SERIALISE_ELEMENT(srcLevel);
SERIALISE_ELEMENT(srcX);
@@ -1246,7 +1240,8 @@ bool WrappedOpenGL::Serialise_glCopyImageSubData(SerialiserType &ser, GLuint src
SERIALISE_ELEMENT(srcZ);
SERIALISE_ELEMENT_LOCAL(dstName, dstTarget == eGL_RENDERBUFFER
? RenderbufferRes(GetCtx(), dstHandle)
: TextureRes(GetCtx(), dstHandle));
: TextureRes(GetCtx(), dstHandle))
.Important();
SERIALISE_ELEMENT(dstTarget);
SERIALISE_ELEMENT(dstLevel);
SERIALISE_ELEMENT(dstX);
@@ -1273,9 +1268,6 @@ bool WrappedOpenGL::Serialise_glCopyImageSubData(SerialiserType &ser, GLuint src
ResourceId dstid = GetResourceManager()->GetResID(dstName);
DrawcallDescription draw;
draw.name = StringFormat::Fmt("%s(%s, %s)", ToStr(gl_CurChunk).c_str(),
ToStr(GetResourceManager()->GetOriginalID(srcid)).c_str(),
ToStr(GetResourceManager()->GetOriginalID(dstid)).c_str());
draw.flags |= DrawFlags::Copy;
draw.copySource = GetResourceManager()->GetOriginalID(srcid);
@@ -1446,7 +1438,7 @@ bool WrappedOpenGL::Serialise_glCopyTextureSubImage1DEXT(SerialiserType &ser, GL
GLenum target, GLint level, GLint xoffset,
GLint x, GLint y, GLsizei width)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(target);
HIDE_ARB_DSA_TARGET();
SERIALISE_ELEMENT(level);
@@ -1559,7 +1551,7 @@ bool WrappedOpenGL::Serialise_glCopyTextureSubImage2DEXT(SerialiserType &ser, GL
GLint yoffset, GLint x, GLint y,
GLsizei width, GLsizei height)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(target);
HIDE_ARB_DSA_TARGET();
SERIALISE_ELEMENT(level);
@@ -1680,7 +1672,7 @@ bool WrappedOpenGL::Serialise_glCopyTextureSubImage3DEXT(SerialiserType &ser, GL
GLint yoffset, GLint zoffset, GLint x,
GLint y, GLsizei width, GLsizei height)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(target);
HIDE_ARB_DSA_TARGET();
SERIALISE_ELEMENT(level);
@@ -1804,10 +1796,10 @@ template <typename SerialiserType>
bool WrappedOpenGL::Serialise_glTextureParameteriEXT(SerialiserType &ser, GLuint textureHandle,
GLenum target, GLenum pname, GLint param)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(target);
HIDE_ARB_DSA_TARGET();
SERIALISE_ELEMENT(pname);
SERIALISE_ELEMENT(pname).Important();
RDCCOMPILE_ASSERT(sizeof(int32_t) == sizeof(GLenum),
"int32_t isn't the same size as GLenum - aliased serialising will break");
@@ -1818,11 +1810,11 @@ bool WrappedOpenGL::Serialise_glTextureParameteriEXT(SerialiserType &ser, GLuint
pname == GL_TEXTURE_SWIZZLE_G || pname == GL_TEXTURE_SWIZZLE_B || pname == GL_TEXTURE_SWIZZLE_A ||
pname == GL_TEXTURE_WRAP_S || pname == GL_TEXTURE_WRAP_T || pname == GL_TEXTURE_WRAP_R)
{
SERIALISE_ELEMENT_TYPED(GLenum, param);
SERIALISE_ELEMENT_TYPED(GLenum, param).Important();
}
else
{
SERIALISE_ELEMENT(param);
SERIALISE_ELEMENT(param).Important();
}
SERIALISE_CHECK_READ_ERRORS();
@@ -1934,11 +1926,11 @@ bool WrappedOpenGL::Serialise_glTextureParameterivEXT(SerialiserType &ser, GLuin
GLenum target, GLenum pname,
const GLint *params)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(target);
HIDE_ARB_DSA_TARGET();
SERIALISE_ELEMENT(pname);
SERIALISE_ELEMENT_ARRAY(params, numParams(pname));
SERIALISE_ELEMENT(pname).Important();
SERIALISE_ELEMENT_ARRAY(params, numParams(pname)).Important();
SERIALISE_CHECK_READ_ERRORS();
@@ -2053,11 +2045,11 @@ bool WrappedOpenGL::Serialise_glTextureParameterIivEXT(SerialiserType &ser, GLui
GLenum target, GLenum pname,
const GLint *params)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(target);
HIDE_ARB_DSA_TARGET();
SERIALISE_ELEMENT(pname);
SERIALISE_ELEMENT_ARRAY(params, numParams(pname));
SERIALISE_ELEMENT(pname).Important();
SERIALISE_ELEMENT_ARRAY(params, numParams(pname)).Important();
SERIALISE_CHECK_READ_ERRORS();
@@ -2172,11 +2164,11 @@ bool WrappedOpenGL::Serialise_glTextureParameterIuivEXT(SerialiserType &ser, GLu
GLenum target, GLenum pname,
const GLuint *params)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(target);
HIDE_ARB_DSA_TARGET();
SERIALISE_ELEMENT(pname);
SERIALISE_ELEMENT_ARRAY(params, numParams(pname));
SERIALISE_ELEMENT(pname).Important();
SERIALISE_ELEMENT_ARRAY(params, numParams(pname)).Important();
SERIALISE_CHECK_READ_ERRORS();
@@ -2290,11 +2282,11 @@ template <typename SerialiserType>
bool WrappedOpenGL::Serialise_glTextureParameterfEXT(SerialiserType &ser, GLuint textureHandle,
GLenum target, GLenum pname, GLfloat param)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(target);
HIDE_ARB_DSA_TARGET();
SERIALISE_ELEMENT(pname);
SERIALISE_ELEMENT(param);
SERIALISE_ELEMENT(pname).Important();
SERIALISE_ELEMENT(param).Important();
SERIALISE_CHECK_READ_ERRORS();
@@ -2405,11 +2397,11 @@ bool WrappedOpenGL::Serialise_glTextureParameterfvEXT(SerialiserType &ser, GLuin
GLenum target, GLenum pname,
const GLfloat *params)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(target);
HIDE_ARB_DSA_TARGET();
SERIALISE_ELEMENT(pname);
SERIALISE_ELEMENT_ARRAY(params, numParams(pname));
SERIALISE_ELEMENT(pname).Important();
SERIALISE_ELEMENT_ARRAY(params, numParams(pname)).Important();
SERIALISE_CHECK_READ_ERRORS();
@@ -2612,11 +2604,11 @@ bool WrappedOpenGL::Serialise_glTextureImage1DEXT(SerialiserType &ser, GLuint te
GLsizei width, GLint border, GLenum format,
GLenum type, const void *pixels)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT(target);
SERIALISE_ELEMENT(level);
SERIALISE_ELEMENT_TYPED(GLenum, internalformat);
SERIALISE_ELEMENT(width);
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(target).Important();
SERIALISE_ELEMENT(level).Important();
SERIALISE_ELEMENT_TYPED(GLenum, internalformat).Important();
SERIALISE_ELEMENT(width).Important();
SERIALISE_ELEMENT(border);
SERIALISE_ELEMENT(format);
SERIALISE_ELEMENT(type);
@@ -2837,12 +2829,12 @@ bool WrappedOpenGL::Serialise_glTextureImage2DEXT(SerialiserType &ser, GLuint te
GLsizei width, GLsizei height, GLint border,
GLenum format, GLenum type, const void *pixels)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT(target);
SERIALISE_ELEMENT(level);
SERIALISE_ELEMENT_TYPED(GLenum, internalformat);
SERIALISE_ELEMENT(width);
SERIALISE_ELEMENT(height);
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(target).Important();
SERIALISE_ELEMENT(level).Important();
SERIALISE_ELEMENT_TYPED(GLenum, internalformat).Important();
SERIALISE_ELEMENT(width).Important();
SERIALISE_ELEMENT(height).Important();
SERIALISE_ELEMENT(border);
SERIALISE_ELEMENT(format);
SERIALISE_ELEMENT(type);
@@ -3092,12 +3084,12 @@ bool WrappedOpenGL::Serialise_glTextureImage3DEXT(SerialiserType &ser, GLuint te
GLint border, GLenum format, GLenum type,
const void *pixels)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT(target);
SERIALISE_ELEMENT(level);
SERIALISE_ELEMENT_TYPED(GLenum, internalformat);
SERIALISE_ELEMENT(width);
SERIALISE_ELEMENT(height);
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(target).Important();
SERIALISE_ELEMENT(level).Important();
SERIALISE_ELEMENT_TYPED(GLenum, internalformat).Important();
SERIALISE_ELEMENT(width).Important();
SERIALISE_ELEMENT(height).Important();
SERIALISE_ELEMENT(depth);
SERIALISE_ELEMENT(border);
SERIALISE_ELEMENT(format);
@@ -3328,11 +3320,11 @@ bool WrappedOpenGL::Serialise_glCompressedTextureImage1DEXT(SerialiserType &ser,
GLsizei width, GLint border,
GLsizei imageSize, const GLvoid *pixels)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT(target);
SERIALISE_ELEMENT(level);
SERIALISE_ELEMENT(internalformat);
SERIALISE_ELEMENT(width);
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(target).Important();
SERIALISE_ELEMENT(level).Important();
SERIALISE_ELEMENT(internalformat).Important();
SERIALISE_ELEMENT(width).Important();
SERIALISE_ELEMENT(border);
byte *unpackedPixels = NULL;
@@ -3648,12 +3640,12 @@ bool WrappedOpenGL::Serialise_glCompressedTextureImage2DEXT(SerialiserType &ser,
GLsizei height, GLint border,
GLsizei imageSize, const GLvoid *pixels)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT(target);
SERIALISE_ELEMENT(level);
SERIALISE_ELEMENT(internalformat);
SERIALISE_ELEMENT(width);
SERIALISE_ELEMENT(height);
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(target).Important();
SERIALISE_ELEMENT(level).Important();
SERIALISE_ELEMENT(internalformat).Important();
SERIALISE_ELEMENT(width).Important();
SERIALISE_ELEMENT(height).Important();
SERIALISE_ELEMENT(border);
byte *unpackedPixels = NULL;
@@ -3907,13 +3899,13 @@ bool WrappedOpenGL::Serialise_glCompressedTextureImage3DEXT(SerialiserType &ser,
GLsizei depth, GLint border,
GLsizei imageSize, const GLvoid *pixels)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT(target);
SERIALISE_ELEMENT(level);
SERIALISE_ELEMENT(internalformat);
SERIALISE_ELEMENT(width);
SERIALISE_ELEMENT(height);
SERIALISE_ELEMENT(depth);
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(target).Important();
SERIALISE_ELEMENT(level).Important();
SERIALISE_ELEMENT(internalformat).Important();
SERIALISE_ELEMENT(width).Important();
SERIALISE_ELEMENT(height).Important();
SERIALISE_ELEMENT(depth).Important();
SERIALISE_ELEMENT(border);
byte *unpackedPixels = NULL;
@@ -4147,13 +4139,13 @@ bool WrappedOpenGL::Serialise_glCopyTextureImage1DEXT(SerialiserType &ser, GLuin
GLenum internalformat, GLint x, GLint y,
GLsizei width, GLint border)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(target);
SERIALISE_ELEMENT(level);
SERIALISE_ELEMENT(internalformat);
SERIALISE_ELEMENT(internalformat).Important();
SERIALISE_ELEMENT(x);
SERIALISE_ELEMENT(y);
SERIALISE_ELEMENT(width);
SERIALISE_ELEMENT(width).Important();
SERIALISE_ELEMENT(border);
SERIALISE_CHECK_READ_ERRORS();
@@ -4309,14 +4301,14 @@ bool WrappedOpenGL::Serialise_glCopyTextureImage2DEXT(SerialiserType &ser, GLuin
GLenum internalformat, GLint x, GLint y,
GLsizei width, GLsizei height, GLint border)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(target);
SERIALISE_ELEMENT(level);
SERIALISE_ELEMENT(internalformat);
SERIALISE_ELEMENT(internalformat).Important();
SERIALISE_ELEMENT(x);
SERIALISE_ELEMENT(y);
SERIALISE_ELEMENT(width);
SERIALISE_ELEMENT(height);
SERIALISE_ELEMENT(width).Important();
SERIALISE_ELEMENT(height).Important();
SERIALISE_ELEMENT(border);
SERIALISE_CHECK_READ_ERRORS();
@@ -4475,12 +4467,12 @@ bool WrappedOpenGL::Serialise_glTextureStorage1DEXT(SerialiserType &ser, GLuint
GLenum target, GLsizei levels,
GLenum internalformat, GLsizei width)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT(target);
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(target).Important();
HIDE_ARB_DSA_TARGET();
SERIALISE_ELEMENT(levels);
SERIALISE_ELEMENT(internalformat);
SERIALISE_ELEMENT(width);
SERIALISE_ELEMENT(levels).Important();
SERIALISE_ELEMENT(internalformat).Important();
SERIALISE_ELEMENT(width).Important();
SERIALISE_CHECK_READ_ERRORS();
@@ -4601,13 +4593,13 @@ bool WrappedOpenGL::Serialise_glTextureStorage2DEXT(SerialiserType &ser, GLuint
GLenum internalformat, GLsizei width,
GLsizei height)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT(target);
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(target).Important();
HIDE_ARB_DSA_TARGET();
SERIALISE_ELEMENT(levels);
SERIALISE_ELEMENT(internalformat);
SERIALISE_ELEMENT(width);
SERIALISE_ELEMENT(height);
SERIALISE_ELEMENT(levels).Important();
SERIALISE_ELEMENT(internalformat).Important();
SERIALISE_ELEMENT(width).Important();
SERIALISE_ELEMENT(height).Important();
SERIALISE_CHECK_READ_ERRORS();
@@ -4731,14 +4723,14 @@ bool WrappedOpenGL::Serialise_glTextureStorage3DEXT(SerialiserType &ser, GLuint
GLenum internalformat, GLsizei width,
GLsizei height, GLsizei depth)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT(target);
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(target).Important();
HIDE_ARB_DSA_TARGET();
SERIALISE_ELEMENT(levels);
SERIALISE_ELEMENT(internalformat);
SERIALISE_ELEMENT(width);
SERIALISE_ELEMENT(height);
SERIALISE_ELEMENT(depth);
SERIALISE_ELEMENT(levels).Important();
SERIALISE_ELEMENT(internalformat).Important();
SERIALISE_ELEMENT(width).Important();
SERIALISE_ELEMENT(height).Important();
SERIALISE_ELEMENT(depth).Important();
SERIALISE_CHECK_READ_ERRORS();
@@ -4865,13 +4857,13 @@ bool WrappedOpenGL::Serialise_glTextureStorage2DMultisampleEXT(SerialiserType &s
GLsizei width, GLsizei height,
GLboolean fixedsamplelocations)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT(target);
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(target).Important();
HIDE_ARB_DSA_TARGET();
SERIALISE_ELEMENT(samples);
SERIALISE_ELEMENT(internalformat);
SERIALISE_ELEMENT(width);
SERIALISE_ELEMENT(height);
SERIALISE_ELEMENT(samples).Important();
SERIALISE_ELEMENT(internalformat).Important();
SERIALISE_ELEMENT(width).Important();
SERIALISE_ELEMENT(height).Important();
SERIALISE_ELEMENT_TYPED(bool, fixedsamplelocations);
SERIALISE_CHECK_READ_ERRORS();
@@ -5042,14 +5034,14 @@ bool WrappedOpenGL::Serialise_glTextureStorage3DMultisampleEXT(SerialiserType &s
GLsizei height, GLsizei depth,
GLboolean fixedsamplelocations)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT(target);
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(target).Important();
HIDE_ARB_DSA_TARGET();
SERIALISE_ELEMENT(samples);
SERIALISE_ELEMENT(internalformat);
SERIALISE_ELEMENT(width);
SERIALISE_ELEMENT(height);
SERIALISE_ELEMENT(depth);
SERIALISE_ELEMENT(samples).Important();
SERIALISE_ELEMENT(internalformat).Important();
SERIALISE_ELEMENT(width).Important();
SERIALISE_ELEMENT(height).Important();
SERIALISE_ELEMENT(depth).Important();
SERIALISE_ELEMENT_TYPED(bool, fixedsamplelocations);
SERIALISE_CHECK_READ_ERRORS();
@@ -5228,7 +5220,7 @@ bool WrappedOpenGL::Serialise_glTextureSubImage1DEXT(SerialiserType &ser, GLuint
GLsizei width, GLenum format, GLenum type,
const void *pixels)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(target);
HIDE_ARB_DSA_TARGET();
SERIALISE_ELEMENT(level);
@@ -5263,7 +5255,7 @@ bool WrappedOpenGL::Serialise_glTextureSubImage1DEXT(SerialiserType &ser, GLuint
// in.
if(!UnpackBufBound)
{
ser.Serialise("pixels"_lit, pixels, subimageSize, SerialiserFlags::AllocateMemory);
ser.Serialise("pixels"_lit, pixels, subimageSize, SerialiserFlags::AllocateMemory).Important();
}
else
{
@@ -5453,7 +5445,7 @@ bool WrappedOpenGL::Serialise_glTextureSubImage2DEXT(SerialiserType &ser, GLuint
GLint yoffset, GLsizei width, GLsizei height,
GLenum format, GLenum type, const void *pixels)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(target);
HIDE_ARB_DSA_TARGET();
SERIALISE_ELEMENT(level);
@@ -5490,7 +5482,7 @@ bool WrappedOpenGL::Serialise_glTextureSubImage2DEXT(SerialiserType &ser, GLuint
// in.
if(!UnpackBufBound)
{
ser.Serialise("pixels"_lit, pixels, subimageSize, SerialiserFlags::AllocateMemory);
ser.Serialise("pixels"_lit, pixels, subimageSize, SerialiserFlags::AllocateMemory).Important();
}
else
{
@@ -5686,7 +5678,7 @@ bool WrappedOpenGL::Serialise_glTextureSubImage3DEXT(SerialiserType &ser, GLuint
GLsizei height, GLsizei depth, GLenum format,
GLenum type, const void *pixels)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(target);
HIDE_ARB_DSA_TARGET();
SERIALISE_ELEMENT(level);
@@ -5725,7 +5717,7 @@ bool WrappedOpenGL::Serialise_glTextureSubImage3DEXT(SerialiserType &ser, GLuint
// in.
if(!UnpackBufBound)
{
ser.Serialise("pixels"_lit, pixels, subimageSize, SerialiserFlags::AllocateMemory);
ser.Serialise("pixels"_lit, pixels, subimageSize, SerialiserFlags::AllocateMemory).Important();
}
else
{
@@ -5925,7 +5917,7 @@ bool WrappedOpenGL::Serialise_glCompressedTextureSubImage1DEXT(SerialiserType &s
GLsizei width, GLenum format,
GLsizei imageSize, const void *pixels)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(target);
HIDE_ARB_DSA_TARGET();
SERIALISE_ELEMENT(level);
@@ -5959,7 +5951,8 @@ bool WrappedOpenGL::Serialise_glCompressedTextureSubImage1DEXT(SerialiserType &s
// in.
if(!UnpackBufBound)
{
ser.Serialise("pixels"_lit, pixels, (uint32_t &)imageSize, SerialiserFlags::AllocateMemory);
ser.Serialise("pixels"_lit, pixels, (uint32_t &)imageSize, SerialiserFlags::AllocateMemory)
.Important();
}
else
{
@@ -6140,7 +6133,7 @@ bool WrappedOpenGL::Serialise_glCompressedTextureSubImage2DEXT(SerialiserType &s
GLsizei height, GLenum format,
GLsizei imageSize, const void *pixels)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(target);
HIDE_ARB_DSA_TARGET();
SERIALISE_ELEMENT(level);
@@ -6175,7 +6168,8 @@ bool WrappedOpenGL::Serialise_glCompressedTextureSubImage2DEXT(SerialiserType &s
// in.
if(!UnpackBufBound)
{
ser.Serialise("pixels"_lit, pixels, (uint32_t &)imageSize, SerialiserFlags::AllocateMemory);
ser.Serialise("pixels"_lit, pixels, (uint32_t &)imageSize, SerialiserFlags::AllocateMemory)
.Important();
}
else
{
@@ -6372,7 +6366,7 @@ bool WrappedOpenGL::Serialise_glCompressedTextureSubImage3DEXT(
GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format,
GLsizei imageSize, const void *pixels)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(target);
HIDE_ARB_DSA_TARGET();
SERIALISE_ELEMENT(level);
@@ -6409,7 +6403,8 @@ bool WrappedOpenGL::Serialise_glCompressedTextureSubImage3DEXT(
// in.
if(!UnpackBufBound)
{
ser.Serialise("pixels"_lit, pixels, (uint32_t &)imageSize, SerialiserFlags::AllocateMemory);
ser.Serialise("pixels"_lit, pixels, (uint32_t &)imageSize, SerialiserFlags::AllocateMemory)
.Important();
}
else
{
@@ -6616,11 +6611,11 @@ bool WrappedOpenGL::Serialise_glTextureBufferRangeEXT(SerialiserType &ser, GLuin
GLuint bufferHandle, GLintptr offsetPtr,
GLsizeiptr sizePtr)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(target);
HIDE_ARB_DSA_TARGET();
SERIALISE_ELEMENT(internalformat);
SERIALISE_ELEMENT_LOCAL(buffer, BufferRes(GetCtx(), bufferHandle));
SERIALISE_ELEMENT_LOCAL(buffer, BufferRes(GetCtx(), bufferHandle)).Important();
SERIALISE_ELEMENT_LOCAL(offs, (uint64_t)offsetPtr);
SERIALISE_ELEMENT_LOCAL(size, (uint64_t)sizePtr);
@@ -6795,11 +6790,11 @@ bool WrappedOpenGL::Serialise_glTextureBufferEXT(SerialiserType &ser, GLuint tex
GLenum target, GLenum internalformat,
GLuint bufferHandle)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(target);
HIDE_ARB_DSA_TARGET();
SERIALISE_ELEMENT(internalformat);
SERIALISE_ELEMENT_LOCAL(buffer, BufferRes(GetCtx(), bufferHandle));
SERIALISE_ELEMENT_LOCAL(buffer, BufferRes(GetCtx(), bufferHandle)).Important();
SERIALISE_CHECK_READ_ERRORS();
@@ -7000,11 +6995,11 @@ bool WrappedOpenGL::Serialise_glTextureFoveationParametersQCOM(SerialiserType &s
GLfloat focalY, GLfloat gainX,
GLfloat gainY, GLfloat foveaArea)
{
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle));
SERIALISE_ELEMENT_LOCAL(texture, TextureRes(GetCtx(), textureHandle)).Important();
SERIALISE_ELEMENT(layer);
SERIALISE_ELEMENT(focalPoint);
SERIALISE_ELEMENT(focalX);
SERIALISE_ELEMENT(focalY);
SERIALISE_ELEMENT(focalX).Important();
SERIALISE_ELEMENT(focalY).Important();
SERIALISE_ELEMENT(gainX);
SERIALISE_ELEMENT(gainY);
SERIALISE_ELEMENT(foveaArea);
@@ -32,7 +32,7 @@ bool WrappedOpenGL::Serialise_glProgramUniformVector(SerialiserType &ser, GLuint
GLint location, GLsizei count,
const void *value, UniformType type)
{
SERIALISE_ELEMENT_LOCAL(Program, ProgramRes(GetCtx(), program));
SERIALISE_ELEMENT_LOCAL(Program, ProgramRes(GetCtx(), program)).Important();
SERIALISE_ELEMENT(location);
// this is used to share serialisation code amongst the brazillion variations
@@ -102,13 +102,13 @@ bool WrappedOpenGL::Serialise_glProgramUniformVector(SerialiserType &ser, GLuint
// we don't want to allocate since we've already handled that
if(elemBaseType == SDBasic::Float && elemSize == sizeof(float))
ser.Serialise("values"_lit, v.f, arrayLength, SerialiserFlags::NoFlags);
ser.Serialise("values"_lit, v.f, arrayLength, SerialiserFlags::NoFlags).Important();
else if(elemBaseType == SDBasic::Float)
ser.Serialise("values"_lit, v.d, arrayLength, SerialiserFlags::NoFlags);
ser.Serialise("values"_lit, v.d, arrayLength, SerialiserFlags::NoFlags).Important();
else if(elemBaseType == SDBasic::SignedInteger)
ser.Serialise("values"_lit, v.i, arrayLength, SerialiserFlags::NoFlags);
ser.Serialise("values"_lit, v.i, arrayLength, SerialiserFlags::NoFlags).Important();
else if(elemBaseType == SDBasic::UnsignedInteger)
ser.Serialise("values"_lit, v.u, arrayLength, SerialiserFlags::NoFlags);
ser.Serialise("values"_lit, v.u, arrayLength, SerialiserFlags::NoFlags).Important();
SERIALISE_CHECK_READ_ERRORS();
@@ -160,9 +160,9 @@ bool WrappedOpenGL::Serialise_glProgramUniformMatrix(SerialiserType &ser, GLuint
GLboolean transpose, const void *value,
UniformType type)
{
SERIALISE_ELEMENT_LOCAL(Program, ProgramRes(GetCtx(), program));
SERIALISE_ELEMENT_LOCAL(Program, ProgramRes(GetCtx(), program)).Important();
SERIALISE_ELEMENT(location);
SERIALISE_ELEMENT_TYPED(bool, transpose);
SERIALISE_ELEMENT_TYPED(bool, transpose).Important();
// this is used to share serialisation code amongst the brazillion variations
SERIALISE_ELEMENT(type).Hidden();
@@ -227,9 +227,9 @@ bool WrappedOpenGL::Serialise_glProgramUniformMatrix(SerialiserType &ser, GLuint
// we don't want to allocate since we've already handled that
if(elemSize == sizeof(float))
ser.Serialise("values"_lit, v.f, arrayLength, SerialiserFlags::NoFlags);
ser.Serialise("values"_lit, v.f, arrayLength, SerialiserFlags::NoFlags).Important();
else
ser.Serialise("values"_lit, v.d, arrayLength, SerialiserFlags::NoFlags);
ser.Serialise("values"_lit, v.d, arrayLength, SerialiserFlags::NoFlags).Important();
SERIALISE_CHECK_READ_ERRORS();