al - Audio Library Functions gDP - DP GBI Macros gdSP - General GBI Macros gSP - SP GBI Macros gt - Turbo Microcode RDP gu - Graphics Utilities Math - Math Functions nuSys - NuSystem os - N64 Operating System sp - Sprite Library Functions uh - Host to Target IO 64DD - N64 Disk Drive
|
gSPClipRatioSyntax#include <ultra64.h> /* gbi.h */ gSPClipRatio(Gfx *gdl,r) gsSPClipRatio(r) Arguments
Explanation Scissoring is performed by rasterizing the entire triangle and then deleting pixels which lay outside the screen. (This consumes processing time in the RDP.) Clipping is performed by converting a large triangle that protrudes out of the clipping box, into a number of small triangles, all of which fit inside the clipping box. (This consumes RSP processing time in the RSP.) For details, please see Section 12.3.1, Figure 12-4 "Scissoring/Clipping/Screen Rectangles" in the N64 Online Programming Manual. When the clipping box is near in size to the scissoring box there are more occasions for clipping, which places a greater burden on the RSP. In addition, RDP processing speed declines because there is also more rendering, due to the increase in the number of polygons that results from the clipping process, where a large triangle is divided up into many small ones, as explained above. (The rendering of two small triangles generally requires more RDP processing time than one large triangle.) Conversely, when the clipping box is much larger than the scissoring box, there are few occasions for clipping so the burden on the RSP declines. However, RDP processing speed will also decline because there are more occasions for scissoring (which is performed by the RDP). The performance of the RSP was improved significantly with the release of F3DEX2. Thus, you should place greater regard on the above-mentioned influences on the RDP when determining the optimal size ratio. Since the most effective ratio will differ depending on the model, try various values and choose the one that works best. For details, please see Section 11.6 "Clipping and Culling" in the N64 Programming Manual.
Comment
Example // Makes the clipping box five times larger than the scissoring box gSPClipRatio(glist++, FRUSTRATIO_5);
See Also
Revision History
|