Skip to content

Commit b7fea43

Browse files
committed
fix index buffer binding offset
+minor cleanup
1 parent 775ec08 commit b7fea43

File tree

1 file changed

+5
-6
lines changed

1 file changed

+5
-6
lines changed

src/imgui_impl_dx9_custom.cpp

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -121,9 +121,9 @@ class d912pxy_renderer
121121
lastOffset = 0;
122122
}
123123

124-
int getOffset()
124+
int getBindingOffset()
125125
{
126-
return activeOffset * sizeof(Element);
126+
return lastOffset;
127127
}
128128

129129
void onFrameEnd()
@@ -198,9 +198,8 @@ class d912pxy_renderer
198198
vstream = createVStream<VStreamType>(size);
199199
activeOffset = 0;
200200
}
201-
202-
int writeSize = sizeof(Element) * count;
203-
if (vstream->Lock(getOffset(), writeSize, (void**)elements, D3DLOCK_DISCARD) < 0)
201+
202+
if (vstream->Lock(activeOffset * sizeof(Element), sizeof(Element) * count, (void**)elements, D3DLOCK_DISCARD) < 0)
204203
{
205204
doLocalFatal("vstream lock failed");
206205
return;
@@ -353,7 +352,7 @@ class d912pxy_renderer
353352
{
354353
// Render command lists
355354
int vtx_offset = 0;
356-
int idx_offset = 0;
355+
int idx_offset = ib.getBindingOffset();
357356
for (int n = 0; n < draw_data->CmdListsCount; n++)
358357
{
359358
const ImDrawList* cmd_list = draw_data->CmdLists[n];

0 commit comments

Comments
 (0)