Main Page   Modules   Alphabetical List   Data Structures   Data Fields  

Alpha blending with 16-bit frame buffers
[PlayStation 2]

When reading from a 16-bit frame buffer the colors are converted from 5bit to 8bit by left shifting 3bits. When writing back, the dithering matrix value is added before right shifting 3bits. Unfortunately if the dithering matrix contains negative values the write back operation is not the inverse of the read operation and this produces the artifacts described. They should be removed by setting a dithering matrix with no negative values in it using:

   RpSkyRenderStateSet(rpSKYRENDERSTATEDITHER, (void > *)0x55555555);
   
Note:
This is a renderstate, and can be set before rendering problem objects. Note that pixels with an alpha of zero will be written to the framebuffer effectively applying a second dither to the frame buffer. Another approach is to turn ditthering off for the problem artwork.

Criterion Software © 1993-2003 Criterion Software Limited. All rights reserved. Built Tue Apr 22 12:46:24 2003. Send Feedback
Converted from CHM to HTML with chm2web Pro 2.85 (unicode)