move rendundant renderer code to be shared by all
This commit is contained in:
@@ -168,7 +168,7 @@ void RageDisplay::DrawPolyLine(const RageSpriteVertex &p1, const RageSpriteVerte
|
||||
}
|
||||
|
||||
|
||||
void RageDisplay::DrawLineStrip( const RageSpriteVertex v[], int iNumVerts, float LineWidth )
|
||||
void RageDisplay::DrawLineStripInternal( const RageSpriteVertex v[], int iNumVerts, float LineWidth )
|
||||
{
|
||||
ASSERT( iNumVerts >= 2 );
|
||||
|
||||
@@ -184,7 +184,7 @@ void RageDisplay::DrawLineStrip( const RageSpriteVertex v[], int iNumVerts, floa
|
||||
DrawCircle( v[i], LineWidth/2 );
|
||||
}
|
||||
|
||||
void RageDisplay::DrawCircle( const RageSpriteVertex &p, float radius )
|
||||
void RageDisplay::DrawCircleInternal( const RageSpriteVertex &p, float radius )
|
||||
{
|
||||
const int subdivisions = 32;
|
||||
RageSpriteVertex v[subdivisions+2];
|
||||
@@ -678,3 +678,76 @@ bool RageDisplay::SaveScreenshot( CString sPath, GraphicsFileFormat format )
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
void RageDisplay::DrawQuads( const RageSpriteVertex v[], int iNumVerts )
|
||||
{
|
||||
ASSERT( (iNumVerts%4) == 0 );
|
||||
|
||||
if(iNumVerts == 0)
|
||||
return;
|
||||
|
||||
this->DrawQuadsInternal(v,iNumVerts);
|
||||
|
||||
StatsAddVerts(iNumVerts);
|
||||
}
|
||||
|
||||
void RageDisplay::DrawQuadStrip( const RageSpriteVertex v[], int iNumVerts )
|
||||
{
|
||||
ASSERT( (iNumVerts%2) == 0 );
|
||||
|
||||
if(iNumVerts < 4)
|
||||
return;
|
||||
|
||||
this->DrawQuadStripInternal(v,iNumVerts);
|
||||
|
||||
StatsAddVerts(iNumVerts);
|
||||
}
|
||||
|
||||
void RageDisplay::DrawFan( const RageSpriteVertex v[], int iNumVerts )
|
||||
{
|
||||
ASSERT( iNumVerts >= 3 );
|
||||
|
||||
this->DrawFanInternal(v,iNumVerts);
|
||||
|
||||
StatsAddVerts(iNumVerts);
|
||||
}
|
||||
|
||||
void RageDisplay::DrawStrip( const RageSpriteVertex v[], int iNumVerts )
|
||||
{
|
||||
ASSERT( iNumVerts >= 3 );
|
||||
|
||||
this->DrawStripInternal(v,iNumVerts);
|
||||
|
||||
StatsAddVerts(iNumVerts);
|
||||
}
|
||||
|
||||
void RageDisplay::DrawTriangles( const RageSpriteVertex v[], int iNumVerts )
|
||||
{
|
||||
if( iNumVerts == 0 )
|
||||
return;
|
||||
|
||||
ASSERT( iNumVerts >= 3 );
|
||||
|
||||
this->DrawTrianglesInternal(v,iNumVerts);
|
||||
|
||||
StatsAddVerts(iNumVerts);
|
||||
}
|
||||
|
||||
void RageDisplay::DrawIndexedTriangles( const RageModelVertexArray *p )
|
||||
{
|
||||
this->DrawIndexedTrianglesInternal(p);
|
||||
|
||||
StatsAddVerts(p->sizeTriangles()*3);
|
||||
}
|
||||
|
||||
void RageDisplay::DrawLineStrip( const RageSpriteVertex v[], int iNumVerts, float LineWidth )
|
||||
{
|
||||
ASSERT( iNumVerts >= 2 );
|
||||
|
||||
this->DrawLineStripInternal( v, iNumVerts, LineWidth );
|
||||
}
|
||||
|
||||
void RageDisplay::DrawCircle( const RageSpriteVertex &v, float radius )
|
||||
{
|
||||
this->DrawCircleInternal( v, radius );
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user