Patent ID: 7999806
Filing Date: 2011-08-16
Classification: G06T

Abstract:
1. A three-dimensional shape drawing device for drawing a three-dimensional shape using a Z-buffer algorithm, the three-dimensional shape drawing device comprising: a depth value calculation section for calculating a depth value of a pixel to be drawn; a high order Z-buffer memory for retaining high order bits of a depth value of a pixel to be displayed as a front face, the depth value of the pixel to be displayed as the front face being from among depth values calculated by the depth value calculation section; a low order Z-buffer memory for retaining low order bits of the depth value of the pixel to be displayed as the front face, a number of the low order bits retained in the low order Z-buffer memory being equal to or larger than a number of the high order bits retained in the high order Z-buffer memory; a high order bit comparing section for reading the high order bits retained by the high order Z-buffer memory and comparing the read high order bits with high order bits of the depth value calculated by the depth value calculation section; a low order bit comparing section for, when a result of the comparing performed by the high order bit comparing section indicates that the high order bits of the depth value calculated by the depth value calculation section have a same value as the high order bits of the depth value of the pixel to be displayed as the front face and retained by the high order Z-buffer memory, (i) reading the low order bits of the depth value of the pixel to be displayed as the front face and retained by the low order Z-buffer memory and (ii) comparing the read low order bits with low order bits of the depth value calculated by the depth value calculation section; a record update section for, when the result of the comparing performed by the high order bit comparing section indicates that a depth indicated by the high order bits of the depth value calculated by the depth value calculation section is shallower than a depth indicated by the high order bits of the depth value of the pixel to be displayed as the front face and retained by the high order Z-buffer memory, updating (i) the high order bits of the depth value of the pixel to be displayed as the front face and retained by the high order Z-buffer memory and (ii) the low order bits of the depth value of the pixel to be displayed as the front face and retained by the low order Z-buffer memory, by using the depth value calculated by the depth value calculation section, and for, when a result of a comparison performed by the low order bit comparing section indicates that a depth indicated by the low order bits of the depth value calculated by the depth value calculation section is shallower than a depth indicated by the low order bits of the depth value of the pixel to be displayed as the front face and retained by the low order Z-buffer memory, updating the low order bits of the depth value of the pixel to be displayed as the front face and retained by the low order Z-buffer memory by using the depth value calculated by the depth value calculation section; a pixel value calculation section for calculating a pixel value, which is information about the pixel to be drawn; an image memory for retaining the pixel value calculated by the pixel value calculation section; a high order Z-buffer clearing section for clearing the high order Z-buffer memory by initializing the depth value of the pixel to be displayed as the front face and retained by the high order Z-buffer memory with a predetermined value; and a low order Z-buffer clearing section for clearing the low order Z-buffer memory by initializing the depth value of the pixel to be displayed as the front face and retained by the low order Z-buffer memory, wherein the high order bits of the depth value of the pixel to be displayed as the front face and retained by the high order Z-buffer memory and the low order bits of the depth value of the pixel to be displayed as the front face and retained by the low order Z-buffer memory are separately initialized upon clearing the high order Z-buffer memory via the high order Z-buffer clearing section and the low order Z-buffer memory via the low order Z-buffer clearing section, wherein the predetermined value indicates one of a shallowest depth value and a deepest depth value, such that, when the predetermined value is not the deepest depth value, the predetermined value is the shallowest depth value, and wherein the pixel value calculation section calculates the pixel value when the result of the comparing performed by the high order bit comparing section indicates that the depth indicated by the high order bits of the depth value calculated by the depth value calculation section is shallower than the depth indicated by the high order bits of the depth value of the pixel to be displayed as the front face and retained by the high order Z-buffer memory and when the result of the comparing performed by the low order bit comparing section indicates that the low order bits of the depth value calculated by the depth value calculation section have a same value as the low order bits of the depth value of the pixel to be displayed as the front face and retained by the low order Z-buffer memory.