mirror of
https://github.com/RetroDECK/Supermodel.git
synced 2025-04-10 19:15:14 +00:00
skip viewports marked as disabled, might stop parsing some bad data
This commit is contained in:
parent
6d1aa4d527
commit
396fba7d24
|
@ -571,6 +571,10 @@ void CNew3D::RenderViewport(UINT32 addr)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (vpnode[0]&0x20) {
|
||||||
|
goto next; // skip this viewport
|
||||||
|
}
|
||||||
|
|
||||||
curPri = (vpnode[0x00] >> 3) & 3; // viewport priority
|
curPri = (vpnode[0x00] >> 3) & 3; // viewport priority
|
||||||
nextAddr = vpnode[0x01] & 0xFFFFFF; // next viewport
|
nextAddr = vpnode[0x01] & 0xFFFFFF; // next viewport
|
||||||
nodeAddr = vpnode[0x02]; // scene database node pointer
|
nodeAddr = vpnode[0x02]; // scene database node pointer
|
||||||
|
@ -723,6 +727,8 @@ void CNew3D::RenderViewport(UINT32 addr)
|
||||||
// Descend down the node link: Use recursive traversal
|
// Descend down the node link: Use recursive traversal
|
||||||
DescendNodePtr(nodeAddr);
|
DescendNodePtr(nodeAddr);
|
||||||
|
|
||||||
|
next:
|
||||||
|
|
||||||
// render next viewport
|
// render next viewport
|
||||||
if (vpnode[0x01] != 0x01000000) {
|
if (vpnode[0x01] != 0x01000000) {
|
||||||
RenderViewport(vpnode[0x01]);
|
RenderViewport(vpnode[0x01]);
|
||||||
|
|
Loading…
Reference in a new issue