mirror of
https://github.com/TorqueGameEngines/Torque3D.git
synced 2026-01-19 20:24:49 +00:00
fix volatile buffer
change debugdraw to use volatile fix volatile buffer wraparound
This commit is contained in:
parent
d45c3794a5
commit
267986a289
|
|
@ -201,6 +201,8 @@ public:
|
|||
if (mBufferFreePos < mBufferSize)
|
||||
mUsedRanges.push_back(UsedRange(mBufferFreePos, mBufferSize - 1));
|
||||
|
||||
init();
|
||||
|
||||
// Reset free pos
|
||||
mBufferFreePos = 0;
|
||||
|
||||
|
|
@ -224,8 +226,6 @@ public:
|
|||
if (GFXGL->mCapabilities.bufferStorage)
|
||||
{
|
||||
outPtr = static_cast<U8*>(mBufferPtr) + mBufferFreePos;
|
||||
_getBufferData.mOffset = outOffset;
|
||||
_getBufferData.mSize = size;
|
||||
}
|
||||
else if (GFXGL->glUseMap())
|
||||
{
|
||||
|
|
|
|||
|
|
@ -245,7 +245,7 @@ void duDebugDrawTorque::end()
|
|||
box.maxExtents.set(-F32_MAX, -F32_MAX, -F32_MAX);
|
||||
|
||||
GFXVertexBufferHandle<GFXVertexPCT> buffer;
|
||||
buffer.set(GFX, batchVerts, GFXBufferTypeStatic);
|
||||
buffer.set(GFX, batchVerts, GFXBufferTypeVolatile);
|
||||
GFXVertexPCT* verts = buffer.lock();
|
||||
|
||||
for (U32 i = 0; i < linesThisBatch * vertsPerLine; ++i)
|
||||
|
|
@ -258,7 +258,7 @@ void duDebugDrawTorque::end()
|
|||
|
||||
// --- Build index buffer
|
||||
GFXPrimitiveBufferHandle pb;
|
||||
pb.set(GFX, linesThisBatch * 2, linesThisBatch, GFXBufferTypeStatic);
|
||||
pb.set(GFX, linesThisBatch * 2, linesThisBatch, GFXBufferTypeVolatile);
|
||||
U16* indices = nullptr;
|
||||
pb.lock(&indices);
|
||||
|
||||
|
|
@ -303,7 +303,7 @@ void duDebugDrawTorque::end()
|
|||
box.maxExtents.set(-F32_MAX, -F32_MAX, -F32_MAX);
|
||||
|
||||
GFXVertexBufferHandle<GFXVertexPCT> buffer;
|
||||
buffer.set(GFX, batchVerts, GFXBufferTypeStatic);
|
||||
buffer.set(GFX, batchVerts, GFXBufferTypeVolatile);
|
||||
GFXVertexPCT* verts = buffer.lock();
|
||||
|
||||
for (U32 i = 0; i < trisThisBatch * vertsPerTri; ++i)
|
||||
|
|
@ -317,7 +317,7 @@ void duDebugDrawTorque::end()
|
|||
|
||||
// --- Build index buffer
|
||||
GFXPrimitiveBufferHandle pb;
|
||||
pb.set(GFX, trisThisBatch*3, trisThisBatch, GFXBufferTypeStatic);
|
||||
pb.set(GFX, trisThisBatch*3, trisThisBatch, GFXBufferTypeVolatile);
|
||||
U16* indices = nullptr;
|
||||
pb.lock(&indices);
|
||||
|
||||
|
|
@ -363,7 +363,7 @@ void duDebugDrawTorque::end()
|
|||
box.maxExtents.set(-F32_MAX, -F32_MAX, -F32_MAX);
|
||||
|
||||
GFXVertexBufferHandle<GFXVertexPCT> buffer;
|
||||
buffer.set(GFX, batchVerts, GFXBufferTypeStatic);
|
||||
buffer.set(GFX, batchVerts, GFXBufferTypeVolatile);
|
||||
GFXVertexPCT* verts = buffer.lock();
|
||||
|
||||
U32 outIdx = 0;
|
||||
|
|
@ -383,7 +383,7 @@ void duDebugDrawTorque::end()
|
|||
buffer.unlock();
|
||||
|
||||
GFXPrimitiveBufferHandle pb;
|
||||
pb.set(GFX, batchIndices, quadsThisBatch*2, GFXBufferTypeStatic);
|
||||
pb.set(GFX, batchIndices, quadsThisBatch*2, GFXBufferTypeVolatile);
|
||||
U16* indices = nullptr;
|
||||
pb.lock(&indices);
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue