From 85068dd856362cca7e1869979541a591a24e5658 Mon Sep 17 00:00:00 2001 From: Glenn Maynard Date: Wed, 31 Dec 2003 22:08:32 +0000 Subject: [PATCH] Use SetZWrite, SetZTest instead of SetUseZBuffer for masks, so masks aren't masked. When using more than one mask, and they may overlap, use mask.SetClearZBuffer(true) unless you really know what you're doing. --- stepmania/src/ScrollingList.cpp | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/stepmania/src/ScrollingList.cpp b/stepmania/src/ScrollingList.cpp index 630395e072..44a15de82a 100644 --- a/stepmania/src/ScrollingList.cpp +++ b/stepmania/src/ScrollingList.cpp @@ -70,12 +70,14 @@ ScrollingList::ScrollingList() m_iBounceWait=0; m_sprBannerMask.SetName( "Banner" ); // use the same metrics and animation as Banner m_sprBannerMask.Load( THEME->GetPathToG("ScreenSelectMusic banner mask") ); - m_RippleCSprite.SetXY(0,0); - m_RippleSprite.SetXY(0,0); + m_sprBannerMask.SetClearZBuffer( true ); m_sprBannerMask.SetBlendMode( BLEND_NO_EFFECT ); // don't draw to color buffer - m_sprBannerMask.SetUseZBuffer( true ); // do draw to the zbuffer + m_sprBannerMask.SetZWrite( true ); // do draw to the zbuffer m_sprBannerMask.SetWidth(EZ2_BANNER_WIDTH); m_sprBannerMask.SetHeight(EZ2_BANNER_HEIGHT); + + m_RippleCSprite.SetXY(0,0); + m_RippleSprite.SetXY(0,0); } void ScrollingList::UseSpriteType(int NewSpriteType) @@ -515,7 +517,7 @@ void ScrollingList::DrawPrimitives() if(!m_iBouncingState) m_apCSprites[iIndexToDraw1]->SetZoom( 1.0f - (ZOOM_OFFSET * i) ); m_apCSprites[iIndexToDraw1]->SetDiffuse( COLOR_SELECTED + RageColor(0,0,0,(1.0f - (FADE_OFFSET * i))) ); - m_apCSprites[iIndexToDraw1]->SetUseZBuffer( true ); // do have to pass the z test + m_apCSprites[iIndexToDraw1]->SetZTest( true ); // do have to pass the z test m_sprBannerMask.SetXY(m_apCSprites[iIndexToDraw1]->GetX(), m_apCSprites[iIndexToDraw1]->GetY()); m_sprBannerMask.SetZ( m_apCSprites[iIndexToDraw1]->GetZ()+0.05f ); m_sprBannerMask.SetZoom( m_apCSprites[iIndexToDraw1]->GetZoom()); @@ -552,13 +554,13 @@ void ScrollingList::DrawPrimitives() m_apCSprites[iIndexToDraw2]->SetZoom( 1.0f - (ZOOM_OFFSET * i) ); m_apCSprites[iIndexToDraw1]->SetDiffuse( COLOR_NOT_SELECTED + RageColor(0,0,0,(- (FADE_OFFSET * i))) ); m_apCSprites[iIndexToDraw2]->SetDiffuse( COLOR_NOT_SELECTED + RageColor(0,0,0,(- (FADE_OFFSET * i))) ); - m_apCSprites[iIndexToDraw1]->SetUseZBuffer( true ); // do have to pass the z test + m_apCSprites[iIndexToDraw1]->SetZTest( true ); // do have to pass the z test m_sprBannerMask.SetXY(m_apCSprites[iIndexToDraw1]->GetX(), m_apCSprites[iIndexToDraw1]->GetY()); m_sprBannerMask.SetZ( m_apCSprites[iIndexToDraw1]->GetZ()+0.05f ); m_sprBannerMask.SetZoom( m_apCSprites[iIndexToDraw1]->GetZoom()); m_sprBannerMask.Draw(); m_apCSprites[iIndexToDraw1]->Draw(); - m_apCSprites[iIndexToDraw2]->SetUseZBuffer( true ); // do have to pass the z test + m_apCSprites[iIndexToDraw2]->SetZTest( true ); // do have to pass the z test m_sprBannerMask.SetXY(m_apCSprites[iIndexToDraw2]->GetX(), m_apCSprites[iIndexToDraw1]->GetY()); m_sprBannerMask.SetZ( m_apCSprites[iIndexToDraw2]->GetZ()+0.05f ); m_sprBannerMask.SetZoom( m_apCSprites[iIndexToDraw2]->GetZoom());