diff --git a/desmume/src/rasterize.cpp b/desmume/src/rasterize.cpp index dcadc9c63..715bb4e77 100644 --- a/desmume/src/rasterize.cpp +++ b/desmume/src/rasterize.cpp @@ -311,6 +311,15 @@ struct PolyAttr bool isVisible(bool backfacing) { + //this was added after adding multi-bit stencil buffer + //it seems that we also need to prevent drawing back faces of shadow polys for rendering + u32 mode = (val>>4)&0x3; + if(mode==3 && polyid !=0) return !backfacing; + //another reasonable possibility is that we should be forcing back faces to draw (mariokart doesnt use them) + //and then only using a single bit buffer (but a cursory test of this doesnt actually work) + // + //this code needs to be here for shadows in wizard of oz to work. + switch((val>>6)&3) { case 0: return false; case 1: return backfacing;