7#ifndef linear_renderer_h
8#define linear_renderer_h
10#include "ps2s/packet.h"
13#include "ps2gl/base_renderer.h"
14#include "ps2gl/immgmanager.h"
15#include "ps2gl/renderer.h"
22 void DrawBlock(CVifSCDmaPacket& packet,
CGeometryBlock& block,
int maxVertsPerBuffer);
25 void FindNumBuffers(
int numToAdd,
int numVertsToRestart,
26 int numVertsAlreadyInFirstBuffer,
int maxVertsPerBuffer,
27 int& numVertsFirstBuffer,
int& numVertsLastBuffer,
31 void FinishBuffer(CVifSCDmaPacket& packet,
int numVertsToBreakStrip,
32 int numVertsInBuffer,
int vu1QuadsPerVert,
33 int numStripsInBuffer,
unsigned short* stripOffsets);
36 void XferBufferHeader(CVifSCDmaPacket& packet,
int numVertsToBreakStrip,
38 int numStripsInBuffer,
unsigned short* stripOffsets);
42 int inQuadsPerVert,
int outQuadsPerVert,
43 int inGeomOffset,
int inGeomBufSize,
46 inQuadsPerVert, outQuadsPerVert, inGeomOffset, name)
47 , InputGeomBufSize(inGeomBufSize)
52 int inQuadsPerVert,
int outQuadsPerVert,
53 int inGeomOffset,
int inGeomBufSize,
55 :
CBaseRenderer(packet, packetSize, inQuadsPerVert, outQuadsPerVert, inGeomOffset, name)
56 , InputGeomBufSize(inGeomBufSize)
60 virtual void InitContext(GLenum primType, tU32 rcChanges,
bool userRcChanged);
virtual void InitContext(GLenum primType, tU32 rcChanges, bool userRcChanged)
virtual int GetPacketQwordSize(const CGeometryBlock &geometry)
virtual CRendererProps GetRenderContextDeps()
virtual bool GetCachePackets(const CGeometryBlock &geometry)
virtual void DrawLinearArrays(CGeometryBlock &block)
Draw arrays of vertices that are accessed linearly (i.e., glDrawArrays)