#include <indexed_renderer.h>
Inheritance diagram for CIndexedRenderer::
Public Methods | |||||||
CIndexedRenderer (void *packet, CRendererProps caps, CRendererProps reqs, int inQuadsPerVert, int outQuadsPerVert, const char *name) | |||||||
virtual void | InitContext (GLenum primType, tU32 rcChanges, bool userRcChanged) | ||||||
called by the geometry manager when the default renderer context has changed, when the user context has changed, or after the renderer has been loaded (and a different renderer was in use). The renderer must record all necessary context at this point (usually by adding it to the vif1 chain) as the rendering context may have changed when it is called to actually render with Draw*Arrays().
| |||||||
virtual void | DrawIndexedArrays (CGeometryBlock &block) | ||||||
Draw arrays of vertices that are accessed by index (i.e., glDrawElements). More... | |||||||
virtual int | GetPacketQwordSize (const CGeometryBlock &geometry) | ||||||
Estimate the amount of memory, in qwords, the packet to render "geometry" will take. (For display list cacheing.). More... | |||||||
virtual CRendererProps | GetRenderContextDeps () | ||||||
What parts of the render context are encoded into packets produced by this renderer? When the packets are cached in display lists, this cached state must remain valid to continue using the cached packet. This method returns a CRendererProps bitmask with '1' set for each property that is cached in the packet. Note that this does not include the render context kept by InitContext(); this will never be cached by ps2gl. The default renderers, for example, do not transfer normals even when specified if lighting is not enabled. The packets they generate therefore depend on whether or not lighting is enabled, so they set the "Lighting" bit. More... | |||||||
virtual bool | GetCachePackets (const CGeometryBlock &geometry) | ||||||
Can the packets generated by this renderer for the given geometry be cached when called from a display list, or should they be rebuilt each time? (The default renderers, for example, don't cache packets that depend on the current normal when lighting is enabled.). More... | |||||||
Protected Attributes | |||||||
cpu_vec_4 | ConstantVertColor |
|
Definition at line 20 of file indexed_renderer.cpp. |
|
Draw arrays of vertices that are accessed by index (i.e., glDrawElements).
Reimplemented from CRenderer. Definition at line 100 of file indexed_renderer.cpp. |
|
Can the packets generated by this renderer for the given geometry be cached when called from a display list, or should they be rebuilt each time? (The default renderers, for example, don't cache packets that depend on the current normal when lighting is enabled.).
Reimplemented from CRenderer. Definition at line 93 of file indexed_renderer.cpp. |
|
Estimate the amount of memory, in qwords, the packet to render "geometry" will take. (For display list cacheing.).
Reimplemented from CRenderer. Definition at line 74 of file indexed_renderer.cpp. |
|
What parts of the render context are encoded into packets produced by this renderer? When the packets are cached in display lists, this cached state must remain valid to continue using the cached packet. This method returns a CRendererProps bitmask with '1' set for each property that is cached in the packet. Note that this does not include the render context kept by InitContext(); this will never be cached by ps2gl. The default renderers, for example, do not transfer normals even when specified if lighting is not enabled. The packets they generate therefore depend on whether or not lighting is enabled, so they set the "Lighting" bit.
Reimplemented from CRenderer. Definition at line 81 of file indexed_renderer.cpp. |
|
called by the geometry manager when the default renderer context has changed, when the user context has changed, or after the renderer has been loaded (and a different renderer was in use). The renderer must record all necessary context at this point (usually by adding it to the vif1 chain) as the rendering context may have changed when it is called to actually render with Draw*Arrays().
Reimplemented from CRenderer. Definition at line 32 of file indexed_renderer.cpp. |
|
Definition at line 14 of file indexed_renderer.h. |