WO1994004990A1 - Image synthesizer - Google Patents

Image synthesizer Download PDF

Info

Publication number
WO1994004990A1
WO1994004990A1 PCT/JP1993/001206 JP9301206W WO9404990A1 WO 1994004990 A1 WO1994004990 A1 WO 1994004990A1 JP 9301206 W JP9301206 W JP 9301206W WO 9404990 A1 WO9404990 A1 WO 9404990A1
Authority
WO
WIPO (PCT)
Prior art keywords
dot
polygon
image
dots
information
Prior art date
Application number
PCT/JP1993/001206
Other languages
English (en)
French (fr)
Inventor
Hiroyuki Murata
Takashi Yokota
Original Assignee
Namco Ltd.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Namco Ltd. filed Critical Namco Ltd.
Priority to GB9407871A priority Critical patent/GB2275403B/en
Priority to US08/211,395 priority patent/US5553208A/en
Publication of WO1994004990A1 publication Critical patent/WO1994004990A1/ja

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping

Definitions

  • the present invention relates to an image synthesizing apparatus, and more particularly to an image synthesizing apparatus capable of synthesizing and outputting image information in real time.
  • image synthesizing apparatuses have been known for use in, for example, a three-dimensional game or a flight simulation of airplanes and various vehicles.
  • image information on the three-dimensional object 300 shown in FIG. 24 is stored in the device in advance.
  • the pseudo three-dimensional image 308 is displayed on the screen 306 by performing a perspective transformation of the image information on the screen 306.
  • the device performs real-time arithmetic processing such as rotation and translation for the three-dimensional object 300 based on the operation signal. .
  • the three-dimensional image subjected to the arithmetic processing such as rotation is perspectively transformed on a screen 310 to display a pseudo three-dimensional image.
  • the player 302 can rotate and translate the three-dimensional object 300 in real time by his / her own operation, and can experience a virtual three-dimensional space in a simulated manner.
  • FIG. 25 shows an example of the configuration of such an image synthesizing device.
  • description will be made by taking an example in which the image compositing device is applied to a three-dimensional game.
  • this image synthesizing device includes an operation unit 5100, a game space calculation unit 500, an image synthesizing unit 512, and a CRT 518.
  • the game space is set in accordance with the operation signal from the operation section 510 and the game program stored in the central processing section 506. In other words, the position and direction of the three-dimensional object Calculation is performed.
  • the image synthesizing section 5 12 includes an image supply section 5 14 and an image forming section 5 16. Then, the image synthesizing unit 512 performs image synthesis of the pseudo three-dimensional image according to the game space setting information from the game space calculation unit 500.
  • the three-dimensional object constituting the game space is represented as a polyhedron divided into three-dimensional polygons.
  • the three-dimensional object 300 is represented as a polyhedron divided into three-dimensional polygons (1) to (6) (polygons (4) to (6) are not shown). .
  • the coordinates of each vertex of the three-dimensional polygon and associated data (hereinafter referred to as vertex image information) are stored in the three-dimensional image information storage unit 52.
  • various calculations such as rotation and translation, and various coordinate transformations such as perspective transformation are performed on the vertex image information in accordance with the setting information of the game space computing unit 500. Then, the vertex image information for which the arithmetic processing has been completed is rearranged in a predetermined order, and then output to the image forming unit 516.
  • the image forming section 516 includes a polygon generating circuit 570 and a pallet circuit 580.
  • the polygon generating circuit 570 includes a contour point calculating section 324 and a line processor 326. It is comprised including.
  • the arithmetic processing of filling all the dots inside the polygon with predetermined color data or the like is performed according to the following procedure o
  • the contour point calculation section 324 calculates left and right contour points, which are intersections of polygon contours AB, BC, CD, DA, etc., and scanning lines.
  • the line processor 326 fills the area surrounded by these left and right contour points, for example, the specified color data between LQ and QR in FIG. 26.
  • the color between L and Q is red and the color between QR is blue.
  • the filled color data is subjected to RGB conversion in the palette circuit 580, and is output and displayed from the CRT 518.
  • one poly- All the dots on the gon could only be painted in the same color.
  • the dots on polygon (1) can only be filled in red
  • the dots on polygon (2) can only be filled in yellow
  • the dots on polygon (3) can only be filled in blue.
  • the formed image was monotonous and lacked a sense of reality.
  • texture mapping shown in FIG. 28 a method called texture mapping shown in FIG. 28 is known.
  • the image information of the three-dimensional object 3 Image information and texture The texture information of 336 and 338 is separated and stored in the device.
  • image synthesis is performed by attaching the texture information of the textures 33 36 and 33 38 to the polyhedron 334 (as a technology of image synthesis using texture mapping,
  • the color information itself was stored in the field buffer.
  • the configuration in which the color information itself is stored in the field buffer unit the following problem occurs when the thinning-out / interpolation processing is performed. That is, first, if the color information stored in the field buffer is a color code, that is, encoded color information, it is impossible to interpolate itself. In this case, it is completely out of the question. It is. Next, if the stored color information is color information such as RGB output, In such a case, the quality of the synthesized image is extremely deteriorated. That is, the texture information is arbitrarily given according to the image to be displayed. Therefore, the sequence of the data has no mathematical regularity, let alone linearity.
  • the present invention has been made in view of the above-described conventional problems, and has as its object to achieve a high-speed and small-scale hardware particularly by using a thinning-out / interpolation method.
  • an image synthesizing apparatus is an image synthesizing apparatus for synthesizing a pseudo three-dimensional image by perspective-transforming a three-dimensional image composed of polygons onto a predetermined projection plane,
  • a field buffer unit that stores the texture coordinates obtained by the processor unit at an address position specified by the coordinates of each dot, and predetermined rendering information is stored at an address position specified by the texture coordinates.
  • An image information forming unit that reads the texture coordinates from the field buffer unit, reads rendering information from the rendering information storage unit based on the texture coordinates, and forms image information.
  • the processor unit is configured to calculate coordinates of each dot and a texture corresponding to the coordinates. It has a thinning calculation unit that calculates by thinning the coordinates,
  • the image information forming unit includes an interpolation calculation unit that performs an interpolation process on the texture coordinates of the thinned dot based on the texture coordinates stored in the field buffer unit of the dot on both sides of the thinned dot. It is characterized by having.
  • texture coordinates are stored in the field buffer unit.
  • the texture coordinates are read from the field buffer unit, and the rendering information (texture information) stored in the rendering information storage unit (texture information storage unit) is read out based on the read texture coordinates.
  • Forming information Therefore, the thinning-out / interpolation processing, which can reduce the hardware size and speed up the processing, can be realized without degrading the image quality so much. That is, a thinning process is performed in the processor unit, and the thinned texture coordinates are stored in the field buffer unit. Then, if this is interpolated when reading from the field buffer section, it is possible to realize an arithmetic method that can reduce the burden on hardware without significantly deteriorating the image quality.
  • the processor unit further obtains luminance information corresponding to the coordinates of each dot from the vertex image information given to each vertex of the polygon,
  • the field buffer unit further stores the luminance information obtained by the processor unit at an address position designated by the coordinates of each dot,
  • the interpolation operation unit also performs an interpolation process on the luminance information of the decimated dots based on the luminance information stored in the field buffer units of the dots on both sides of the decimated dots. Is also good.
  • the image information forming unit may read out the texture coordinates from the field buffer unit, form rendering information by the function operation unit based on the texture coordinates, and form image information.
  • texture mapping called bump mapping can be performed with a relatively small-scale circuit configuration.
  • unprecedented video effects can be created by using a random number generator or the like.
  • At least one of the rendering information stored in the rendering information storage unit is color information, and it is preferable that the color information is read out using the texture coordinates to form image information.
  • At least one of the rendering information stored in the rendering information storage unit is surface shape information, and image information may be formed by reading the surface shape information using the texture coordinates.
  • -Color information and surface shape information can be used as rendering information for performing texture matching in this way, and luminance information, transparency information, diffuse reflectance information, and the like can also be used.
  • luminance information, transparency information, diffuse reflectance information, and the like can also be used.
  • the normal vector, the deviation of the normal vector (perturbation component), and the height of the undulations formed on the object surface are used as the surface shape information, it is possible to perform texture matting by bump mapping. Monkey
  • the interpolation calculation unit performs the interpolation process by linearly interpolating the texture coordinates of the dots on both sides of the thinned dot.
  • the thinning calculation unit does not perform the thinning processing on the dots on the outline of the polygon or the dots on the boundary with other polygons. As a result, it is possible to effectively prevent the outline of the polygon and the boundary between the polygon and other polygons from being blurred when the thinning-out / interpolation processing is performed.
  • dots in which no polygon image is drawn are written as empty dots, and a polygon identification number for identifying the polygon is further written.
  • the dot to be processed is an empty dot
  • the polygon identification numbers of the adjacent dots on both sides of the dot are the same
  • both the adjacent dots on the adjacent dot are empty. It is desirable to perform the above-mentioned interpolation processing for a dot that is not a dot.
  • the interpolation calculation unit determines whether or not the dot to be processed is an empty dot, whether or not the polygon identification numbers of the adjacent dots are the same, and whether or not the adjacent dots are empty. Just by judging whether or not the dot should be subjected to the interpolation processing, it can be judged.
  • the interpolation calculation unit can be formed with a very simple configuration, and the hardware can be reduced in scale, the processing can be simplified, and the processing can be speeded up.
  • the thinning-out processing and the interpolation processing in the thinning-out calculation unit and the interpolation calculation unit may be performed for each of a plurality of continuous dots on the screen.
  • the apparatus further includes an attribute data storage unit for storing attribute data which is image information common to each polygon constituting the three-dimensional image,
  • the attribute data may be read from the attribute storage unit based on the polygon identification number read from the field buffer to form image information.
  • the attribute view data which is the image information common to polygons, is It is stored in the storage unit for the tribute.
  • the polygon identification number written in the field buffer section By reading this attribute data using the polygon identification number written in the field buffer section, higher quality image synthesis can be realized with a simpler circuit configuration. For example, when bump mapping is performed by deviation of the normal vector, the original normal vector can be specified by this attribute data.
  • FIG. 1 is a block diagram showing an example of an image synthesizing apparatus according to the present invention.
  • FIG. 2 is a schematic explanatory diagram showing a problem of luminance continuity.
  • FIG. 3 is a flowchart showing an outline of an image processing operation in the image apparatus according to the present invention.
  • FIG. 4 is a schematic explanatory diagram visually showing an outline of an image processing operation in the image device according to the present invention.
  • FIG. 5 is an example of a pseudo three-dimensional image synthesized by the image synthesizing apparatus according to the present invention.
  • FIG. 6 is a block diagram showing a specific configuration of the embodiment of the present invention.
  • FIG. 7 is a block diagram showing a peripheral circuit of the field buffer unit and a connection with the peripheral circuit.
  • FIG. 8 is a block diagram showing an internal circuit of the field buffer controller.
  • FIG. 9 is a timing chart showing a write sequence to the build buffer unit.
  • FIG. 10 is a schematic explanatory diagram for explaining the structure of a texture storage plane.
  • FIG. 11 is a schematic explanatory diagram showing a data flow in the texture information storage unit.
  • FIG. 12 shows an image output after writing data to the field buffer.
  • FIG. 3 is a block diagram for explaining the flow of data up to FIG.
  • FIG. 13 is a block diagram showing an example of an image synthesizing apparatus in a case where the thinning-out / interpolation processing is not performed.
  • FIG. 14 is a schematic explanatory view showing an example of the data in the field buffer which has been thinned out.
  • FIG. 15 is a schematic explanatory diagram for explaining an example of an interpolation processing method.
  • FIG. 16 is a block diagram showing a specific circuit configuration of the present embodiment when the thinning-out / interpolation processing is performed.
  • FIG. 17 is a block diagram showing a specific connection relationship between the field buffer controller and the interpolation circuit.
  • FIG. 18 is a block diagram showing an internal circuit of the interpolation circuit.
  • FIG. 19 is a timing chart for explaining the operation of the interpolation circuit.
  • FIG. 20 is a schematic explanatory diagram showing bump mapping.
  • Fig. 21 is a schematic explanatory diagram for explaining the concept of perturbation bump mapping.
  • FIGS. 22 (A) to 22 (C) are schematic explanatory diagrams for explaining a case where the texture information storage section is constituted by a logical operation circuit.
  • FIGS. 23 (A) and (B) are schematic explanatory diagrams in the case where a logical operation circuit is formed using a random number device.
  • FIG. 24 is a schematic explanatory diagram for explaining the concept of a conventional image processing apparatus.
  • FIG. 25 is a block diagram showing an example of a conventional image processing apparatus.
  • FIG. 26 is a schematic explanatory diagram for describing a pseudo three-dimensional image projected on a screen.
  • FIG. 27 is a schematic explanatory diagram for explaining an image device for synthesizing an image of a three-dimensional object with textured matting.
  • FIG. 28 is a schematic explanatory diagram for explaining the concept of texture matching.
  • the image synthesizing device includes an operation unit 12, a game space calculation unit 13, an image synthesis unit 1, and a CRT 46.
  • the image synthesizing unit 1 includes an image supply unit 10 and an image forming unit 28.
  • the game space is set based on the game program stored in the central processing unit 14 and the operation signal from the operation unit 12. Specifically, the game space setting information, which is composed of the position and direction information of the three-dimensional objects (for example, enemy airplanes, mountains, buildings, etc.) that make up the game space, the position of the player, and the viewing direction information, is calculated.
  • the data is output to the image supply unit 10 in the image synthesis unit 1.
  • the image supply unit 10 performs a predetermined calculation process according to the game space setting information. Specifically, arithmetic processing such as coordinate conversion from the absolute coordinate system to the viewpoint coordinate system, clipping processing, perspective conversion, and sorting processing is performed, and data is output to the image forming unit 28. You. In this case, the output data is represented as data divided for each polygon, and specifically, vertex image information such as position coordinates, texture coordinates, and other accompanying information of each vertex of the polygon. Information.
  • the image forming section 28 calculates image information inside the polygon based on the vertex image information given for each vertex of the polygon, and outputs this to the CRT 46.
  • the texture mapping method and the Gouraud shading method are used in order to more efficiently synthesize high-quality images.
  • the image synthesis is performed by a technique referred to as "image synthesis”. The following briefly describes the concepts of these methods.
  • Fig. 27 shows the concept of the texture matching method.
  • the coordinate conversion such as rotation, translation, and perspective transformation of the three-dimensional object 332 and processing such as clipping are performed for each of the three-dimensional polygons A, B, and C constituting each surface (specifically, For each vertex of each 3D polygon), grid-like and striped patterns are treated as textures, and are processed separately from polygon processing. That is, as shown in FIG. 1, a texture information storage unit (rendering information storage unit) 42 is provided in the image forming unit 28, in which texture information (rendering information) to be attached to each three-dimensional polygon is provided. That is, image information such as a lattice pattern or a stripe pattern is stored.
  • the address of the texture information storage unit 42 that specifies the texture information is given as the texture coordinates VTX and VTY of each vertex of each three-dimensional polygon. Specifically, as shown in Figure 27, for each vertex of polygon A, the texture coordinates of (VTX0, VTY0), (VTX1, VTY1), (VTX2, VTY2), (VTX3, VTY3) Is set.
  • the image forming unit 28 obtains the texture coordinates TX and TY for all the dots in the polygon from the texture coordinates VTX and VTY of each vertex. Then, the texture information is obtained by the obtained texture coordinates TX and TY. The corresponding texture information is read from the storage unit 22, and it is possible to synthesize an image of a three-dimensional object to which a texture such as a lattice or a stripe is applied as shown in FIG.
  • the amount of data processing can be significantly reduced.
  • the configuration is optimal for an image synthesizing apparatus that performs high-quality image processing in real time.
  • the three-dimensional object 3332 in FIG. 27 is represented as a cluster of three-dimensional polygons. Therefore, the continuity of the luminance information at the boundary of each 3D polygon becomes a problem. For example, when trying to represent a sphere using multiple 3D polygons, if all the dots in the 3D polygon are set to the same brightness, we actually want to represent “roundness”, but we want to express “roundness”. Gon boundaries may not be represented as "round”. Therefore, in the present image synthesizing apparatus, this is avoided by a method called Gouraud shading.
  • the luminance information VBRI0 to VBRI3 of each vertex is given to each vertex of the three-dimensional polygon as shown in FIG.
  • the luminance information of all the dots in the three-dimensional polygon is obtained by interpolation from the luminance information VBRI0 to VBRI3 of each vertex.
  • a three-dimensional object K represented by a polygonal polyhedron can be image-combined as a three-dimensional object L representing "roundness" at a boundary.
  • the above-mentioned problem of “roundness” can be solved, and at the same time, the amount of arithmetic processing required in the image synthesizing apparatus can be reduced. Therefore, the configuration is optimal for an image synthesizing apparatus that performs high-quality image processing in real time.
  • the processing unit 15 stores the image information of the three-dimensional object to be arranged in the game space in the three-dimensional image information. Read from storage unit 16. Next, the processing unit 15 outputs the coordinate information of the three-dimensional object to the coordinate conversion unit 18 by including the position and direction information in the image information. Thereafter, the coordinate conversion unit 18 performs coordinate conversion from the absolute coordinate system to the viewpoint coordinate system. Next, clipping processing, perspective transformation, and sorting processing are performed in the clipping processing section 19, the perspective transformation section 20, and the sorting processing section 22, respectively. Then, the vertex image information of the processed polygon is output to the image forming unit 28.
  • the sorting processing unit 22 performs an arithmetic process of rearranging the output order of the vertex image information of the polygons according to a predetermined priority. Specifically, the sorting processing unit 22 sequentially outputs the vertex image information of the polygon located closer to the display screen. Therefore, the image forming unit
  • the image forming unit 28 has a function of calculating the image information of all the dots inside the three-dimensional polygon from the vertex image information of the polygon input from the sorting processing unit 22 in a predetermined order.
  • an outline of the operation of the image forming unit 28 will be described. -First, information on both images of the vertices of the polygon, that is, display coordinates, texture coordinates, luminance information, and the like of each item of the polygon are sequentially input from the sorting processing unit 22 to the processor unit 30. Further, all data in the polygon are input to the attribute RAM section 38 as attribute data.
  • the processor section 30 obtains the display coordinates, texture coordinates TX, TY, and luminance information BRI of all dots in the polygon from the display coordinates, texture coordinates, luminance information, and the like of each vertex. Then, the obtained texture coordinates T X and T Y and the luminance information BRI are written in the field buffer unit 40 using the display coordinates as an address.
  • the main processor 32 has a processing dot instruction section 37 and an end flag. Storage unit 36 is connected.
  • the processing dot instructing section 37 and the end flag storage section 36 are used to omit the operation processing of the dot which has already been completed and has been filled. This makes it possible to greatly reduce the load on subsequent arithmetic processing.
  • FIG. 3 is a flowchart showing the operation of the image synthesizing apparatus of this embodiment. 4 (A) to 4 (K) visually show the calculation methods executed in the flows 110, 1200 and 130 of this flow chart.
  • the operation shown in the flow 100 ° shown in FIG. 3 is executed in the image supply unit 10 and the sorting processing unit 22. Then, from the source one tee ranging processing unit 2 2, when the c polygon data for each polygon is output, each polygon is given a pre-priority, from sortie ring processing unit 2 2, The data of each polygon is output according to the priority order.
  • C The polygon data of each polygon output at this time includes the perspective transformation display coordinates of each vertex of each polygon and the texture coordinates of each vertex.
  • the perspective transformation display coordinates VX *, VY * of each vertex of each polygon output from the sorting processing unit 22 are input to the main processor 32, where the processing is performed in accordance with the professional 110 An operation is performed. That is, the left and right contour points are calculated, the perspective transformation display coordinates X *, of each dot on the scanning line surrounded by the left and right contour points are calculated, and the calculation is completed for all the dots constituting the polygon. The above operation is repeated. Then, the perspectively-transformed display coordinates X *, Y * of each dot calculated in this manner are output as a write address to the field buffer unit 40. Then, in the field buffer section 40 designated by this write address, the polygon identification number PN force 1 of the data is stored. Written as one.
  • the operation shown in the flows 1200 and 1300 is executed by the coprocessor 34.
  • texture coordinates VTX, VTY of each vertex of the polygon, perspective transformation display coordinates VZ of each vertex, and luminance information of each vertex described later are input from the sorting processing unit 22.
  • the coprocessor 34 obtains the perspective transformation texture coordinates VTX *, VTY of each vertex from the texture coordinates VTX, VTY of each vertex according to the flow 1200.
  • the left and right contour points are calculated from the VTX and VTY *, and the perspective transformation texture coordinates ⁇ ⁇ and ⁇ * for each dot on the scanning line sandwiched between the left and right contour points are calculated to form a polygon. The above calculation is repeated until the calculation for all the dots to be performed is completed.
  • the coprocessor 34 performs the calculation operation of the flow 1300, and calculates the perspective transformation display coordinates of the polygon for each corresponding dot.
  • step 34 of the flow 1200 the perspective transformation texture coordinates ⁇ , TY * obtained for each dot are inversely perspective transformed using the perspective transformation display coordinates, and are output as texture coordinates TX, TY.
  • the texture coordinates ⁇ and TY output in this manner are written to the write address position of the field bopper section 40 output in step 23 of the flow 1100.
  • the field buffer section 40 stores the texture coordinates TX, TY and the polygon identification number PN corresponding to the address in the address position specified in the flow 1 100, that is, the address position of each dot constituting the polygon. Is written.
  • attribute data of each polygon output from the sorting processing unit 22 is sequentially stored in the attribute RAM unit 38 according to the operation of the flow 1500.
  • Such a series of operations is repeated each time the polygon data of each polygon is output from the sorting processing unit 22, and the data writing to the field buffer unit 40 and attribute RAM unit 38 is repeated. Done.
  • the writing of data for one screen is completed in this way, the reading of data from the field buffer unit 40 and the attribute RAM unit 38 is started next.
  • the storage space for image information in the field buffer unit 40 and the attribute RAM unit 38 is configured to be able to store two screens. Therefore, in practice, the writing and reading are performed simultaneously, thereby improving the efficiency of the arithmetic processing time.
  • the texture coordinates TX and TY written for each dot are output to the texture information storage unit 42 as a read address from the field buffer unit 40, for example, in synchronization with the horizontal scanning of the display.
  • the polygon identification number PN is output to the attribute RAM 38 as a read address.
  • the texture information storage section 42 outputs the color code designated to the address to the pallet & mixer circuit 44, and the attribute RAM section 38 outputs the polygon identification number PN. It is output to the corresponding attribute view palette / mixer circuit 44.
  • the color information for example, the RGB output is output to the CRT 46 in the no-let / mixer circuit 44, and the desired pseudo three-dimensional image is synthesized and displayed.
  • FIG. 4 visually shows an outline of the arithmetic processing performed in the image forming unit 28.
  • the image forming unit 28 performs an arithmetic process for forming all the image information in the polygon based on the vertex image information of the polygon.
  • the texture information to be attached to the polygon is stored in the texture information storage unit 42, and the texture coordinates TX and TY are required to read the texture information.
  • FIG. 4 (F), (G), (H), and (I), all perspective transformation texture coordinates TX, TY * in the polygon are shown. Is visually shown.
  • This arithmetic processing is performed in the coprocessor 34.
  • texture coordinates VTa, VTb, VTc, and VTd are associated with vertices of polyhedron 48, for example, A, B, C, and D.
  • the vertex texture coordinates VTa to VTd specify the address of the texture information to be attached to the polygon formed by the term points A to D. That is, specifically, it is a texture-coordinate that specifies an address for reading the texture information stored in the storage means in the texture information storage unit 42.
  • the display coordinates A to D and the texture coordinates VTa to VTd of each vertex are the perspective transformation coordinates A * to 0 ⁇ of each vertex, and the perspective transformation texture coordinates VTa * to VTd *. Is perspective-transformed. As a result, not only the XY coordinate system but also the Tx and TY coordinate systems are perspectively transformed, and the linearity between the coordinate systems is maintained.
  • the outline points of polygons formed by the perspective transformation coordinates A * to D * and the perspective transformation texture coordinates VTa * to VTd * of each vertex are obtained.
  • Linear interpolation is performed. That is, the linear interpolation calculation of the right and left contour point coordinates, R * and the right and left contour point texture coordinates T1 * and Tr * in FIGS. 4 (D) and 4 (H) is performed.
  • the left and right contour point coordinates, R *-, and the left and right contour point texture coordinates T1, Tr ⁇ are used to define each of the scanning lines connecting these left and right contour points.
  • the coordinates of the dot are linearly interpolated.
  • FIGS. 4 (C), (G) and (D), (H) are sequentially repeated, and finally, as shown in FIGS. 4 (E), (I), Perspective transformation display coordinates X, Y * of all constituent dots and perspective transformation texture coordinates
  • the perspective transformation texture coordinates TX *, TY * are inversely perspective transformed into texture coordinates TX, TY, and the texture coordinates TX, TY
  • the color code is read from the texture information storage unit 42 using the TY.
  • the read color code is made to correspond to the perspective transformation display coordinates X * and Y *.
  • the image is synthesized on the screen, and texture mapping that does not impair perspective and linearity is possible.
  • FIG. 5 shows an example of a pseudo three-dimensional image synthesized in this way.
  • desired texture mapping is performed on, for example, a house 594, a road 592 seen in the distance, and a brick road 597.
  • This makes it possible to display images with a much higher level of reality than when the surface of a polygon is painted with a single color.
  • the perspective and linearity of the glued texture are not impaired in the brick road 597.
  • FIG. 4 does not show the calculation method of the perspective transformation display coordinates Z * and the luminance information BRI, the calculation of both is performed by a calculation method substantially similar to the calculation method of TX and TY in FIG. Done.
  • the interpolation operation of the luminance information is also performed in the same manner as in TX and TY, so that the relationship between these coordinate systems can be kept linear as described above, and the reality becomes more realistic.
  • FIG. 6 shows a specific configuration of the present embodiment including a sorting processing unit 22, a processor unit 30, an attribute RAM unit 38, a field buffer unit 40, and a texture information storage unit 42. Is shown.
  • interpolation circuits 180 to 186 are omitted for simplicity.
  • the field buffer section 4 includes video RAMs 10, 102, 104, and 106, and field buffer controllers 90, 92, 94, and 96 for controlling these video RAMs. .
  • the field buffer space constituted by the video RAMI 00-106
  • data corresponding to each dot on the display screen of the CRT is stored on a one-to-one basis.
  • the data stored in this field buffer space are texture coordinates TX, TY, brightness information BRI and polygon identification number PN calculated by the coprocessor 34, and the address to be written is It is determined by the display coordinates X * and Y * calculated by the processor 32.
  • the video RAM has a multi-port RAM configuration and is divided into a random port (RAM) and a serial port (SAM).
  • writing of data to the field buffer space is performed by random access, and reading is performed serially in synchronization with the dot clock.
  • the field buffer space is divided into two banks, one for writing and the other for reading, and the bank is switched every field (160 seconds).
  • FIG. 7 shows the peripheral circuit of the field buffer unit 40 and details of the connection with the peripheral circuit.
  • FIG. 8 shows the field buffer controller 9C! One example of the internal circuit of ⁇ 96 is shown.
  • FIG. 9 shows a sequence for writing data to the field buffer section 40. Is shown.
  • the following signals are input to the field buffer unit 40.
  • the perspective transformation display coordinates X and Y * are the addresses AIC! XPFW, XPWIR, XVW, and XHW are input as control signals for the field buffer controllers 90 to 96.
  • the texture coordinates TX, TY and BRI are input as input data DI 0 to 11 of the field buffer controllers 92 to 96, respectively.
  • the field buffer unit 40 receives a program signal of a program register, a clock, a synchronization signal, and the like.
  • the following signals are output from the field buffer unit 40. That is, an XWAIT signal for instructing prohibition of data writing is output to the processor unit 30 including the control circuit 70 and the like.
  • the texture coordinates TX and TY which are read data, are output to the texture information storage unit 42.
  • the attribute RAM section 38 outputs a polygon identification number PN, and the pallet & mixer circuit 44 outputs luminance information BRI.
  • the internal circuit of the field buffer controllers 9 ⁇ to 96 has the configuration shown in FIG. -Here, the field buffer controller in the present embodiment has three modes: master one mode, slave mode, and extension mode.
  • the field buffer controller handles the polygon identification number PN. ⁇ is used in the master mode, the field buffer controllers 92 to 94 that handle the texture coordinates TX and TY are used in the slave mode, and the field buffer controller 96 that handles the luminance information BRI is used as the extension mode.
  • the field buffer controllers 92 to 96 used in the slave expansion mode are controlled synchronously under the control of the field buffer controller 90 used in the master mode, and a large field buffer space is used.
  • the clock signal and the external synchronization signal input to the field buffer controllers 90 to 96 are input to the internal clock & synchronization signal generation circuit 134, where the internal clock and a group of synchronization signals are input. Is generated and used as a control signal in the field buffer controllers 90-96. Also, the program signal is input to the programmable register 132, which determines the internal parameter group in the controller.
  • ⁇ address signal AI 0 to 9 the input data DI 0 to: L 1
  • the control signal XP FIR, XVW, XHW the latch 1 10, 1 12, 1 14 by transient latch is the c
  • the XPIR is used to count up the PN counter 118, and the count-up value of the PN counter 118 determines the polygon identification number PN. That is, as shown in FIG. 9, the XPFIR is output from the control circuit 70 of the main processor 32 so that XPFIR-L is obtained every time a new polygon process is started. Counter 1 18 counts up. Then, before the processing of the next field is started, the PN counter 118 is reset. As a result, polygon identification numbers PN, such as 0, 1, 2, 3, 4,..., Are set for each polygon in the descending order of polygon priority.
  • the polygon identification number PN can be generated internally, that is, in the field buffer controller 9 #, without inputting the polygon identification number PN from outside. Then, by using the polygon identification number PN, data for displaying a polygon on an image is obtained. Among them, it is possible to process data that is common to each dot constituting a polygon and data that is not common to each other, and it is possible to increase the speed and scale of hardware.
  • the address signals AI 0 to 9 and the input data D 10 to 11 are temporarily stored in the coordinates Q ue 122 and the data Queue 124 of the eight-stage FIF 1200, and then stored in the video RAM.
  • the sequencer 130 monitors the data stored in the 8-stage FIFO 120, thereby outputting an XWAIT signal to the outside and a read control signal to the 8-stage FIF 0120. Data control.
  • a sequence signal for controlling the video RAM is also generated by the sequencer 130.
  • the X and Y data stored in the eight-stage FIF 01 20 are output to the RAM address generation circuit 136, and the Tx, ⁇ , and BRI data are output to the register 138 via the delay circuit 128, respectively.
  • the data stored in the register 138 is written to the video RAM according to the RAM address generated by the RAM address generation circuit 136.
  • sequence signal from the sequencer 130 Output to the RAM control signal generation circuit 14 ⁇ and the SAM control circuit 142 via the respective circuits, and the respective circuits generate a RAM control signal as a write port and a SAM control signal as a read port. It will be.
  • the terminal 146 is a bidirectional data bus capable of switching between input and output.
  • the output terminal is switched to a clear code generated by the SAM clear code generation circuit 144, and the memory is initialized.
  • the memory When reading data from the SAM, it switches to the input terminal and inputs the data stored in the SAM.
  • the input data is output from the field buffer controller 9096 as serial outputs D 0 to 11. That is, the polygon identification number PN output from the field buffer controller 90 is sent to the attribute RAM unit 38, and the texture information TXTY output from the field buffer controller 9294 is sent to the texture information storage unit 42 field buffer controller.
  • the luminance information BRI output from 96 is output to the let & mixer circuit 44 via the delay circuit 168, respectively.
  • FIG. 9 shows a sequence of writing data to the field buffer section 40.
  • image data is written for each polygon every time the image becomes XP FIRL.
  • address AIC! Is written so that the data of one polygon is written in groups of one line at a time. Controlled using XVW and XHW signals.
  • the attribute RAM section 38 has an attribute RAM section 152 and an attribute data control section 15 °.
  • Attribute data such as a palette number PAL, a color Z value CZ, and a block number BN input from the sorting processing unit 22 are input to the attribute data control unit 150.
  • the palette number PAL is a number for designating the letter table
  • the color Z value CZ is the depth. It is used to cope with a color change due to the change.
  • the block number BN is a signal for designating a block of the storage space in the texture information storage unit 42.
  • These attribute data are stored in the attribute RAMI 52 by the attribute data control unit 150. Reading from the attribute RAM 12 is performed in accordance with the polygon identification number PN input from the field buffer section 40, and is output to the palette & mixer circuit 44 as data for each polygon. Become.
  • a block number BN for designating a block of the storage space in the texture information storage unit 42 is also generated by the attribute control circuit 150 and output to the texture storage unit 42.
  • Texture information storage (rendering information storage)
  • the texture information storage unit 42 includes a character code storage unit 160 and a character generator 164, as shown in FIG.
  • the texture information storage unit 42 stores, for example, a color code for displaying an actual screen based on the texture coordinates Tx and ⁇ from the field buffer unit 40, and is used to supplement the speed of the storage unit. It has a two-stage configuration. For example, a mask ROM, an EEPROM, an SRAM. DRAM, or the like can be used as a component of these storage units. In particular, if the contents stored in the RAM are rewritten using a RAM, for example, every field (160 seconds), a unique image effect such as feedback of the own image and monitoring of the texture can be obtained. It is possible to obtain.
  • FIG. 10 shows an example of a texture storage plane configured by the texture information storage unit 42.
  • This texture storage plane has, for example, a hierarchical structure as shown in FIG. 10, whereby a wide texture storage plane can be represented by a storage unit having a small capacity. That is, the texture storage plane is divided into, for example, 16 blocks, and each block is divided into 256 ⁇ 256 characters. The character is divided into 16 x 16 dots, and each character stores a pattern for forming a texture storage plane. Then, the texture storage plane is completely filled using this pattern.
  • texturing to a polygon is performed by specifying the coordinates of each vertex of the texture to be attached to the polygon.
  • FIG. 11 shows an example of a data flow in the texture information storage unit 42.
  • the texture information storage unit 42 receives 12-bit texture X coordinates TX0 to TX11 and 16-bit texture ⁇ coordinates ⁇ 0 to TY15, respectively, as a total of 28 bits of data.
  • the lower bits ⁇ 0 to ⁇ 3 and ⁇ 0 to ⁇ 3 of the texture coordinates are used to specify the address of the character in the character generator 164, and the upper bits TY12 to TY15 of the texture ⁇ coordinates are used as the texture storage plane.
  • the character codes C CO to C C12 are read from the character code storage unit 160.
  • the lower bits TX0 to TX3 and # 0 to # 3 are input to the character generator 164 by bypassing the character storage unit 160 and combining with the character codes CCO to CC12. Then, from the character generator 164, a final output, for example, an 8-bit color code is output to the palette & mixer circuit 44.
  • the pallet & mixer circuit 44 is used to output RGB from the brightness information BRI, color data C 0 L, pallet number PAL and color Z value CZ. This is a circuit for synthesizing data.
  • RGB data is extracted from a preset palette using data for each dot stored in the field buffer section 40 and data for each polygon stored in the attribute RAM section 38. Synthesized by No. and 'let's each store RGB data of 8 bits each, for a total of 24 bits of color data.
  • the pallet is divided into 128 banks in total, and this bank is designated by the pallet number PAL.
  • One bank has data of 256 colors, and the color designation in this bank is performed by the color code COL.
  • FIG. 12 shows the flow of signals from writing data to the field buffer section 40 and the tribute RAM section 38 to outputting an image. That is, the final image is output according to the following signal flow.
  • Attribute data RAM section 38 outputs polygon data (BN, PAL, CZ) corresponding to the polygon identification number PN. -
  • TX, TY, and BN are input to the texture information storage unit 42, and the corresponding color data C 0 L is output.
  • TX and TY are input to the texture information storage unit 42 via the delay circuit 168 in order to match the BN via the attribute RAM unit 38 with the evening timing.
  • ⁇ COL, PAL, BRI, and CZ are subjected to evening adjustment by delay circuits 170, 172, and 174, and are simultaneously input to pallet and mixer circuit 44.
  • the pallet bank and the color code in the bank are specified by PAL and COL, and one color data is selected from the pallet.
  • the selected color data is color-calculated based on the values of BRI and CZ. After that, it undergoes gamma correction, is DZA-converted, and is converted into RGB data by the pallet and mixer circuit. And output the image to the CRT 46.
  • the texture coordinates are stored in the field buffer unit 40.
  • the texture coordinates are stored in the field buffer unit 40 in this manner, it is possible to perform image synthesis using the thinning-out / interpolation method described below, thereby achieving high-speed and small-scale hardware. It becomes possible.
  • the thinning operation for the texture coordinates and the like is performed in the processor unit 30. Further, as shown in FIG. 1, the output of the field buffer section 40 is provided with interpolation circuits 180, 1822, 1884, and 1886. Then, the interpolation circuits 180 to 186 perform an interpolation operation to obtain a texture coordinate or the like of the decimated point, and read the texture information from the texture information storage unit 42.
  • the texture coordinates on the screen are non-linear data, but it is possible to obtain a high-quality image with little deterioration in image quality even if linear interpolation is performed in such a small part. Become.
  • FIG. 13 is a block diagram of the image synthesizing apparatus in the case where the thinning-out / interpolation process is not performed. As can be seen by comparing FIGS. 1 and 13, in the present embodiment, the thinning-out / interpolation processing can be performed by a very simple method such as adding an interpolation circuit 180 to 186.
  • the thinning-out operation means is included in the processor section 30. More specifically, this is realized by thinning out the calculation when calculating each dot on the scanning line in the processor section 30. This The thinning-out operation is performed, for example, according to the following rules as shown in FIG.
  • the data is decimated in the horizontal direction (X direction), for example, every 1 dot (for example, a dot where X is an even number).
  • thinning processing is not performed for the following dots.
  • the image of the data in the decimated field buffer is shown in Fig.14.
  • the dots corresponding to the above 1 to 3 are not thinned out, and the other dots are thinned out one by one.
  • the interpolation calculation means will be described. As shown in FIG. 1, the interpolation calculation means in this embodiment is realized by connecting interpolation circuits 18 ⁇ , 182, 184, and 186 to the output of the field buffer unit 4 ⁇ .
  • the interpolation circuit 180 performs interpolation of the polygon identification number PN, and the interpolation circuits 18 2 and 18 4 perform interpolation of the texture coordinates TX and TY.
  • FIG. 15 shows an example of the case where interpolation processing is performed according to the above rules.
  • the interpolation processing is performed by empty dots surrounded by dots with the same polygon identification number PN. Done for That is, in FIG. 15, interpolation processing is performed on a dot which is a vacant dot and whose polygon identification numbers PN of both adjacent dots are both "0". On the other hand, even if there is an empty dot, interpolation processing is not performed for dots with different polygon identification numbers PN on both adjacent dots.
  • an average value of the texture coordinates TX and TY of the adjacent dots is obtained, and this value is set as the texture coordinates TX and TY of the empty dot.
  • the thinning process in the present embodiment is performed when calculating the dots on the scanning lines shown in FIGS. 4 (D) and 4 (H). This is performed by changing the count-up value of the X * coordinate when calculating each dot on the scanning line. For example, when the thinning rate is 1 Z2, the count-up value is 2. When the thinning rate is set to 13, the count-up value may be set to 3. As a result, the calculation of the dots on the scanning line is performed every two dots and every three dots, and the thinning calculation processing can be performed.
  • the force of thinning out is not limited to this.
  • the present invention is not limited to this.
  • this thinning processing may be performed when calculating the contour points shown in FIGS. 4 (C) and 4 (G).
  • the thinning rate can be changed by changing the count-up value of the Y * coordinate when calculating the contour points.
  • the interpolation operation means in this embodiment is configured by providing the output of the field buffer unit 40 with the interpolation circuits 180 to 186.
  • Figure 16 shows the video in this case, RAM 10 C! 1 to 106, field buffer controllers 90 to 96, and interpolators 180 to 186 are shown.
  • Fig. 17 shows the connection relationship between the PN field buffer controller 90 and the PN interceptor circuit 180 (TX, TY, and BRI field buffer controllers 92, 94, and 96). The connection relationship with the circuits 182, 184, and 186 is similar.)
  • FIG. An example of an internal circuit of the inter-circuits 180 to 186 is shown.
  • the write operation to the video RAMs 100 to 106 is performed by randomly writing data based on a predetermined end signal by the field buffer controllers 90 to 96. .
  • the operation of reading data from the video RAMs 100 to 106 is performed by reading out data serially in synchronization with the dot clock via the DS0 to 11 terminals.
  • the bidirectional buffer DSC! Of the field buffer controller 90 is used.
  • the data input from .about.11 is serially output to the interpolation circuit 180 via DO0.about.11 outputs.
  • interpolation circuits 180 to 186 are formed by circuits having the same configuration as shown in FIG.
  • the control between the respective interpolation circuits 180 to 186 is performed by the XNUL B terminal, the XNUL I terminal, and the X EQ terminal.
  • the registers 192 to 214 have a data holding / shift function.
  • Each of the logic circuits 220, 222, 224, 226, and 228 has a function of performing a logical operation such as an inverter or a NOR.
  • the empty dot determination circuit 230 is a circuit that determines whether or not a dot to be processed is an empty dot.
  • the polygon number match determination circuit 232 is a circuit that determines whether or not the polygon identification numbers P N of the adjacent dots on both sides of the dot to be processed match.
  • the average value calculation circuit 234 is a circuit for calculating the average value of the texture coordinates TX, TY and the brightness information BRI of the dots on both sides when performing the interpolation processing.
  • the multiplexer 236 is a circuit for selecting whether to output interpolated data or to output original data.
  • the polygon identification number PN is handled.
  • the field buffer controllers 92 and 94 handling the coordinate TX and TY data are used in the slave mode, and the field buffer controller 96 handling the brightness information BRI is used in the extended mode.
  • the XNULB and XEQ terminals which are the bidirectional buffers of the interpolation circuits 180 to 186, become output terminals or input terminals according to the respective modes as shown in FIG. Specifically, the XNU LB terminal of the interpolation circuit 180 (master mode) is an input terminal, and the XEQ terminal is an output terminal.
  • XNU LB terminal output of the interpolation circuit 182, 184 (Sure Bumodo), XEQ terminal t becomes the input terminal also the XNU LB terminals, XEQ terminal are both input terminals of the interpolation circuit 186 (enhanced mode) .
  • the XNUL I terminal is an input terminal for all interpolation circuits 180 to 186.
  • the interpolation circuit A signal for performing comminigation between 180 and 186 is required, and the interpolation control signals XNU LB and XNU LKXEQ play their role.
  • the XNULB terminal 216 is a bidirectional buffer. Then, from the slave mode interpolation circuit 182, a signal indicating whether or not the value of TX of the dot to be processed is FFFH is output as an XULB signal (hereinafter, this signal is referred to as XNU LB (X) Signal). Similarly, from the interpolation circuit 184, a signal indicating whether or not the value of TY is FFFH is output as an XNUB signal (hereinafter, this signal is referred to as an XNULB (Y) signal). The empty dot determination circuit 230 determines whether the value of TX or TY is FFFH.
  • XNU LB (X) which is the output signal of the interpolation circuit 182
  • the signal is input to the XNUL B terminal of the interpolation circuit 18 ° and the XNULI terminal of the interpolation circuits 184 and 186.
  • the XNU LB (Y) signal which is the output signal of the interpolation circuit 184, is output to the? ⁇ 1; 1 ⁇ I terminal, input to the XNU LB terminal of the interpolation circuit 186. Therefore, the XNUL B (X) signal and the XNUL B (Y) signal are input to the logic circuits 228 in the interpolation circuits 180 to 186 shown in FIG.
  • the XE Q terminal 218 is also a bidirectional buffer. Then, a signal indicating whether or not the polygon identification numbers PN of the dots on both sides of the dot to be processed are the same is output from the master one-mode interpolation circuit 180 as an XEQ signal. Specifically, the polygon identification number P N of the dot held in the registers 192 and 196 is input to the polygon number match determination circuit 232. If they match, "0" is output from the XEQ terminal.
  • the XEQ terminal 218 is an input terminal. Then, as shown in FIG. 16, the XEQ signal output from the interpolation circuit 180 is input. As a result, the interpolation circuits 182 to 186 are informed of whether or not the polygon identification numbers of the adjacent dots coincide with each other. That is, when the polygon identification numbers PN of the adjacent dots match each other, the output of the XEQ terminal of the interpolation circuit 180 becomes "0", and this output is input to the inverter 220 in the interpolation circuits 180 to 186. . Then, the output of the inverter 220 is input to the register 206 and the logic circuit 226.
  • the dot to be processed is an empty dot
  • the polygon identification numbers PN of the adjacent dots on the both sides match, and if the adjacent dots are not empty, the dot is not used. Is determined to be the dot to be interpolated. this As a result, the output of the logic circuit 226 in FIG. 18 becomes “1”, and the multiplexer 236 selects the output of the average value arithmetic circuit 234 instead of the output of the register 198.
  • the average values of PN, TX, TY, and BRI which are the data held in registers 196 and 20 °, are calculated, and the interpolation data is calculated.
  • the interpolation processing for the polygon identification number PN, texture coordinates TX, TY, and luminance information BRI can all be performed by the interpolation circuit having the same circuit configuration.
  • FIG. 19 shows a state in which the data read from the video RAM ⁇ is output after being subjected to interpolation processing in the field buffer controller.
  • interpolation processing is performed by pipeline processing in the following seven phases (# ⁇ to # 6).
  • the corresponding dot data is output from the multiport video RAM.
  • the data that arrives at the DS0 to 11 terminals are taken into the field buffer controllers 90 to 96 and the interpolation circuits 180 to 186 in synchronization with SC.
  • Slave mode interception circuit 182, 184 Check whether TX and TY values are FFFh and output XNULB signal.
  • Master mode interception circuit 180 force Compares the polygon identification numbers P N of the adjacent dots and outputs whether they match as an X EQ signal.
  • Polygon identification number PN texture coordinates TX, TY, brightness information BRI supplement
  • the interval is determined by finding the average value on both sides. However, for the dots for which no interpolation processing is performed, the data is passed through the multiplexer 236 without any processing.
  • Data is output in synchronization with the rise of the dot clock DCK.
  • phase # 2 XNU L B output corresponding to data (C) is performed (phase # 2)
  • the texture information storage unit is not limited to one that stores the numerical value of the texture information itself, such as ROM or RAM, but can also be expressed in the form of a function for inputting texture coordinates and the like.
  • the texture information storage unit in this case is configured as a logical operation circuit.
  • the texture information that can be attached to a polygon is not limited to this, and any type of rendering information can be considered.
  • information on the shape of the polygon surface can be attached.
  • bump matting Such a matting method
  • clay-shaped matting can be applied to a three-dimensional object M as shown in L as shown in FIG.
  • Bump mapping is also called perturbation mapping, and can have perturbation components (often the deviation of the normal vector) for the surface shape of the object as texture information.
  • the texture information composed of this perturbation component is hereinafter referred to as a bump.
  • the texture coordinates for reading the bump texture information are referred to as bump texture coordinates BX and BY.
  • “normal vector of polygon surface” is provided as one type of attribute data (constant for each polygon). Then, the dot is perturbed by the force perturbation component of the “normal vector of the polygon surface”. As a result, the normal vector N of each dot is obtained. This is shown in Figure 21.
  • the luminance information BRI of each dot is obtained based on this normal vector information.
  • an illumination model is required to obtain the brightness information BRI for each dot from the normal vector.
  • this illumination model a parallel light beam from a single light source, and specular reflection, diffuse reflection, and ambient light are considered.
  • the following formula called a shading function which is obtained semi-theoretically and semi-empirically, is known.
  • the luminance information for each dot is obtained, and the dot color information is obtained based on this luminance information, so that the surface of the object has a clay-like shape as shown in Fig. 20.
  • Image and the like can be synthesized.
  • the texture information storage unit stores surface shape information of the object, for example, normal vector information, or a perturbation component of the normal vector. . Then, this surface shape information is read out using the bump texture coordinates.
  • the present embodiment is not limited to this, and a predetermined function operation may be performed on the bump texture coordinates to obtain the surface shape information of each dot.
  • zigzag shape function shown in Fig. 22 (A) is a complex of linear functions
  • the constant i is an integer power of 2, it can be realized by a circuit composed of a multiplier 900, a subtractor 902, and a complementer 904 as shown in FIG.
  • Wm to W0 lower m + 1 bits of W
  • j are input to multiplier 900.
  • the output of the multiplier 900 is input to the subtracter 902 after the lower m bits are truncated.
  • the output of the subtractor 902 is input to the complementer 904.
  • Wm + 1 (bit m + 1 of W) is input to the E input of the complementer 904.
  • This circuit comprises a shifter 906, a decrementer 908, and a complementer 910.
  • Shifter 906 has Wn! To WO (lower m- + 1 bits of W) are input.
  • the output of shift 906 is the lower m bits of the power input to decrementer 908. Is bypassed and input to the complementer 910. Wm + i (bit m + 1 of W) is input to the E input of the complementer 910.
  • the shifter 906 is not an active circuit, but merely a black box representation of the difference in the connection of each bit.
  • the circuit shown in Fig. 22 (C) is sufficient.
  • a random number generator This random number generator generates a pseudo-random number uniquely determined with respect to an input such as a texture coordinate.
  • This example is shown in Fig. 23 (A).
  • the random number generation circuit is united and has a multi-stage configuration such as random number units A to D.
  • various random number units 912, 914, 916, etc. can be selected to find a bump pattern suitable for the purpose.
  • various storage devices such as an EPROM, an SRAM, a DRAM, and a mask ROM can be used as a storage device constituting the texture information storage unit.
  • texture information (residualing information) stored in the texture information storage unit
  • various kinds of information such as color information, surface shape information, luminance information, surface shape information, transparency information, and diffuse reflectance information are used. be able to.
  • transparency information as rendering information
  • a dim object in which a part of the object changes from transparent to translucent and translucent to transparent can be expressed.
  • the diffuse reflectance information as rendering information, it becomes possible to represent an object having a different “gloss” depending on the portion.
  • the method of texture mating for attaching a texture to a polygon is not limited to the method shown in this embodiment, and any type of texture matting can be used.
  • a method may be used in which the texture is directly attached by simple linear interpolation at the expense of a certain degree of image quality deterioration.
  • Ma The technique described in the prior art (Texture Mapping (1) Takeshi Shibamoto, Makoto Kobayashi, Information Processing Society of Japan, 31st Lecture Paper Collection (published by Information Processing Society of Japan, September 9, 1960)) It can also be used.
  • this method first, the perspectively transformed display coordinates of each vertex of the polygon are subjected to reverse perspective transformation to return to the state before the perspective transformation.
  • a “transformation matrix” for transforming the display coordinates before the perspective transformation into the texture coordinates is obtained.
  • the display coordinates are subjected to reverse perspective transformation, and the texture coordinates are obtained by a transformation matrix.
  • the thinning rate in the thinning calculation means is not limited to 12, and various thinning rates such as 13 and 1Z4 can be adopted as long as the image quality permits.
  • the interpolation processing in the interpolation calculation means is performed every two or three dots, and so on.
  • the "dots on both sides of the dot to be processed" are the dots on the left and right of the leftmost dot among the multiple dots to be processed. This means the dot to the right of the dot you want to do.
  • as means for thinning out interpolation for example, linear interpolation or the like can be used.
  • the shape of the texture that is texture-mapped to the polygon according to the present invention is not limited to the same shape or similar shape as the polygon, and a texture having an arbitrary shape can be mapped.
  • a special image effect such as distorting the texture can be obtained by mapping a texture whose shape is completely different from the shape of the polygon.
  • the “scanning line” and the “CRT scanning line” in the arithmetic operation are not particularly distinguished from each other.
  • both scanning lines may be used. May be separate, for example, orthogonal.

Description

明 細 書
画像合成装置
[技術分野]
本発明は画像合成装置、 特に画像情報をリアルタイムで合成出力すること が可能な画像合成装置に関する。
[背景技術]
従来、 例えば 3次元ゲームあるいは飛行機及び各種乗物の操縦シュミ レー 夕等に使用される画像合成装置として種々のものが知られている。 このよう な画像合成装置では、 図 2 4に示す 3次元物体 3 0 0に関する画像情報が、 あらかじめ装置に記憶されている。 そして、 この画像情報をスクリーン 3 0 6上に透視変換することにより疑似 3次元画像 3 0 8をスクリーン 3 0 6上 に画像表示している。 プレーヤ 3 0 2力 操作パネル 3◦ 4により回転、 並 進等の操作を行うと、 装置は、 この操作信号に基づいて 3次元物体 3 0 0に 対する回転、 並進等の演算処理をリアルタイムに行う。 その後、 この回転等 の演算処理が施された 3次元画像を、 スクリーン 3 0 6上に透視変換して疑 似 3次元画像を表示する。 この結果、 プレーヤ 3 0 2は、 自身の镍作により 3次元物体 3 0 0をリアルタイムに回転、 並進等することが可能となり、 仮 想的な 3次元空間を疑似体験できることとなる。
図 2 5には、 このような画像合成装置の構成の一例が示される。 なお、 以 下の説明では、 画像合成装置を 3次元ゲームに適用した場合を例にとり説明 を進める。
図 2 5に示すように、 この画像合成装置は、 操作部 5 1 0、 ゲーム空間演 算部 5 0 0、 画像合成部 5 1 2、 C R T 5 1 8により構成される。
ゲーム空間演算部 5 0 0では、 操作部 5 1 0からの操作信号、 中央処理部 5 0 6に記憶されたゲームプログラムにしたがって、 ゲーム空間の設定が行 われる。 即ち、 3次元物体 3 0◦をどの位置に、 どの方向で配置するかの演 算が行われる。
画像合成部 5 1 2は、 画像供給部 5 1 4、 画像形成部 5 1 6を含んで構成 される。 そして、 画像合成部 5 1 2では、 ゲーム空間演算部 5 0 0によるゲ ーム空間の設定情報にしたがって疑似 3次元画像の画像合成が行われる。 さて、 本画像合成装置では、 ゲーム空間を構成する 3次元物体は、 3次元 のポリゴンに分割された多面体として表現されている。 例えば、 図 2 4にお いて 3次元物体 3 0 0は、 3次元のポリゴン(1) ~ (6) (ポリゴン(4) ~ (6 ) は図示せず) に分割された多面体として表現される。 そして、 この 3次元 のポリゴンの各頂点の座標及び付随データ等 (以下、 頂点画像情報と呼ぶ) が 3次元画像情報記憶部 5 5 2に記憶されている。
画像供給部 5 1 4では、 ゲーム空間演算部 5 0 0の設定情報にしたがって、 この頂点画像情報に対する回転、 並進等の各種の演算及び透視変換等の各種 の座標変換が行われる。 そして、 演算処理の終了した頂点画像情報は、 所定 の順序に並び換えられた後、 画像形成部 5 1 6に出力される。
画像形成部 5 1 6は、 ポリゴン発生回路 5 7 0とパレツ ト回路 5 8 0を含 んで構成され、 ポリゴン発生回路 5 7 0は、 輪郭点演算部 3 2 4、 ラインプ 口セッサ 3 2 6を含んで構成される。 画像形成部 5 1 6では、 ポリゴン内部 の全ドッ トを所定の色データ等で塗りつぶす演算処理が以下の手順で行われ る o
まず、 輪郭点演算部 3 2 4において、 図 2 6に示すように、 ポリゴンの輪 郭線 A B、 B C , C D、 D A等と走査線との交点である左右輪郭点が演算さ れる。 次に、 ラインプロセッサ 3 2 6により、 これらの左右輪郭点により囲 まれた部分、 例えば図 2 6における L Q間、 Q R間が指定された色データに 塗りつぶされる。 図 2 6においては、 L Q間は赤色及び Q R間は青色の色デ —夕に塗りつぶされる。 その後、 この塗りつぶされた色デ一夕はパレッ ト回 路 5 8 0において R G B変換され、 C R T 5 1 8より出力表示されることに なる。
さて、 このような従来の画像合成装置では、 以上述べたように一つのポリ ゴン上のドッ トは全て同一色にしか塗りつぶすことができなかった。 例えば- 図 2 6では、 ポリゴン(1) 上のドッ トは赤色のみ、 ポリゴン(2) 上のドッ 卜 は黄色のみ、 ポリゴン(3) 上のドッ トは青色のみにしか塗りつぶすことかで きなかった。 従って、 形成された画像は単調であり、 リアリティ感に欠ける ものであつた。
逆に、 このような単調さを避けるため、 複雑な表面を持つ物体を表示しよ うとすると、 ポリゴンの分割数を大幅に増加させる必要が生ずる。 例えば図 2 7に示すようなカラー情報のテクスチャが施された 3次元物体 3 3 2を、 従来の装置で画像合成する場合には、 ポリゴンを、 例えば (1)〜(80) ( (41) 〜(80)は図示せず) に分割して演算処理を行わなければならない。 即ち、 こ れらの全てのポリゴンに対して回転、 並進、 透視変換及び各ポリゴンの輪郭 線の演算、 ポリゴン内部の塗りつぶし等の演算処理を行わなければならなか つた。 従って、 図 2 4のようにテクスチャが施されていない 3次元物体 3 0 0を処理する場合に比べて、 1◦数倍もの数のポリゴンを処理する必要が生 じることとなる。 ところが、 本装置のようにリアルタイムで画像合成を行う 装置では、 例えば 1フィールド (1 / 6 0秒) 毎に全てのポリゴンに対する 処理を行い、 表示画面の描画を終了しなければならない。 従って、 このよう なカラ一情報のテクスチャが施された 3次元物体 3 3 2を描くためには、 装 置を構成するハードウヱァの処理スピードを大幅に向上させるか、 もしくは、 装置のハードウユアを大規模化して並列演算処理により処理せざるを得なか つた。 更に、 処理するポリゴン数が増加すれば、 これに伴って、 装置内部の 記憶装置、 データ処理装置も必然的に大型化する。 従って、 例えばビデオゲ ーム機など、 コスト上、 あるいは設置面積上、 制限のある画像合成装置では, このように繊細にテクスチャが施された高品質の疑似 3次元画像を描く こと は、 実質上不可能となっていた。
ところで、 コンピュータグラフィ ックス等の分野においては、 図 2 8に示 すテクスチャマッピングと呼ばれる手法が知られている。 つまり、 この手法 による画像合成装置では、 3次元物体 3 3 2の画像情報を、 多面体 3 3 4の 画像情報とテクスチャ 3 3 6 、 3 3 8のテクスチャ情報に分離して装置に記 憶する。 そして、 画像出力する際に、 多面体 3 3 4に、 このテクスチャ 3 3 6 、 3 3 8のテクスチャ情報をはり付けることによって画像合成を行ってい る (テクスチャマッ ピングを用いた画像合成の技術として、 例えば特開昭 6 3 - 8 0 3 7 5に開示された従来技術がある) 。
しかしながら、 高品質のテクスチャマツピング手法は、 グラフィ ックス · ワークステ一ションと呼ばれる画像処理専用コンピュータゃ、 フライ トシミ ユレ一夕等、 かなり大規模で高価な画像処理装置の分野において実現されて いる物である。 例えばビデオゲーム機など比較的廉価な画像合成装置の分野 においては、 ハー ドウェアの超高速化や大規模化が困難であるため、 テクス チヤマツビングを実現している物は極めて少ない。 実現しているわずかな例 を見ても、 表示可能な 3次元物体の数や大きさが限定されており、 かつ、 簡 単な近似手法による演算しか行えないために不正確なマツビングになってい た。 この結果、 画像のリアリティを著しく損ねていた。 また、 画面が更新さ れる頻度が毎秒数フレーム程度と低いため、 リアルタイム性も不十分であつ た。
さて、 ハー ドウユアの高速化、 小規模化を図るべく、 ハー ドウユアの演算 回数を減少させるには、 最も数の多いデータの演算、 即ち、 表示画面の各ド ッ トにおける表示座標、 テクスチャ情報、 輝度情報等の線形補間演算の回数 を少なくすればよい。 このためには、 これらのデータを間引きして演算し、 出力する際にこれを補間することが 1つの有効な手段となる。
しかし、 従来のビッ トマップ方式の画像合成装置では、 フィールドバッフ ァ部にはカラー情報自体が記憶されていた。 このようなカラ一情報自体がフ ィ一ルドバッファ部に記憶される構成により、 前記の間引き ·補間処理を行 おうとすると、 次のような問題が生じる。 即ち、 まず、 フィールドバッファ 部に記憶されるカラ一情報が、 カラ一コ ードつまり符号化されたカラ一情報 である場合は、 補間すること自体が不可能であり、 この場合は、 全く論外で ある。 次に、 記憶されるカラー情報が、 R G B出力等のカラー情報である場 合は、 合成された画像の質が極度に悪化するという事態が生じる。 即ち、 テ クスチヤ情報は表示したい画像に応じて任意に与えられるものである。 従つ て、 そのデータの並びには、 線形性はおろか、 何らの数学的規則性もない。 この結果、 このような情報を間引く ということは、 画像情報自体の欠落を意 味することになる。 そして、 この欠落した画像情報は補間によってこれを取 り戻すことは不可能である。 従って、 合成された画質は、 データの抜けを生 じるなど極度に悪化することになる。 この結果、 従来のビッ トマップ方式を 用いた画像合成装置では、 間引き ·補間手法によるハー ドウユアの小規模化、 処理の高速化を図ることは実質上不可能であつた。
本発明は、 以上のような従来の課題に鑑みなされたものであり、 その目的 とするところは、 特に間引き ·補間手法を用いることにより、 ハー ドウヱァ の高速化、 小規模化を図ることができる画像合成装置を提供することにある c
[発明の開示]
前記目的を達成するために本発明に係る画像合成装置は、 ポリゴンで構成 される 3次元画像を所定投影面上に透視変換して疑似 3次元画像を合成する 画像合成装置であって、
ポリゴンの各頂点に与えられた頂点画像情報より、 3次元画像を構成する ポリゴン内部の各ドッ 卜の座標及びこの各ドッ 卜の座標に対応すべきテクス チャ座標を求めるプロセッサ部と、
前記各ドッ 卜の座標により指定されるァドレス位置に、 前記プロセッサ部 により求められた前記テクスチャ座標を記憶するフィールドバッファ部と、 前記テクスチャ座標により指定されるァ ドレス位置に所定のレンダリ ング 情報を記憶するレンダリ ング情報記憶部と、
前記フィ 一ルドバッファ部から前記テクスチャ座標を読み出し、 このテク スチヤ座標に基づいて前記レンダリ ング情報記憶部からレンダリ ング情報を 読み出して画像情報を形成する画像情報形成部とを含み、
前記プロセッサ部は、 前記各ドッ トの座標及びこれに対応するテクスチャ 座標を間引いて演算する間引き演算部を有し、
前記画像情報形成部は、 間引かれたドッ 卜の両隣のドッ トの前記フィール ドバッファ部に記憶されたテクスチャ座標に基づいて、 間引かれたドッ トの テクスチャ座標を補間処理する補間演算部を有することを特徴とする。
本発明によれば、 フィールドバッファ部にはカラー情報ではなくテクスチ ャ座標が記憶される。 そして、 フィールドバッファ部からこのテクスチャ座 標を読み出し、 この読み出されたテクスチャ座標によりレンダリ ング情報記 憶部 (テクスチャ情報記憶部) に記憶されているレンダリ ング情報 (テクス チヤ情報) を読み出し、 画像情報を形成している。 従って、 ハ一 ドウ アの 小規模化、 処理の高速化を図れる間引き ·補間処理を画像の質をそれほど劣 化させることなく実現できる。 即ち、 プロセッサ部において間引き処理を行 い、 フィールドバッファ部に間引いたテクスチャ座標を記憶させる。 そして、 フィ一ルドバッファ部から読み出す際にこれを補間処理すれば、 画像の質を それほど劣化することなく、 ハー ドウユアの負担を軽減できる演算手法を実 現できることになる。
この場合、 前記プロセッサ部は、 ポリゴンの各頂点に与えられた頂点画像 情報より、 前記各ドッ トの座標に対応する輝度情報を更に求め、
前記フィールドバッファ部には、 前記各ドッ トの座標により指定されるァ ドレス位置に、 前記プロセッサ部により求められた前記輝度情報が更に記憶 され、
前記補間演算部が、 間引かれたドッ 卜の両隣のドッ 卜の前記フィールドバ ッファ部に記憶された輝度情報に基づいて、 間引かれたドッ 卜の輝度情報に ついても補間処理を行ってもよい。
このように構成することで、 輝度情報についてもレンダリ ングを行うこと ができ、 グ一ローシュ一ディ ング等の手法を用いた画像合成が可能となる。 そして、 この場合にも、 輝度情報について間引き ♦補間処理を行うことがで きるため、 ハ一 ドウユアの小規模化、 処理の高速化を図りながら、 高品質の 画像の合成が可能となる。 また、 前記レンダリ ング情報記憶部に代えて、 前記テクスチャ座標に対し て所定の関数演算処理を施すことでレンダリ ング情報を求める関数演算部を 含み、
前記画像情報形成部は、 前記フィールドバッファ部から前記テクスチャ座 標を読み出し、 このテクスチャ座標に基づいて前記関数演算部によりレンダ リ ング情報を求め画像情報を形成してもよい。
このように構成することで、 テクスチャ座標に基づいて関数演算部により 所望のレンダリ ング情報を形成することにより、 テクスチャマツビングを用 いた高品質な画像合成が可能となる。 また、 例えばバンプマッピングと呼ば れるテクスチャマツピングを比較的小規模の回路構成により行うこともでき る。 特に、 乱数発生器等を用いることにより従来にない映像効果を作り出す こともできる。
また、 前記レンダリ ング情報記憶部に記憶されるレンダリ ング情報のうち 少なく とも一種類がカラ一情報であり、 このカラー情報を前記テクスチャ座 標により読み出して画像情報の形成を行うことが望ましい。
また、 前記レンダリング情報記憶部に記憶されるレンダリ ング情報のうち 少なく とも一種類が表面形状情報であり、 この表面形状情報を前記テクスチ ャ座標により読み出して画像情報の形成を行ってもよい。 - このようにテクスチャマツビングを行うレンダリング情報としてはカラー 情報、 表面形状情報を用いることができ、 また、 輝度情報、 透明度情報、 拡 散反射率情報等も用いることができる。 例えば表面形状情報として法線べク トル、 法線べク トルの偏位 (摂動成分) 、 物体表面に形成される起伏の高さ を用いれば、 バンプマッビングによるテクスチャマツビングを行うこともで さる。
また、 前記補間演算部は、 間引かれたドッ 卜の両隣のドッ 卜のテクスチャ 座標を線形補間することにより前記補間処理を行うことが望ましい。
このように補間処理を線形補間により行うことで、 より簡易な構成で補間 演算部を形成することが可能となる。 また、 前記間引き演算部は、 ポリゴンの輪郭線上のドッ ト又は他のポリゴ ンとの境界線上のドッ 卜については間引き処理を行わないことが望ましい。 これにより、 間引き ·補間処理を行った場合に、 ポリゴンの輪郭及び他の ポリゴンとの境界がぼやけることを効果的に防止することができる。
また、 前記フィールドバッファ部には、 ポリゴンの画像が描かれないドッ トは空き ドッ トとして書き込まれ、 また、 ポリゴンを識別するためのポリゴ ン識別番号が更に書き込まれ、
前記補間演算部は、 処理の対象となる ドッ 卜が空き ドッ トであり、 そのド ッ 卜の両隣のドッ 卜のポリゴン識別番号が同一であり且つそのドッ 卜の両隣 のドッ トのいずれも空き ドッ トではないドッ 卜について前記補間処理を行う ことが望ましい。
このように構成することで、 空き ドッ ト及びポリゴン識別番号を用いた補 間処理が可能となる。 即ち、 補間演算部は、 処理の対象となる ドッ 卜が空き ドッ トか否か、 そのドッ 卜の両隣のドッ トのポリゴン識别番号が同一か否か、 両隣のドッ 卜が空き ドッ 卜か否かを判断するだけで、 補間処理を行うべき ド ッ トか否かを判断できることになる。 この結果、 非常に簡易な構成で補間演 算部を形成することができ、 ハー ドウユアの小規模化、 処理の簡易化、 処理 の高速化を図ることができる。 - また、 前記間引き演算部、 補間演算部における間引き処理、 補間処理が画 面上で連続した複数ドッ ト毎に行ってもよい。
このように間引き率を高めることにより、 更にハードウエアの小規模化、 処理の高速化を図ることが可能となる。
また、 3次元画像を構成する各ポリゴンに共通の画像情報であるァトリ ビ ユー トデ一夕を記憶するァトリ ビュートデータ記憶部を更に含み、
前記フィールドバッファから読み出された前記ポリゴン識別番号に基づい て前記ァ トリ ビュー トデ一夕記憶部からァトリ ビュートデ一夕を読み出して 画像情報の形成を行ってもよい。
このようにポリゴンに共通の画像情報であるァトリ ビュ一 トデータをァト リビュートデ一夕記憶部に記憶させる。 そして、 このアトリビュートデータ を、 フィ一ルドバッファ部に書き込まれたポリゴン識別番号により読み出す ことにより、 更に高品質な画像合成を、 より簡易な回路構成で実現できる。 例えば、 バンプマッピングを法線ベク トルの偏位により行う場合に、 もとの 法線べク トルを、 このアトリビュートデータにより指定することもできる。
[図面の簡単な説明]
第 1図は、 本発明にかかる画像合成装置の一例について示すプロック図で あ o
第 2図は輝度の連続性の問題について示す概略説明図である。
第 3図は、 本発明にかかる画像装置における画像処理演算の概要を示すフ 口チャー ト図である。
第 4図は、 本発明にかかる画像装置における画像処理演算の概要を視覚的 に示した概略説明図である。
第 5図は本発明にかかる画像合成装置により合成された疑似 3次元画像の —例である。
第 6図は、 本発明の実施例の具体的な構成を示すプロック図である。 第 7図は、 フィ一ルドバッファ部の周辺回路及び周辺回路との接続につい て示すブロック図である。
第 8図は、 フィ 一ルドバッファコン トローラの内部回路を示すブロック図 である。
第 9図は、 ブイ ールドバッファ部に対する書き込みシーケンスを示すタイ ミ ングチヤ一ト図である。
第 1 0図は、 テクスチャ記憶平面の構造について説明するための概略説明 図である。
第 1 1図は、 テクスチャ情報記憶部におけるデータの流れを示す概略説明 図である。
第 1 2図は、 フィールドバッファ部へのデータ書き込み後、 画像出力する までのデータの流れを説明するためのプロック図である。
第 1 3図は、 間引き ·補間処理を行わない場合の画像合成装置の一例を示 すブロック図である。
第 1 4図は、 間引きされたフィールドバッファ上のデータの一例を示す概 略説明図である。
第 1 5図は、 補間処理手法の一例について示す説明するための概略説明図 め o
第 1 6図は、 間引き ·補間処理を行った場合の本実施例の具体的な回路構 成を示すプロック図である。
第 1 7図は、 ブイールドバッフアコントローラと補間回路の具体的な接続 関係を示すプロック図である。
第 1 8図は、 補間回路の内部回路について示すプロック図である。
第 1 9図は、 補間回路の動作を説明するためのタイミ ングチヤ一ト図であ る 0
第 2 0図はバンプマッビングについて示す概略説明図である。
第 2 1図は、 摂動バンプマッ ピングの概念を説明するための概略説明図で ある C)
第 2 2図 (A ) 〜 (C ) は、 テクスチャ情報記憶部を論理演算回路で構成 した場合について説明するための概略説明図である。
第 2 3図 (A ) 、 ( B ) は、 論理演算回路を乱数器を用いて形成した場合 の概略説明図である。
第 2 4図は、 従来の画像処理装置の概念について説明するための概略説明 図である。
第 2 5図は、 従来の画像処理装置の一例を示すプロック図である。
第 2 6図は、 スクリーン上に投影された疑似 3次元画像について説明する ための概略説明図である。
第 2 7図は、 テクスチャがマツビングされた 3次元物体を画像合成する画 像装置について説明するための概略説明図である。 第 2 8図は、 テクスチャマツビングの概念について説明するための概略説 明図である。
[発明を実施するための最良の形態]
( 1 ) 装置全体の説明
実施例の画像合成装置は、 図 1に示すように、 操作部 1 2、 ゲーム空間演 算部 1 3、 画像合成部 1、 C R T 4 6を含んで構成される。 また、 画像合成 部 1は、 画像供給部 1 0、 画像形成部 2 8を含んで構成される。 なお、 以下 の説明では、 本画像合成装置を 3次元ゲームに適用した場合を例にとり説明 する。
.ゲーム空間演算部 1 3では、 中央処理部 1 4内に格納されたゲームプログ ラムと、 操作部 1 2からの操作信号とによりゲーム空間の設定が行われる。 具体的には、 ゲーム空間を構成する 3次元ォブジュク 卜 (例えば、 敵飛行機、 山、 ビル等) の位置 ·方向情報、 プレーヤの位置 ·視野方向情報等により構 成されるゲーム空間設定情報が演算され、 画像合成部 1内の画像供給部 1 0 へと出力される。
画像供給部 1 0では、 前記のゲーム空間設定情報にしたがって、 所定の演 算処理が行われる。 具体的には、 絶対座標系から視点座標系への座標変換、 クリッビング処理、 透視変換、 ソ一ティ ング処理等の演算処理が行われ、 画 像形成部 2 8へとデ一夕が出力される。 なお、 この場合、 出力されるデ一夕 はポリゴン毎に分割されたデータとして表現されており、 具体的にはポリゴ ンの各頂点の位置座標、 テクスチャ座標、 その他の付随情報等の頂点画像情 報から構成されている。
画像形成部 2 8は、 このポリゴンの各頂点ごとに与えられた頂点画像情報 に基づいてポリゴン内部の画像情報を演算して、 これを C R T 4 6に出力す るものである。
さて、 本実施例の画像合成装置では、 より高品質の画像をより効率よく画 像合成すベく、 テクスチャマツピング手法及びグーローシュ一ディ ング手法 と呼ぶ手法により画像合成を行っている。 以下、 これらの手法の概念につい て簡単に説明する。
図 27には、 テクスチャマツビング手法の概念について示される。
図 27に示すような 3次元オブジェク ト 332の各面に例えば格子状、 縞 状の模様等が施されたものを画像合成する場合には、 従来は、 3次元ォブジ ェク トを、 3次元ポリゴン(1〉 〜(80) (3次元ポリゴン(41)〜(80)について は図示せず) に分割し、 これらの全てのポリゴンに対して画像処理を行って いた。 その理由は、 従来の画像合成装置では、 1つのポリゴン内の色の塗り つぶしは、 指定された一つの色でしか行えなかったためである。 この結果、 複雑な模様等が施された高品質な画像を合成する場合には、 ポリゴン数が非 常に増加してしまうため、 実質的に、 このような高品質の画像を合成するこ とは不可能であった。
そこで、 本画像合成装置では、 3次元ォブジヱク ト 332の回転、 並進、 透視変換等の座標変換及びクリッビング等の処理を、 各面を構成する 3次元 ポリゴン A、 B、 Cごとに行い (具体的には各 3次元ポリゴンの頂点ごと) 、 格子状、 縞状の模様については、 テクスチャとして取り扱い、 ポリゴンの処 理と分割して処理を行っている。 即ち、 図 1に示すように画像形成部 28内 にはテクスチャ情報記憶部 (レンダリ ング情報記憶部) 42が設けられ、 こ の中には各 3次元ポリゴンにはり付けるべきテクスチャ情報 (レンダリング 情報) 、 つまり格子状、 縞状の模様等の画像情報が記憶されている。
そして、 このテクスチャ情報を指定するテクスチャ情報記憶部 42のァド レスを、 各 3次元ポリゴンの各頂点のテクスチャ座標 VTX、 VTY として 与えておく。 具体的には、 図 27に示すように、 ポリゴン Aの各頂点に対し ては、 (VTX0、 VTY0) 、 (VTX1、 V TY1) 、 (VTX2、 V TY2) 、 (VTX3、 VTY3) のテクスチャ座標が設定される。
画像形成部 28では、 この各頂点のテクスチャ座標 VTX、 VTY から、 ポリゴン内の全てのドッ トについてのテクスチャ座標 TX、 TY が求められ る。 そして、 求められたテクスチャ座標 TX、 TY により、 テクスチャ情報 記憶部 2 2から対応するテクスチャ情報が読み出され、 図 2 7に示すような、 格子状、 縞状等のテクスチャが施された 3次元ォブジュク トを画像合成する ことが可能となる。
以上の手法によれば、 データの処理量を大幅に減らすことができる。 この 結果、 リアルタイムに高品質な画像処理を行う画像合成装置に最適な構成と る。
また、 本画像合成装置では前記したように図 2 7の 3次元ォブジェク ト 3 3 2を 3次元ポリ ゴンの固まりとして表現している。 従って、 各 3次元ポリ ゴンの境界における輝度情報の連続性が問題となる。 例えば複数の 3次元ポ リゴンを用いて球を表現しょうとする場合、 3次元ポリゴン内の全ドッ 卜が 全て同じ輝度に設定されると、 実際は 「丸み」 を表現したいのに、 各 3次元 ポリ ゴンの境界が 「丸み」 として表現されない事態が生じる。 そこで、 本画 像合成装置では、 グーローシヱ一ディ ングと呼ばれる手法によりこれを回避 している。 この手法では、 前記したテクスチャマッ ピング手法と同様に、 3 次元ポリゴンの各頂点に図 2 7に示すように各頂点の輝度情報 V B R I 0 ~ V B R I 3 を与えておき、 画像形成部 2 8で最終的に画像表示する際に、 こ の各頂点の輝度情報 V B R I 0 〜V B R I 3 より 3次元ポリゴン内の全ての ドッ 卜についての輝度情報を補間により求めている。 この手法に-より、 図 2 に示すように、 ポリゴンの多面体で表現された 3次元ォブジュク ト Kを、 境 界における 「丸み」 が表現された 3次元ォブジェク 卜 Lとして画像合成する ことができる。
以上の手法によれば、 前記した 「丸み」 の問題を解決できると同時に、 画 像合成装置内で必要とされる演算処理量を減らすことができる。 従って、 リ アルタイムに高品質な画像処理を行う画像合成装置に最適な構成となる。
( 2 ) 画像供給部
画像供給部 1 0では、 以下の処理が行われる。 即ち、 まず処理部 1 5は、 ゲーム空間に配置すべき 3次元ォブジ ク 卜の画像情報を 3次元画像情報記 憶部 1 6より読み出す。 次に、 処理部 1 5は、 この 3次元オブジェク トの画 像情報に位置♦方向情報を含ませて座標変換部 1 8に出力する。 その後、 座 標変換部 1 8において絶対座標系から視点座標系へと座標変換が行われる。 次にクリ ッピング処理部 1 9、 透視変換部 2 0、 ソーティ ング処理部 2 2に おいて、 それぞれクリ ッビング処理、 透視変換、 ソ一ティ ング処理が行われ る。 そして、 処理が終了したポリゴンの頂点画像情報は、 画像形成部 2 8へ と出力される。
さて、 ソーティ ング処理部 2 2では、 ポリゴンの頂点画像情報の出力順序 を、 所定の優先順位にしたがって並び換える演算処理が行われている。 具体 的には、 ソ一ティ ング処理部 2 2では、 表示画面に対してより手前にあるポ リゴンの頂点画像情報から順に出力されることになる。 従って、 画像形成部
2 8での演算処理は、 より手煎にあるポリゴンから順に行われることとなる c ( 3 ) 画像形成部
画像形成部 2 8は、 ソ一ティ ング処理部 2 2から所定の順序にしたがって 入力されたポリゴンの頂点画像情報から、 3次元ポリゴン内部の全ドッ 卜の 画像情報を演算する機能を有する。 以下、 画像形成部 2 8の動作の概略につ いて説明する。 - まず、 ソーティ ング処理部 2 2から、 ポリゴンの頂点両像情報、 即ち、 ポ リゴンの各項点の表示座標、 テクスチャ座標、 輝度情報等がプロセッサ部 3 0に順次入力される。 また、 ポリゴン内の全てのデ一夕に 通のデ一夕は、 ァ トリ ビュートデータとしてァトリ ビュート R A M部 3 8に入力される。 プロセッサ部 3 0では、 この各頂点の表示座標、 テクスチャ座標、 輝度情 報等から、 ポリゴン内の全てのドッ 卜の表示座標、 テクスチャ座標 T X、 T Y 、 輝度情報 B R Iが求められる。 そして、 この求められたテクスチャ座標 T X、 T Y 、 輝度情報 B R Iは前記した表示座標をァドレスとしてフィール ドバッファ部 4 0に書き込まれる。
なお、 メインプロセッサ 3 2には、 処理ドッ ト指示部 3 7及び終了フラッ グ記憶部 3 6が接続されている。 この処理ドッ ト指示部 3 7及び終了フラッ グ記憶部 3 6は、 既に演算処理が終了して塗りつぶしてしまったドッ トの演 算処理を省略するために用いられるものである。 これにより、 その後の演算 処理の負担を非常に軽減することが可能となる。
画像表示する際には、 このフィル一 ドバッファ部 4 0からテクスチャ座標 T X 、 T Y が読み出され、 これをア ドレスとしてテクスチャ記憶部 4 2から テクスチャ情報が読み出される。 そして、 この情報とアトリ ビュート R A M 部 3 8からのァトリ ビュートデータとから、 パレツ ト&ミキサ回路 4 4にて R G Bデータが形成され、 C R T 4 6を介して画像出力されることになる。 図 3には、 本実施例の画像合成装置の動作を示すフローチヤ一卜が示され る。 また、 図 4 ( A ) 〜 (K ) には、 このフローチャー トのフロー 1 1 0 0, 1 2 0 0及び 1 3 0 0で実行される演算手法が視覚的に示されている。
実施例の画像合成装置では、 画像供給部 1 0及びソ一ティ ング処理部 2 2 において、 図 3に示すフロー 1 0 0◦に示す動作が実行される。 そして、 ソ 一ティ ング処理部 2 2からは、 各ポリゴン毎にポリゴンデータが出力される c このとき、 各ポリゴンには予め優先順位が与えられており、 ソーティ ング処 理部 2 2からは、 優先順位にしたがって、 各ポリゴンのデータが出力される c このとき出力される各ポリゴンのポリゴンデータは、 各ポリゴンの各頂点の 透視変換表示座標、 各頂点のテクスチャ座標を含む。
このときソ一ティ ング処理部 2 2から出力される各ポリゴンの各頂点の透 視変換表示座標 V X * , V Y * はメインプロセッサ 3 2へ入力され、 ここで プロ一 1 1 0 0に従った演算が実行される。 即ち、 左右輪郭点が演算され、 左右輪郭点に囲まれた走査線上における各ドッ 卜の透視変換表示座標 X * 、 が演算され、 ポリゴンを構成する全てのドッ 卜についての演算が終了す るまで上記演算が繰り返される。 そして、 このようにして演算された各ドッ 卜の透視変換表示座標 X * , Y * は、 フィールドバッファ部 4 0への書き込 みア ドレスとして出力される。 そして、 この書き込みア ドレスで指定された フィールドバッファ部 4 0内には、 ポリゴン識別番号 P N力 そのデータの 1 つとして書き込まれる。
また、 このフロー 1 10◦に示す動作と並行して、 コプロセッサ 34によ り、 フロー 1200, 1 300に示す動作が実行される。
すなわち、 ソ一ティ ング処理部 22からポリゴンの各頂点のテクスチヤ座 標 VTX , VTY と、 各頂点の透視変換表示座標 VZ と後述する各頂点の 輝度情報とが入力される。
そして、 コプロセッサ 34では、 フロー 1200に従って、 各頂点のテク スチヤ座標 VTX、 VTY から各頂点の透視変換テクスチャ座標 VTX * , VTY が求められる。 次に、 この VTX , VTY * から左右輪郭点が演 算され、 この左右輪郭点に挾まれる走査線上の各ドッ ト毎の透視変換テクス チヤ座標 ΤΧ τ , ΤΥ * が演算され、 ポリゴンを構成する全てのドッ トにつ いての演算が終了するまで上記演算が繰り返される。
このような演算と並行して、 コプロセッサ 34では、 フロー 1300の演 算動作が行われ、 ポリゴンの透視変換表示座標 の演算が対応する各ドッ ト毎に fわれる。
そして、 フロー 1200のステップ 34において、 各ドッ ト毎に求めた透 視変換テクスチャ座標 ΤΧ τ , TY * を、 透視変換表示座標 を用い、 逆 透視変換し、 テクスチャ座標 TX , TY として出力する。 この様に出力され たテクスチャ座標 ΤΧ , TY は、 前記フロー 1 100のステップ 23で出力 されるフィ一ルドバップア部 40の書き込みァドレス位置へ書き込まれるこ とになる。
このようにして、 フィールドバッファ部 40には、 フロー 1 100で指定 されたァドレス位置、 すなわちポリゴンを構成する各ドッ トのァドレス位置 に、 当該アドレスに対応したテクスチャ座標 TX , TY とポリゴン識別番号 P Nが書き込まれることになる。
また、 このような書き込み動作と並行して、 フロー 1 500の動作に従い、 アトリ ビュート R A M部 38にはソ一ティ ング処理部 22から出力される各 ポリゴンのア トリ ビュートデータが順次記憶される。 このような一連の動作を、 ソーティ ング処理部 22から各ポリゴンのポリ ゴンデータが出力される毎に繰り返して行い、 フィールドバッファ部 40及 びァトリ ビュー ト RAM部 38へのデータの書き込みが繰り返して行われる。 このようにして、 一画面分のデータの書き込みが終了すると、 次にフィー ルドバッファ部 40, ァトリ ビュー ト RAM部 38からのデータの読み出し が開始される。 但し、 本実施例においては、 フィールドバッファ部 40及び ァトリ ビュー ト RAM部 38における画像情報の記憶空間は、 2画面分を記 憶できるように構成されている。 従って、 実際には、 この書き込みと読み出 しは同時に行われており、 これにより、 演算処理時間の効率化が図られてい る
まず、 フィールドバッファ部 40からは、 例えばディ スプレイの水平走査 に同期して、 各ドッ ト毎に書き込まれたテクスチャ座標 TX , TY が読出し ア ドレスとしてテクスチャ情報記憶部 42へ向け出力される。 そして、 これ と共に、 ポリゴン識別番号 P Nが読出しアドレスとして、 ア トリ ビュー ト R AM部 38へ向け出力される。
これにより、 テクスチャ情報記憶部 42からは、 当該アドレスに指定され ていカラ一コー ドカ《パレツ ト&ミキサ回路 44へ向け出力され、 さらにァト リ ビュー ト RAM部 38からは、 ポリゴン識別番号 P Nに対応したァ トリ ビ ュ一トデ一夕力パレツ ト&ミキサ回路 44に向け出力される。 これにより、 ノ、'レツ ト&ミキサ回路 44では、 カラー情報、 例えば RG B出力が C RT4 6へ出力され、 所望の疑似 3次元画像が合成表示されることになる。
図 4には、 画像形成部 28において行われる演算処理の概要が視覚的に示 されている。 既に述べたように、 画像形成部 28では、 ポリゴンの頂点画像 情報に基づいて、 ポリゴン内の全ての画像情報を形成する演算処理が行われ る。 この場合、 ポリゴンにはり付けるべきテクスチャ情報は、 テクスチャ情 報記憶部 42に記憶されており、 このテクスチャ情報を読み出すために、 テ クスチヤ座標 TX 、 TY が必要となる。 そして、 図 4 (F) 、 (G) 、 (H) 、 ( I ) には、 ポリゴン内の全ての透視変換テクスチャ座標 TX 、 TY * を求める演算処理の様子が視覚的に示されている。 この演算処理はコプロセ ッサ 34において行われる。 また、 図 4 (B) 、 (C) 、 (D) . (E) に は、 テクスチャ情報を表示すべき座標である透視変換表示座標 X 、 Y を 求める演算処理の様子が視覚的に示されている。 この演算処理は、 メインプ 口セッサ 32において行われる。 そして、 図 4 ( J ) に示すように、 演算さ れれた透視変換テクスチャ座標 TX *、 TY *はテクスチャ座標 TX、 TY に逆透視変換され、 この逆透視変換されたテクスチャ座標 TX、 TY により、 テクスチャ情報記憶部 42からテクスチャ情報が読み出される。 最後に、 図 4 (K) に示すように、 演算された X 、 Y *の座標位置に、 読み出された テクスチャ情報を対応づけることで、 画像合成が行われることになる。 以下 に、 図 4 (A) 〜 (K) のそれぞれのステップで行われる演算処理の概要に ついて説明する。
図 4 (A) において、 多面体 48の頂点例えば A、 B、 C、 Dに対して、 テクスチャ座標 VTa、 VTb、 VTc、 V Td が対応づけられている。 こ の頂点テクスチャ座標 VTa〜VTd は、 項点 A~Dにより形成されるポリ ゴンにはり付けるテクスチャ情報のァ ドレスを指定するものである。 即ち、 具体的にいえば、 テクスチャ情報記憶部 42内の記憶手段に記憶されている テクスチャ情報を読み出すためのァ ドレスを指定するテクスチャ-座標である。 図 4 (B) 、 (F) において、 この各頂点の表示座標 A〜D、 テクスチャ 座標 VTa〜VTd は、 各頂点の透視変換座標 A*〜0^ 、 透視変換テクス チヤ座標 VTa *〜VTd * に透視変換される。 これにより、 XY座標系の みならず、 Tx、 TY座標系も透視変換されることとなり、 各座標系間の線 形性が保たれることとなる。
次に、 図 4 (C) 、 (G) に示すように、 各頂点の透視変換座標 A* ~D * 、 及び、 透視変換テクスチャ座標 VTa * ~VTd * により形成されるポ リゴンの輪郭点が線形補間演算される。 即ち、 図 4 (D) 、 (H) における 左右輪郭点座標 、 R* 、 及び、 左右輪郭点テクスチャ座標 T1 *、 Tr * の線形補間演算が行われる。 次に、 図 4 (D) 、 (H) に示すように、 前記左右輪郭点座標 、 R* - 及び、 左右輪郭点テクスチャ座標 T1 、 Tr τ により、 これらの左右輪郭 点を結ぶ走査線上の各ドッ 卜の座標が線形補間演算される。
上記した、 図 4 (C) 、 (G) 及び (D) 、 (H) の演算処理は順次繰り 返され、 最終的には、 図 4 (E) 、 ( I ) に示すように、 ポリゴンを構成す る全てのドッ トの透視変換表示座標 X 、 Y*及び透視変換テクスチャ座標
Τχ * , TY * の線形補間演算が行われる。
次に、 図 4 ( J ) に示すように、 透視変換テクスチャ座標 TX * , TY * を、 テクスチャ座標 TX 、 TY に逆透視変換し、 このテクスチャ座標 TX 、
TY を用いて、 前記したテクスチャ情報記憶部 42からカラーコー ドが読み 出される。
以上のようにして、 読み出されたカラ一コー ドを、 透視変換表示座標 X* 、 Y* に対応させる。 これにより、 図 4 (K) に示すように、 スクリーン上に 画像が合成され、 遠近感、 直線性が損なわれないテクスチャマッピングが可 能となる。
図 5には、 このようにして合成された疑似 3次元画像の一例が示される。 図 5に示すように例えば家 594、 遠くに見える道 592、 煉瓦道 597等 において所望のテクスチャマッピングが行われている。 これにより、 ポリゴ ンの表面を単一色で塗りつぶす場合に比べて、 非常にリァリティ溢れる画像 表示が可能となっている。 また、 図 5に示すように煉瓦道 597において、 はり付けられたテクスチャの遠近感、 直線性が損なわれていない。 このよう に本実施例の画像合成装置によれば、 非常に高品質でリ了リティ溢れる疑似 3次元画像の合成が可能となる。
なお、 図 4には、 透視変換表示座標 Z *及び輝度情報 BR Iの演算方法に ついては示されていないが、 両者の演算は、 図 4における TX 、 TY の演算 方法とほぼ同様な演算方法により行われる。 このように、 輝度情報の補間演 算についても、 TX 、 TY と同様の方法により行うことにより、 前述したよ うに、 これらの座標系間の関係を線形に保つことができ、 より リアリティ溢
― 1 q ― れる画像を合成することが可能となる。
(4) フィールドバッファ部
図 6には、 ソ一ティ ング処理部 22、 プロセッサ部 30、 ァ トリ ビュー ト RAM部 38、 フィールドバッファ部 40、 テクスチャ情報記憶部 42を含 んで構成される本実施例の具体的な構成が示される。
なお、 図 6及び後に説明する図 7、 図 12においては、 説明を簡単にする ために補間回路 180〜186を省略している。
フィ一ルドバッファ部 4〇は、 図 6に示すように、 ビデオ RAM 10〇、 102、 104、 106と、 これらのビデオ RAMをコントロールするフィ —ルドバッファコン トローラ 90、 92、 94、 96を含む。
この、 ビデオ RAMI 00-106により構成されるフィ一ルドバッファ 空間には、 C RTの表示スクリーンの各ドッ 卜に 1対 1に対応するデータが 格納される。 本実施例において、 このフィールドバッファ空間に格納される データは、 コプロセッサ 34で演算されたテクスチャ座標 TX、 TY 、 輝度 情報 BR I及びポリゴン識別番号 PNであり、 書き込むべきァ ドレスは、 メ ィンプロセッサ 32で演算された表示座標 X*、 Y* により決定される。 なお、 ビデオ RAMは、 マルチポー ト RAM構成となってお 、 ランダム ポー ト (RAM) 、 シリアルポート (SAM) に分かれている。 本実施例で は、 フィールドバッファ空間へのデータの書き込みは、 ランダムアクセスに より行われ、 読み出しはドッ トクロックに同期してシリアルに行われる。 ま た、 フィールドバッファ空間は、 書き込み用のバンク及び読みだし用のバン クの 2つのバンクに分割され、 1フィールド (1 60秒) 毎に、 バンクの 切り替えを行っている。
図 7には、 このフィ一ルドバッファ部 40の周辺回路及び周辺回路との接 続の詳細が示され、 図 8には、 フィールドバッファ部 40を構成するフィー ルドバッファコン トローラ 9 C!〜 96の内部回路の一例が示される。 また、 図 9には、 フィールドバッファ部 40に対する、 データの書き込みシーゲン スが示される。
図 7に示されるようにフィールドバッファ部 40には、 以下の信号が入力 される。 即ち、 制御回路 70からは、 透視変換表示座標 X 、 Y* がァ ドレ ス A I C!〜 9として、 また、 X P F I R、 X VW、 XHWがフィ一ルドバッ ファコン トローラ 90〜96の制御信号として入力される。 また、 除算器 8 2〜86からは、 テクスチャ座標 TX 、 TY 及び B R Iが、 フィ一ルドバッ ファコン トローラ 92~96のそれぞれの入力データ D I 0〜 1 1として、 入力される。 この他、 フィールドバッファ部 40には、 プログラムレジスタ のプログラム信号、 クロック、 同期信号等が入力される。
また、 図 7に示されるように、 フィールドバッファ部 40からは、 以下の 信号が出力される。 即ち、 制御回路 70等で構成されるプロセッサ部 30に 対しては、 データ書き込みの禁止を指令する XWA I T信号が出力される。 また、 テクスチャ情報記憶部 42には、 読み込みデータであるテクスチャ座 標 TX 、 TY が出力される。 また、 ァトリ ビュー ト RAM部 38には、 ポリ ゴン識別番号 P Nが、 パレッ ト &ミキサ回路 44には、 輝度情報 BR Iが出 力される。
フィ ールドバッファコン トローラ 9◦ ~ 96の内部回路は、 図 8に示す構 成となっている。 - ここで、 本実施例におけるフィールドバッファコントローラは、 マスタ一 モー ド、 スレーブモー ド、 拡張モー ドの 3つのモー ドを備えており、 本実施 例では、 ポリゴン識別番号 P Nを取り扱うフィールドバッファコントローラ 9〇をマスターモー ドにて、 テクスチャ座標 TX 、 TY を取り扱うフィール ドノくッファコン トローラ 92〜94をスレーブモー ドにて、 輝度情報 B R I を取り扱うフィールドバッファコントローラ 96を拡張モー ドとして使用し ている。 これにより、 スレーブ♦拡張モー ドで使用されるフィ一ルドバッフ ァコン トローラ 92〜 96は、 マスターモー ドで使用されるフィールドバッ ファコン トローラ 90の支配の下に同期して制御され、 大きなフィールドバ ッファ空間を同じ回路構成のフィ一ルドバッファコントローラ 90〜 96に より同時に制御することが可能となる。 この場合、 図 8に示すように、 マス 夕一、 スレーブ、 拡張の切り替えは、 XMA S T E R信号を用いてセレクタ 1 16により行われる。 即ち、 マスターモー ドの時は、 PNカウンタ 1 18 により発生されるポリゴン識別番号 PNが、 セレクタ 1 16によりセレク ト され、 データ Q u e u e l 24に入力される。 逆に、 スレープ ·拡張モー ド の時は、 D I C!〜 1 1がセレク トされ、 データ Q u e u e l 24に入力され る o
フィールドバッファコン 卜ローラ 90〜96に入力されたク口ック信号及 び外部同期信号は、 内部クロック &同期信号発生回路 134に入力され、 こ の回路において内部ク口ック及び一群の同期信号が発生され、 フィ一ルドバ ッファコントローラ 90〜96内の制御信号として用いられる。 また、 プロ グラム信号は、 プログラマブルレジス夕 132に入力され、 これにより、 コ ン卜ローラ内の内部パラメータ郡が決定される。
ァ ドレス信号 A I 0〜9、 入力データ D I 0〜: L 1、 制御信号 XP F I R、 XVW、 XHWは、 ラッチ 1 10、 1 12、 1 14により一時ラツチされる c
X P F I Rは、 PNカウンタ 1 18をカウントアップするために用いられ、 この PNカウンタ 1 18のカウン トアツプ値により、 ポリゴンの識別番号 P Nが決定される。 即ち、 X P F I Rは、 図 9に示すように、 新たなポリゴン の処理を開始する毎に XP F I R- Lとなるように、 メインプロセッサ 32 の制御回路 70より出力され、 XP F I R = Lとなると PNカウンタ 1 18 がカウントアップする。 そして、 次のフィールドの処理が開始される前に、 PNカウンタ 1 18はリセッ トされる。 これにより、 ポリゴンの優先順位が 高い順に、 0、 1、 2、 3、 4……というようにポリゴン識別番号 PNが、 各ポリゴンに設定されることになる。
このように本実施例においては、 外部からポリゴン識别番号 PNを入力し なくても、 内部において、 即ちフィールドバッファコントローラ 9〇におい て、 ポリゴン識別番号 P Nを発生させることができる。 そして、 このポリゴ ン識別番号 P Nを利用することにより、 ポリゴンを画像上に表示するデータ のうち、 ポリゴンを構成する各ドッ 卜に共通のデータと、 共通でないデータ を分けて処理することが可能となり、 ハー ドウユアの高速化、 小規模化を図 ることが可能となる。
ァ ドレス信号 A I 0〜9、 入力データ D 1 0〜 1 1は、 8段 F I F 012 0の座標 Q u e u e 122及びデータ Q u e u e 124に一旦蓄積され、 そ の後ビデオ RAMに格納される。 この場合、 ァ ドレス信号 A I 0~9を、 X ア ドレスとして認識するか Yァ ドレスとして認識するかは、 Q u e u eコン トローラ 1 26に入力された制御信号 XV W及び XHWにより選択される。 即ち、 図 9に示すように、 XVW= L、 XHW=Hの時は、 A I 0〜9は、 Yァ ドレスとして認識され、 XVW=H、 XHW-Lの時は、 A I 0〜9は、 Xア ドレスとして認識される。 更に、 X VW、 XHWは、 入力データ D I 〇 〜 1 1が有効なデータであるかどうかの識別信号ともなつている。
シーケンサ 130は、 8段 F I F O 120に蓄積されているデータをモニ ターしており、 これにより、 外部に対しては XWA I T信号を、 8段 F I F 0120に対しては、 読み出し制御信号を出力して、 データ制御を行ってい る。 また、 ビデオ RAMを制御するためのシーケンス信号も、 このシーケン サ 130により生成されている。
8段 F I F 01 20に蓄えられた X、 Yデータは RAMァ ドレス発生回路 1 36へ、 Tx 、 ΤΥ 、 B R Iデータはレジスタ 1 38へ、 それぞれ、 ディ レイ回路 128を介して出力される。 そして、 レジスタ 138に蓄えられた データは、 RAMァドレス発生回路 136より発生された RAMア ドレスに したがって、 ビデオ RAMに書き込まれることとなる。 このように 8段 F I F 0120を設けることにより、 前段のプロセッサ部 30等の演算処理を中 断させることなく ビデオ RAMI 00〜1 06へのデ一夕の書き込みが可能 となる。 これにより処理の効率を高めることができる。 もし、 プロセッサ部 30のデータ出力の速度の変動が大きい場合は、 この F I F Oの段数を更に 増やせばよいことになる。
また、 シーケンサ 130からのシーケンス信号も、 ディ レイ回路 1 28を 介して RAM制御信号発生回路 14◦及び S AM制御回路 142に出力され、 それぞれの回路にて書き込み用ポー トである RAMの制御信号及び読み込み 用ポー トである S AMの制御信号が発生されることとなる。
端子 146は、 入出力切り替え可能な双方向データバスとなっている。 そ して、 シリアルポー ト S AMの初期化を行う際には、 出力端子に切り替わり S AMクリアコ一 ド発生回路 144にて発生されたクリアコー ドが出力され、 メモリの初期化が行われる。 また、 SAMよりデータを読み込む際には、 入 力端子に切り替わり S AMに記憶されているデ一夕が入力される。 この入力 されたデータは、 シリアル出力 D 0 ~ 1 1としてフィールドバッファコント ローラ 90 96から出力されることとなる。 即ち、 フィールドバッファコ ントローラ 90の出力であるポリゴン識別番号 P Nはアトリ ビュー ト R A M 部 38へ、 フィールドバッファコントローラ 92 94の出力であるテクス チヤ情報 TX TY はテクスチャ情報記憶部 42 フィ ールドバッファコ ン トロ一ラ 96の出力である輝度情報 B R Iはディ レイ回路 168を介して 、'レツ ト&ミキサ回路 44へと、 それぞれ出力されることとなる。
図 9には、 フィ一ルドバッファ部 40に対するデータの書き込みシーゲン スが示される。 図 9に示されるように、 画像データは、 XP F I R- Lとな る毎にポリゴン毎に書き込まれる。 また、 1枚のポリゴンのデ一夕が 1ライ ンずつ組にして書き込まれるように、 アドレス A I C!〜 9力 XVW信号及 び XHW信号を用いて制御されている。
(5) ァトリビュー ト RAM部
ァトリ ビュート RAM部 38は、 図 6に示すように、 ア トリ ビュ一 卜 RA M部 152及びァ 卜リ ビュー 卜データ制御部 15◦を有する。
ソーティ ング処理部 22より入力されたパレッ トナンバー P A L、 カラー Z値 C Z、 プロック番号 B N等のァ トリ ビュートデータは、 ァトリ ビュー ト データ制御部 150に入力される。 ここでパレッ トナンパ一 PALは、 'レ ッ トテ一ブルを指定するためのナンバーであり、 カラー Z値 C Zは、 奥行き 変化による色変化に対応するために用いられるものである。 またブロック番 号 BNは、 テクスチャ情報記憶部 42内の記憶空間のプロック指定を行うた めの信号である。 これらのアトリ ビュートデ一タはァトリ ビュートデータ制 御部 150により、 アトリ ビ i—ト RAMI 52に格納される。 そしてアト リ ビュー ト RAM 1 2からの読み込みは、 フィ一ルドバッファ部 40から 入力されるポリゴン識別番号 P Nにしたがって行われ、 パレツ ト&ミキサ回 路 44にポリゴン毎のデータとして出力されることとなる。
テクスチャ情報記憶部 42内の記憶空間のプロック指定を行うためのプロ ック番号 BNも、 このアトリ ビュー ト制御回路 150より発生されテクスチ ャ記憶部 42に出力される。
(6) テクスチャ情報記憶部 (レンダリ ング情報記憶部)
テクスチャ情報記憶部 42は、 図 6に示すように、 キャラクタコー ド記憶 部 160及びキャラクタジェネレータ 164を含む。 このテクスチャ情報記 憶部 42には、 フィールドバッファ部 40からのテクスチャ座標 Tx 、 ΤΥ により実際の画面を表示するための例えばカラーコ一ドが記憶されており、 記憶部のスピ一 ドを補うために 2段構成となっている。 これらの記憶部を構 成するものとしては、 例えばマスク ROM、 E E PROM、 SRAM. DR AM等を用いることができる。 特に、 RAMを用いて、 この RAMに記憶さ れる内容を例えば 1フィールド (1 60秒) 毎に書き換えれば、 自身の画 像をフィ一 ドバックしてまたテクスチャにモニタ一する等特有の画像効果を 得ることが可能となる。
図 10には、 このテクスチャ情報記憶部 42により構成されるテクスチャ 記憶平面の一例が示される。
このテクスチャ記憶平面は、 例えば図 10に示すような階層構造となつて おり、 これにより、 少ない容量の記憶部により広いテクスチャ記憶平面を表 現することができる。 即ち、 テクスチャ記憶平面は例えば 16のプロックに 分割され、 各プロックは、 256 X 256のキャラクタに分割されている。 そして、 このキヤラクタは 16 X 16のドッ トに分割され、 各キヤラクタに は、 テクスチャ記憶平面を構成するための絵柄が記憶されている。 そして、 この絵柄を用いてテクスチャ記憶平面が全て埋められることとなる。
図 10に示すように、 ポリゴンへのテクスチャリ ングは、 ポリゴンにはり 付けたいテクスチャの各頂点座標を指定することにより行われる。 但し、 ブ 口ック間にまたがるポリゴンの指定をすることはできない。
図 1 1には、 テクスチャ情報記憶部 42におけるデータの流れの一例が示 される。
本実施例において、 テクスチャ情報記憶部 42には、 それぞれ 12ビッ ト のテクスチャ X座標 TX0〜TX11 及び 16ビッ 卜のテクスチャ Υ座標 ΤΥ0〜 TY15 が、 計 28ビッ 卜のデータとして入力される。
ここでテクスチャ座標の下位ビッ ト ΤΧ0〜ΤΧ3及び ΤΥ0〜ΤΥ3は、 キャラ クタジェネレータ 164におけるキャラクタのア ドレスを指定するために使 用され、 テクスチャ Υ座標の上位ビッ ト TY12 -TY15 は、 テクスチャ記憶 平面でのブロック番号 ΒΝを指定するために使用されている。 即ち、 上位ビ ッ 卜 TY12 -TY15 によりテクスチャ記憶平面のブロックが指定され、 ΤΧ4 〜ΤΧ11 及び ΤΥ4〜ΤΥ11 によりブロック内のキャラクタのァ ドレスが指定 される。 これにより、 キャラクタコー ド C CO 〜C C 12がキヤラクタコー ド 記憶部 160から読み出されることとなる。 一方、 下位ビッ ト TX0~TX3及 び ΤΥ0~ΤΥ3は、 キャラク夕記憶部 160をバイパスし、 前記キャラクタコ — ド C CO 〜C C 12と結合して、 キャラクタジェネレータ 164に入力され る。 そして、 キャラクタジヱネレー夕 164からは、 最終的な出力である例 えば 8ビッ トのカラ一コー ドが、 パレツ ト&ミキサ回路 44に出力されるこ とと る。
(7) パレツ ト &ミキサ回路
パレツ ト&ミキサ回路 44は、 輝度情報 B R I、 カラ一データ C 0 L、 パ レツ トナンバー PAL及びカラ一 Z値 C Zより画像出力を行うための R G B データを合成するための回路である。
画像出力は、 フィールドバッファ部 40に記憶される ドッ ト毎のデータと、 ァ トリ ビュー 卜 RAM部 38に記憶されるポリゴン毎のデータにより、 予め 設定されているパレツ 卜より RG Bデータを引き出すことによって合成され る。 ノ、'レツ 卜には R G B各 8ビッ 卜で、 計 24ビッ 卜の色データが格納され ている。 そして、 パレッ トは全部で 128バンクに分割されており、 このバ ンク指定はパレッ トナンバー P A Lにより行われる。 また、 1バンクは、 2 56色のデータを持ち、 このバンク内での色指定は、 カラーコー ド C OLに より行われることとなる。
図 12には、 フィ一ルドバッファ部 40及び了トリ ビュート RAM部 38 へのデータ書き込み後、 画像出力するまでの信号の流れが示されている。 即ち、 以下のような信号の流れにしたがって、 最終的な画像が出力される。
①フィ一ルドバップア部 40から 1 ドッ ト毎のデ一夕 (P N、 TX、 TY、 B R I ) が出力される。
②ァ トリ ビュートデー夕 RAM部 38から、 前記ポリゴン識別番号 P Nに対 応したポリゴンのデータ (BN、 PAL、 C Z ) が出力される。-
③ TX、 TY、 B Nがテクスチャ情報記憶部 42に入力され、 対応したカラ 一データ C 0 Lが出力される。 この場合、 アトリ ビュート RAM部 38を経 由する BNと夕イ ミ ングを合わせるため、 TX、 TY はディ レイ回路 168 を介してテクスチャ情報記憶部 42に入力される。
④ C O L、 PAL、 BR I、 C Zは、 ディ レイ回路 170、 172、 1 74 により夕イ ミ ング合わせが行われ、 同時にパレツ ト&ミキサ回路 44に入力 される。 そして、 PAL、 C O Lよりパレッ トのバンクとバンク内のカラ一 コー ドが指定され、 パレッ トから 1つの色データが選択される。 この選択さ れた色データは、 BR I、 C Zの値により色演算される。 その後、 ガンマ補 正を経て、 DZA変換され、 R G Bデータとしてパレッ ト &ミキサ回路 44 から出力され、 C R T 4 6へ画像入力されることとなる。
( 8 ) 間引き ·補間処理
(A) 概要
以上のように、 本実施例では、 フィ一ルドバッファ部 4 0にはカラー情報 自体ではなく、 テクスチャ座標が記憶される。 このようにフィールドバッフ ァ部 4 0にテクスチャ座標が記憶されることにより、 以下に述べる間引き · 補間手法を用いた画像合成が可能となり、 これによりハー ドウユアの高速化、 小規模化を図ることが可能となる。
テクスチャ座標等に対する間引き演算は、 プロセッサ部 3 0において行わ れる。 また、 図 1に示すようにフィ一ルドバッファ部 4 0の出力には、 補間 回路 1 8 0 、 1 8 2 、 1 8 4 、 1 8 6が設けられている。 そして、 この補間 回路 1 8 0 〜 1 8 6により、 補間演算を行い、 間引かれた点のテクスチャ座 標等を求め、 テクスチャ情報記憶部 4 2からテクスチャ情報を読み出す。 こ の場合、 スクリーン上でのテクスチャ座標は非線形なデータであるが、 微小 部分ではこのように線形に補間しても、 画質をほとんど悪化させることがな く、 良質な画像を得ることが可能となる。
このように本画像合成装置では、 画質を良好なものに保ちつつ、 1つのデ 一夕を間引く毎に、 最もデータ量の多い演算の回数を 1 Z 2以下にすること ができ、 ハー ドウヱァの高速化、 小規模化を図ることが可能となる。 なお、 図 1 3には、 間引き ♦補間処理を行わない場合の画像合成装置のプロック図 が示される。 図 1と図 1 3を比較すればわかるように、 本実施例では、 補間 回路 1 8 0 〜 1 8 6を付加する等の非常に簡易な手法で、 間引き ·補間処理 が可能となる。
次に、 間引き ·補間演算を行う場合の本実施例の概要を説明する。
図 1に示す画像合成装置において、 間引き演算手段は、 プロセッサ部 3 0 に含まれている。 具体的には、 プロセッサ部 3 0における走査線上の各ドッ 卜の演算を行う際に、 間引いて演算することによりこれを実現している。 こ の間引き演算動作は、 図 1 4に示すように例えば以下のルールにしたがって 行われる。
まず、 データの間引きは、 水平方向 (X方向) に例えば 1 ドッ ト毎に (例 えば Xが偶数のドッ トを) 間引き処理する。 但し、 以下のドッ トに対しては 間引き処理を行わない。
①ポリゴンの輪郭のドッ ト
②他のポリゴンとの境界線のドッ ト
③画面左右点のドッ ト
以上のルールに従って、 間引かれたフィ一ルドバッファ上のデータのィメ 一ジが図 1 4に示される。 同図に示すように、 上記①〜③に該当する ドッ ト については、 間引き処理が行われず、 それ以外のドッ トは、 1 ドッ ト毎に間 引かれている。
なお、 ここで空き ドッ 卜とは、 上記ルールに従って、 間引かれたドッ ト及 び、 ポリゴンの描かれないところ即ち背景になる部分をいい、 例えば T X = T Y = F F F hに設定されている。 フィールドバッファは、 1画面分のデー 夕の書き込み開始時に、 全ドッ トがクリア (全ビッ ト 1 ) され、 前記した F F F hの値が全ドッ トに設定されることとなる。 - 次に補間演算手段について説明する。 本実施例における補間演算手段は、 図 1に示すように、 フィールドバッファ部 4◦の出力に補間回路 1 8◦、 1 8 2、 1 8 4、 1 8 6を接続することにより実現される。 ここで、 補間回路 1 8 0はポリゴン識別番号 P Nの補間を行うものであり、 補間回路 1 8 2、 1 8 4は、 テクスチャ座標 T X 、 T Y の補間を行うものである。 また、 補間 回路 1 8 6は輝度情報 B R Iの補間を行うものである。 具体的には、 これら の補間回路 1 8 0〜1 8 6による補間動作は、 図 1 5に示すように例えば以 下のようなルールにしたがって行われる。 即ち、 補間処理は次の様なドッ トに対して行われる。 ①空き ドッ ト、 即ち TX = TY = F F F hであり、 かつ、
②右隣と左隣のドッ 卜のポリゴン識別番号が同じであり、 且つ、 右隣と左 隣のドッ 卜が空き ドッ 卜でない。 そして、 補間処理は上記のような空き ドッ 卜に対して以下のような処理を 施すことにより行われる。
①ポリゴン識別番号 PNを両隣のドッ 卜の PNと同じ値にする。
②テクスチャ座標 TX、 TY 及び輝度情報 BR Iは両隣のドッ トの TX、 TY 及び BR Iの平均値に設定する。 図 1 5には、 上記ルールに従って補間処理を行った場合の一例が示される c 図 1 5に示すように、 補間処理は、 ポリゴン識別番号 P Nが同じである ドッ 卜に囲まれた空き ドッ 卜に対して行われる。 即ち、 図 15においては、 空き ドッ トであり両隣のドッ 卜のポリゴン識別番号 P Nがともに" 0 " であるド ッ 卜に対して補間処理が行われる。 これに対して、 空き ドッ 卜であっても両 隣のドッ トのポリゴン識別番号 P Nが異なる ドッ トに対しては補間処理は行 われない。 このようなドッ トは間引かれたドッ トではなく、 ポリゴン間の隙 間と判定されるからである。 - 補間処理を行うべきドッ 卜に対しては、 図 1 5に示すように次のような補 間処理が行われる。 まず、 補間回路 180において、 両隣のドッ トのポリゴ ン識別番号 PNと同じ値が、 空きドッ トのポリゴン識別番号として設定され る。 即ち、 この例では PN = 0に設定される。
また、 補間回路 182、 184において、 両隣のドッ 卜のテクスチャ座標 TX 、 TY の例えば平均値が求められ、 この値が空きドッ トのテクスチャ座 標 TX 、 TY として設定される。 この例では、 TX = 1 50、 TY = 30の 値が設定されることとなる。
同様にして、 補間回路 186にて、 両隣のドッ 卜の輝度情報 BR Iの例え ば平均値が求められ、 この値が空き ドッ 卜の輝度情報 BR I として設定され る。 この例では、 B R I =48の値が設定されることとなる。 次に、 間引き ·補間演算を行う場合の本実施例の具体的な構成 ·動作につ いて詳述する。
(B) 間引き演算手段の具体例
本実施例における間引き処理は、 図 4 (D) 、 (H) に示される走査線上 の各ドッ トの演算を行う際に行われる。 そして、 これは走査線上の各ドッ ト の演算を行う際の X *座標のカウントアップ値を変化させることにより行わ れる。 例えば、 間引き率を 1 Z2とする場合には、 このカウントアップ値を 2とする。 また、 間引き率を 1 3とする場合には、 このカウン トアップ値 を 3とすればよい。 これにより、 走査線上のドッ 卜の演算が 2 ドッ ト毎、 3 ドッ ト毎に行われることとなり、 間引き演算処理が可能となる。
なお、 本実施例では、 走査線上の各ドッ 卜の演算を行う際に、 間引きを行 つている力《、 本発明はこれに限られるものではない。 例えば、 この間引き処 理を図 4 (C) 、 (G) に示される輪郭点を演算する際に行ってもよい。 こ の場合は、 輪郭点を演算する際の Y *座標のカウントアップ値を変化させる ことで、 この間引き率を変更することができることとなる。 -
(C) 補間演算手段の具体例
既に述べたように、 本実施例における補間演算手段は、 フィールドバッフ ァ部 40の出力に補間回路 180〜 186を設けることにより構成される。 図 1 6には、 この場合のビデオ R AM 1 0 C!〜 1 06、 フィールドバッファ コントローラ 90〜96、 補間回路 180~ 186の間の接続関係が示され る。 また、 図 1 7には、 P N用のフィールドバッファコン トローラ 90と P N用の捕間回路 180の接続関係について示される (TX 用、 TY 用、 B R I用のフィールドバッファコントローラ 92、 94、 96と補間回路 182、 184、 186との接続関係も同様の関係になる) 。 更に、 図 18には、 補 間回路 180〜 186の内部回路の一例が示される。
図 16に示すように、 本実施例では、 ビデオ RAM 100〜 106への書 き込み動作は、 フィールドバッファコントローラ 90~ 96により、 所定の 了ドレス信号に基づいてデータをランダムに書き込むことにより行われる。 一方、 ビデオ RAM 100〜 106からのデータの読み出し動作は、 D S 0 〜1 1端子を介して、 ドッ トクロックに同期してデ一夕をシリアルに読み出 すことにより行われる。 この場合、 フィ ールドバッファコン トローラ 90の 双方向バッファ D S C!〜 1 1から入力されたデータは、 図 17に示すように、 DO 0〜l 1出力を介して補間回路 180にシリアルに出力される。 同様に、 フィ ールドバッファコン トローラ 92〜 96の DO 0~l l出力からは、 補 間回路 182〜 186に対してデータがシリアルに出力されることになる。 この場合、 補間回路 180〜 186は、 図 18に示すような同じ構成の回路 により形成されている。 そして、 それぞれの補間回路 180~186間の制 御は、 XNUL B端子、 XNUL I端子、 X E Q端子により行われることに なる。
図 18に示す補間回路 180〜186の内部回路において、 レジスタ 19 2〜214はデータの保持 · シフト機能を有する。 また、 論理回路 220、 222、 224、 226、 228はインバータ、 NOR等の論理演算を行う 機能を有する。 空き ドッ ト判定回路 230は、 処理の対象となるドッ 卜が空 きドッ トか否かを判定する回路である。 また、 ポリゴンナンバー致判定回路 232は、 処理の対象となる ドッ 卜の両隣のドッ 卜のポリゴン識別番号 P N が一致するか否かを判定する回路である。 また、 平均値演算回路 234は、 補間処理を行う際に、 両隣のドッ トのテクスチャ座標 TX 、 TY 及び輝度情 報 B R Iの平均値を求めるための回路である。 また、 マルチプレクサ 236 は、 補間処理を行ったデータを出力するか、 もとのデータを出力するかを選 択するための回路である。
さて、 既に述べたように、 本実施例では、 ポリゴン識别番号 PNを取り扱 ぅフィ一ノレドバッファコン トローラ 90はマスターモー ドにて、 テクスチャ 座標 TX、 TY データを取り扱うフィールドバッファコントローラ 92、 9 4はスレーブモードにて、 輝度情報 B R Iを取り扱うフィールドバッフアコ ントロ一ラ 96は拡張モードにて使用されている。 そして、 補間回路 180 〜 186の双方向バッファである XNU L B、 X E Q端子は、 それぞれのモ 一ドにしたがって、 図 16に示すように出力端子あるいは入力端子となる。 具体的には、 補間回路 180 (マスターモード) の XNU L B端子は入力端 子に、 X E Q端子は出力端子となる。 また、 補間回路 182、 184 (スレ ーブモード) の XNU L B端子は出力端子に、 X E Q端子は入力端子になる t また、 補間回路 186 (拡張モード) の XNU L B端子、 X E Q端子は共に 入力端子となる。 なお、 XNUL I端子は全ての補間回路 180〜186に お L、て入力端子となっている。
ところで、 図 1 5に示したように補間処理を行うためには、 補間を行う ド ッ トの前後のドッ トの P N、 TX、 TY、 B R Iの値を参照する必要がある c 従って、 補間回路 180〜 186の間でコミニユゲーションを行うための信 号が必要であり、 補間制御信号 XNU L B、 XNU L K X E Qがその役目 を果たすことになる。
ここで、 図 18に示すように XNU L B端子 21 6は双方向バッファとな つている。 そして、 スレーブモー ドの補間回路 182からは、 処理の対象と なる ドッ 卜の TX の値が F F F Hか否かを示す信号が X U L B信号として出 力される (以下、 この信号を XNU L B (X) 信号と呼ぶ) 。 同様に補間回 路 184からも、 TY の値が F F F Hか否かを示す信号が XNU B信号とし て出力される (以下、 この信号を XNU L B (Y) 信号と呼ぶ) 。 TX ある いは TY の値が F F F Hか否かは、 空き ドッ ト判定回路 230により判定さ れる。 そして、 TX = F F F Hの場合には XNU L B (X) 信号が" 0" と なり、 TY - F F F Hの場合は XNU L B (Y) 信号が" 0" となる。 XN U L B (X) 信号、 XNU L B (Y) 信号がともに" 0" の場合に、 そのド ッ トは空き ドッ トであるということになる。
図 1 6に示すように、 補間回路 182の出力信号である XNU L B (X) 信号は、 補間回路 18◦の XNUL B端子、 補間回路 184、 186の XN U L I端子に入力される。 同様に、 補間回路 184の出力信号である XNU L B (Y) 信号は、 補間回路 180、 182の ?^1;1^ I端子、 補間回路 1 86の XNU L B端子に入力される。 従って、 図 18に示す補間回路 180 〜 186内の論理回路 228には、 XNU L B端子、 XNUL I端子を介し て、 XNUL B (X) 信号及び XNUL B (Y) 信号が入力されることにな る。 この結果、 XNUL B (X) 信号、 XNUL B (Y) 信号がともに" 0 " の場合、 即ち、 対象となる ドッ トが空き ドッ 卜と判定された場合、 論理回 路 228の出力は" 1 " となる。 そして、 この論理回路 228の出力は、 レ ジスタ 21 2、 214、 論理回路 226等に伝達されることになる。
XE Q端子 218も双方向バッファとなっている。 そして、 マスタ一モー ドの補間回路 180からは、 処理の対象となる ドッ トの両隣のドッ トのポリ ゴン識別番号 P Nが同一か否かを示す信号が X E Q信号として出力される。 具体的には、 レジスタ 1 92、 196に保持されたドッ トのポリゴン識別番 号 P Nが、 ポリゴンナンバー致判定回路 232に入力される。 そして、 一致 した場合には、 X E Q端子から" 0" が出力されることになる。
スレーブ ·拡張モー ドの補間回路 182〜186では、 XE Q端子 218 は入力端子となっている。 そして、 図 16に示すように補間回路 180の出 力である XE Q信号が入力される。 これにより、 補間回路 182~186に 対して、 両隣のドッ 卜のポリゴン識別番号が一致するか否かの情報が知らさ れることになる。 即ち、 両隣のドッ 卜のポリゴン識別番号 PNがー致した場 合は、 補間回路 180の XE Q端子の出力が" 0" となり、 この出力が補間 回路 180~ 186内のインバータ 220に入力される。 そして、 このイン バー夕 220の出力が、 レジスタ 206、 論理回路 226に入力されること になる。
以上より、 処理の対象となる ドッ 卜が空き ドッ トであり、 そのドッ トの両 隣のドッ トのポリゴン識別番号 P Nがー致し、 両隣のドッ トが空き ドッ トで ない場合に、 そのドッ トは補間されるべき ドッ トであると判断される。 これ により図 18の論理回路 226の出力が" 1 " となり、 マルチプレクサ 23 6は、 レジスタ 1 98の出力ではなく、 平均値演算回路 234の出力を選択 する。 この結果、 レジスタ 1 96、 20◦に保持されたデータである P N、 TX、 TY、 B R Iの平均値が計算され、 補間データが演算されることにな る。 なお、 この場合、 両隣のドッ トのポリゴン識別番号 P Nは一致している ため、 両隣のドッ 卜の平均値を計算するということは、 両隣のドッ トと同じ P Nに設定することと等価となる。 このように本実施例においては、 ポリゴ ン識別番号 P N、 テクスチャ座標 TX、 TY 、 輝度情報 B R Iに対する補間 処理を、 全て同じ回路構成の補間回路で行うことが可能となる。
次に、 本実施例における補間演算手段の動作について簡単に説明する。 図 1 9には、 ビデオ RAMから読み出されたデータ力 <、 フィールドバッフ アコントロ一ラ内で補間処理を受けて出力されるまでの様子が示されている。 図 1 9に示すように、 本実施例では、 以下の 7つのフェーズ (#◦〜# 6) によるパイプラィン処理で補間処理を行っている。
#〇 S AM読み出しフェーズ
S AM読み出し用クロック S Cの立ち上がりで、 マルチポートビデオ R A Mから対応する ドッ トのデータが出力される。
# 1 S AMデータ取り込みフヱーズ -
D S 0~ 1 1端子に到達したデータを S Cに同期してフィ一ルドバッファ コントローラ 90〜 96、 補間回路 180〜186内に取り込む。
# 2 空き ドッ ト判定フヱーズ
スレーブモー ドの捕間回路 182、 184力 TX、 TY の値が F F F h であるかどうかをチェックし、 XNU L B信号を出力する。
# 3 間引き ドッ ト判定フェーズ
マスターモ一 ドの捕間回路 180力 両隣のドッ 卜のポリゴン識別番号 P Nを比較し、 一致したかどうかを X E Q信号として出力する。
#4、 # 5 補間処理フヱーズ
ポリゴン識別番号 PN、 テクスチャ座標 TX、 TY 、 輝度情報 B R Iの補 間を、 両隣の平均値を求めることにより行う。 但し、 補間処理を行わないド ッ 卜に関しては、 マルチプレクサ 236にて、 何も処理を行わずそのままデ —夕を通過させる。
# 6 データの出カフヱーズ
ドッ トクロック D C Kの立ち上がりに同期してデータを出力する。
なお、 図 19にて、 ①〜⑤は以下のことを示している。
① S Cの立ち上がりによりビデオ RAMからデータが読み出される (フエ一 ズ # 0)
②フィ一ルドバッファコントローラ 90〜 96、 補間回路 180〜 186内 にデータが取り込まれる (フヱーズ # 1)
③データ (C) に対応した XNU L Bの出力が行われる (フェーズ # 2)
④データ (C) に対応した X E Qの出力が行われる (フェーズ # 3)
⑤補間処理を受けたデータが出力される
(9) テクスチャ情報記憶部を論理演算回路で構成する場合
テクスチャ情報記憶部は、 ROMや RAMのようにテクスチャ情報の数値 そのものを記憶するものに限らず、 テクスチャ座標等の入力に対する関数の 形で表現することも可能である。 この場合のテクスチャ情報記憶部は、 論理 演算回路として構成される。
さて、 これまでの説明では、 ポリゴンにはり付けるテクスチャ情報として カラ一情報を用いた場合について述べた。 し力、し、 ポリゴンにはり付けるこ とができるテクスチャ情報としては、 これに限らず、 あらゆる種類のレンダ リ ング情報を考えることができる。 例えばポリゴン表面の形状の情報をはり 付けることも可能である。 このようなマツビング手法はバンプマツビングと 呼ばれている。 この手法により、 図 20に示すように 3次元オブジェク ト M に対して例えば Lに示すようにクレー夕状のマツビングを施すことが可能と なる。 バンプマツピングは摂動マッピングとも呼ばれ、 物体表面形状に対する摂 動成分 (多くは、 法線べク トルの偏位) をテクスチャ情報として持つことが できる。 この摂動成分からなるテクスチャ情報を、 以下バンプと呼ぶ。 また、 このバンプテクスチャ情報を読み出すためのテクスチャ座標をバンプテクス チヤ座標 BX、 BY と呼ぶ。
本実施例では、 アトリ ビュー トデータ (ポリゴン毎の定数) の 1種として 「ポリゴンの面の法線ベク トル」 をもつ。 そして、 この 「ポリゴン面の法線 べク トル」 力 摂動成分によってドッ ト毎に摂動を受ける。 これにより各ド ッ 卜の法線べク トル Nが求められることになる。 この様子が図 21に示され る 0
このようにしてドッ ト毎の法線べク トルが求まつたら、 この法線べク トル 情報に基づいて、 各ドッ トの輝度情報 BR Iを求める。 この場合、 法線べク トルから各ドッ ト毎の輝度情報 BR Iを求めるための照明モデルが必要とな 0
本実施例では、 この照明モデルとして、 単一光源による平行光線と、 鏡面 反射、 拡散反射、 周囲光を考える。 この場合、 シエーディ ング関数と呼ばれ る半ば理論的に半ば経験的に得られた次のような式が知られている。
B R I = I a Ka + { I I / (Z +K) } x (Kd cos φ + Ks cosn φ ) (1) この照明モデルの演算式におけるそれぞれの記号は、
B R I 各ドッ 卜の輝度情報
I a 周囲光の強度 〔F〕
I 1 入射光の強度 〔F〕
Ka 周囲光の拡散反射係数 〔0〕 (a : ambient)
Kd 拡散反射係数 〔0〕 (d: diffuse)
Ks 鏡面反射係数 〔0〕 (s : specular) K :任意定数 (近距離にある物体の輝度を補正) 〔F〕
Z : ドッ ト毎の Z座標値 〔場合によっては 0〕
φ :光源べク トル Lと法線べク トル Nとの角度
==反射光べク トル Rと法線べク トル Nとの角度
ø : 反射光ベク トル Rと視線ベク トル E = 〔0 , 0 , 1〕 との角度 n : 任意定数 (ハイライ トの鋭さ) 〔0〕
〔F〕 : 画面 (フィールド) 毎の定数。
〔0〕 :物体 (あるいはポリゴン) 毎の定数。
という意味である。
即ち、 補間演算により求められた各ドッ トにおける法線べク トル Nを用い て、 (1) 式における角度 ø、 < >が求められる。 また、 必要ならば各ドッ ト毎 に Z座標も求められる。 また、 これ以外の係数はポリゴン毎にアトリビュー トデータとして与えられている。 従って、 これらのデータ値を(1) 式に代入 することで、 各ドッ ト毎の輝度情報が求められることになる。
このように、 各ドッ ト毎のの輝度情報を求め、 この輝度情報を基に各ドッ ト色情報を求めることにより、 図 2 0に示すように物体の表面にクレー夕状 の形状が施された画像等を合成できることになる。
さて、 このようなバンプマッピングを用いる場合、 テクチヤ情報記憶部に は、 物体の表面形状情報、 例えば法線べク トル情報、 あるいは、 法線べク ト ルの摂動成分が記憶されることになる。 そして、 この表面形状情報は、 バン プテクスチャ座標により読み出されることになる。 し力、し、 本実施例では、 これに限らず、 バンプテクスチャ座標に対して所定の関数演算を施し、 各ド ッ トの表面形状情報を求めることができる。
例えば図 2 2 ( A ) に示されるようなジクザク形状の関数は、 1次関数の 複合体なので、
•■{ (j/i) · (w mod 2i )-j} ( (w mod 4i) < 2 i )
u
- { (j/i ) · (w mod 2i )-j} ( (w mod 4i ) 21 ) (w:バンプテクスチャ座標 (B x, B y) u:摂動成分 (α, ) i, 定数)
(a mod b は、 除算 aノ bの剰余を意味する) のように表せる。 この関数は、 疑似サイン曲線の表面形状を発生させるこ とができる。 これは最も基本的なバンプのひとつなので用途が広い。 これを バンプテクスチャ座標 B Xと B yの片方あるいは両方に適用して利用するこ とができる。
定数 iを 2の整数乗とすると、 図 22 (B) に示すような乗算器 900、 減算器 902、 補数器 904で構成される回路で実現できる。 ここで乗算器 900には、 Wm ~W0 (Wの下位 m+ 1 ビッ ト) 及び jが入力される。 そ して、 乗算器 900の出力は下位 mビッ 卜が切り捨てられ減算器 902に入 力される。 減算器 902の出力は補数器 904に入力される。 ここで補数器 904の E入力には Wm+1 (Wのビッ ト m + 1 ) が入力されている。
更に、 定数〗 も 2の整数乗とすると、 図 22 (C) のようにさらに簡単な 回路になる。 この回路は、 シフ夕 906、 デクリメ ンタ 908、 補数器 91 0により構成される。 シフタ 906には Wn! 〜 WO (Wの下位 m-+ 1ビッ ト) が入力される。 ここで、 シフタ 906は、 以下の演算機能を有する。 i < j (m< n) の場合、 j 一 i ビッ トの" 0" を下位に追加 (左シフ ト) i = j (m = n ) の場合は、 何もしない
i > j (m > n ) の場合、 下位 i 一 j ビッ トを削除する (右シフ ト)
(3者のいずれかの状態に固定)
シフ夕 906の出力はデクリメ ンタ 908に入力される力 下位 mビッ ト についてはバイパスして補数器 910に入力される。 補数器 910の E入力 には Wm+i (Wのビッ ト m+ 1) が入力されている。
なお、 シフタ 906は能動的な回路ではなく、 各ビッ トの結線の違いをブ ラックボックス化して表現したものに過ぎない。 バンプの深さ情報 B D E P THがアトリ ビュー トデ一夕に含まれる場合は特に図 22 (C) の回路で十 分である。
なお、 簡単で有用性の高い物のひとつに、 乱数器がある。 この乱数器は、 テクスチャ座標などの入力に対して一意に定まる疑似乱数を発生する。 この 例を図 23 (A) に示す。 この例では乱数発生回路をュニッ ト化し、 乱数ュ ニッ ト A〜Dというように多段構成にしている。 図 23 (B) に示すように、 いろいろな乱数ュニッ ト 91 2、 914、 916等を取捨選択して、 目的に あうバンプパターンを見つけることができる。
なお、 本発明は上記実施例に限定されるものではなく、 本発明の要旨の範 囲内で種々の変形実施が可能である。
例えば、 テクスチャ情報記憶手段を構成する記憶装置としては、 E E PR OM、 S RAM, DRAM, マスク ROM等、 各種の記憶装置を使用するこ とができる。
また、 テクスチャ情報記憶部に記憶されるテクスチャ情報 (レシダリ ング 情報) としては、 カラー情報、 表面形状情報、 輝度情報、 表面形状情報、 透 明度情報、 拡散反射率情報等、 あらゆる種々のものを用いることが'できる。 例えば、 透明度情報をレンダリング情報として用いることにより、 物体の一 部分が透明から半透明、 半透明から透明へと変化するおぼろげな物体を表現 できる。 また、 拡散反射率情報をレンダリ ング情報として用いることにより、 部分により 「つや」 の異なる物体を表現することが可能となる。
また、 ポリゴンにテクスチャをはり付けるテクスチャマツビングの手法も、 本実施例に示した手法に限らず、 あらゆる種類のテクスチャマツビング手法 を用いることができる。 例えば、 ある程度の画質の低下を犠牲にして、 テク スチヤを単なる線形補間によりそのままはり付ける手法を用いてもよい。 ま た、 先行技術である (テクスチャマッピングについて(1) 柴本猛、 小林誠 情報処理学会第 3 1回講演論文集 (社) 情報処理学会 昭和 6 0年 9月 9 日発行) に記載された手法を用いることもできる。 この手法では、 まず、 ポ リゴンの各頂点の透視変換された表示座標を逆透視変換して透視変換前の状 態に戻す。 そして、 各頂点に対応したテクスチャ座標を手掛かりに、 透視変 換前の表示座標をテクスチャ座標に変換する 「変換マトリクス」 を求めてお く。 次に、 ポリゴン上の全ドッ 卜についてそれぞれの表示座標に逆透視変換 をかけ、 変換マトリクスによってテクスチャ座標を求める。
また、 間引き演算手段における間引き率としては 1 2に限らず、 画質の 許す限り、 例えば 1 3 、 1 Z 4等各種の間引き率を採用することができる。 そして、 この時、 補間演算手段における補間処理は 2 ドッ ト毎、 あるいは 3 ドッ ト毎等のように複数ドッ ト毎に行われることになる。 なお、 この場合の 「処理の対象となる ドッ 卜の両隣のドッ ト」 とは、 処理の対象となる複数の ドッ 卜うち最も左に位置する ドッ 卜の左隣のドッ ト及び最も右に位置する ド ッ トの右隣のドッ トをいうことになる。 また、 この場合の間引き補間の手段 としては、 例えば直線補間等を用いることができる。
また、 本発明によりポリゴンにテクスチャマッピングされるテクスチャの 形状としては、 このポリゴンと同一の形状もしくは相似形状のもめには限ら れず、 任意の形状のテクスチャをマッピングすることができる。 例えば、 ポ リゴンの形状と全く異なる形状のテクスチヤをマッピングすることにより、 テクスチャを歪ませるなど特殊な画像効果を得ることもできる。
また、 上記実施例では、 演算における 「走査線」 と 「C R Tの走査線」 と を特に区別していなかつたが、 例えばビデオ R A Mの S A M容量等のハー ド ウェア上の制約しだいでは、 両走査線が別個のものであって、 例えば直交し ているように場合も考えられる。

Claims

請 求 の 範 囲
( 1 ) ポリゴンで構成される 3次元画像を所定投影面上に透視変換して疑似 3次元画像を合成する画像合成装置であって、
ポリゴンの各頂点に与えられた頂点画像情報より、 3次元画像を構成する ポリゴン内部の各ドッ トの座標及びこの各ドッ 卜の座標に対応すべきテクス チヤ座標を求めるプロセッサ部と、
前記各ドッ 卜の座標により指定されるァ ドレス位置に、 前記プロセッサ部 により求められた前記テクスチャ座標を記憶するフィ一ルドバッファ部と、 前記テクスチャ座標により指定されるァ ドレス位置に所定のレンダリ ング 情報を記憶するレンダリ ング情報記憶部と、
前記フィ ールドバッファ部から前記テクスチャ座標を読み出し、 このテク スチヤ座標に基づいて前記レンダリ ング情報記憶部からレンダリング情報を 読み出して画像情報を形成する画像情報形成部とを含み、
前記プロセッサ部は、 前記各ドッ 卜の座標及びこれに対応するテクスチャ 座標を間引いて演算する間引き演算部を有し、
前記画像情報形成部は、 間引かれたドッ トの両隣のドッ トの前記フィール ドバッファ部に記憶されたテクスチャ座標に基づいて、 間引かれたドッ 卜の テクスチャ座標を補間処理する補間演算部を有することを特徴とする画像合 成装 0
( 2 ) 請求項 ( 1 ) において、
前記プロセッサ部は、 ポリゴンの各項点に与えられた頂点画像情報より、 前記各ドッ トの座標に対応する輝度情報を更に求め、
前記フィールドバッファ部には、 前記各ドッ 卜の座標により指定されるァ ドレス位置に、 前記プロセッサ部により求められた前記輝度情報が更に記憶 され、
前記補間演算部が、 間引かれたドッ 卜の両隣のドッ 卜の前記フィールドバ ッファ部に記憶された輝度情報に基づいて、 間引かれたドッ トの輝度情報に ついても補間処理を行うことを特徵とする画像合成装置。
(3) 請求項 (1 ) において、
前記レンダリング情報記憶部に代えて、 前記テクスチャ座標に対して所定 の関数演算処理を施すことでレンダリング情報を求める関数演算部を含み、 前記画像情報形成部は、 前記フィ一ルドバッファ部から前記テクスチヤ座 標を読み出し、 このテクスチャ座標に基づいて前記関数演算部によりレンダ リング情報を求め画像情報を形成することを特徴とする画像合成装置。
(4) 請求項 (1 ) において、
前記レンダリング情報記憶部に記憶されるレンダリング情報のうち少なく とも一種類がカラー情報であり、 このカラー情報を前記テクスチャ座標によ り読み出して画像情報の形成を行うことを特徴とする画像合成装置。
(5) 請求項 (1 ) において、
前記レンダリング情報記憶部に記憶されるレンダリング情報のうち少なく とも一種類が表面形状情報であり、 この表面形状情報を前記テクスチャ座標 により読み出して画像情報の形成を行うことを特徴とする画像合成装置。
(6) 請求項 (1 ) において、
前記補間演算部は、 間引かれたドッ 卜の両隣のドッ トのテクスチャ座標を 線形補間することにより前記補間処理を行うことを特徴をする画像合成装置。
(7) 請求項 (2) において、 - 前記補間演算部は、 間引かれたドッ 卜の両隣のドッ 卜のテクスチャ座標を 線形補間することにより前記補間処理を行うことを特徴をする画像合成装置。
(8) 請求項 ( 1 ) において、
前記間引き演算部は、 ポリゴンの輪郭線上のドッ ト又は他のポリゴンとの 境界線上のドッ トについては間引き処理を行わないことを特徵とする両像合 成装置 0
(9) 請求項 (2) において、
前記間引き演算部は、 ポリゴンの輪郭線上のドッ ト又は他のポリゴンとの 境界線上のドッ トについては間引き処理を行わないことを特徴とする画像合 成装置。
( 1 0 ) 請求項 (3 ) において、
前記間引き演算部は、 ポリゴンの輪郭線上のドッ ト又は他のポリゴンとの 境界線上のドッ 卜については間引き処理を行わないことを特徴とする画像合 成装置。
( 1 1 ) 請求項 (1 ) において、
前記フィールドバッファ部には、 ポリゴンの画像が描かれないドッ トは空 き ドッ トとして書き込まれ、 また、 ポリゴンを識別するためのポリゴン識別 番号が更に書き込まれ、
前記補間演算部は、 処理の対象となる ドッ トが空き ドッ トであり、 そのド ッ 卜の両隣のドッ 卜のポリゴン識別番号が同一であり且つそのドッ 卜の両隣 のドッ 卜のいずれも空き ドッ 卜ではないドッ トについて前記補間処理を行う ことを特徴とする画像合成装置。
( 1 2 ) 請求項 (2 ) において、
前記フィールドバッファ部には、 ポリゴンの画像が描かれないドッ トは空 き ドッ トとして書き込まれ、 また、 ポリゴンを識別するためのポリゴン識別 番号が更に書き込まれ、
前記補間演算部は、 処理の対象となる ドッ 卜が空き ドッ トであり、 そのド ッ トの両隣の ドッ トのポリゴン識別番号が同一であり且つそのド-ッ 卜の両隣 のドッ 卜のいずれも空き ドッ 卜ではないドッ 卜について前記補間処理を行う ことを特徴とする画像合成装置。
( 1 3 ) 請求項 (3 ) において、
前記フィールドバッファ部には、 ポリゴンの画像が描かれないドッ トは空 き ドッ トとして書き込まれ、 また、 ポリゴンを識別するためのポリゴン識別 番号が更に書き込まれ、
前記補間演算部は、 処理の対象となる ドッ トが空き ドッ トであり、 そのド ッ トの両隣のドッ トのポリゴン識别番号が同一であり且つそのドッ 卜の両隣 のドッ 卜のいずれも空き ドッ トではないドッ 卜について前記補間処理を行う ことを特徴とする画像合成装置。
(14) 請求項 (8) において、
前記フィールドバッファ部には、 ポリゴンの画像が描かれないドッ トは空 き ドッ トとして書き込まれ、 また、 ポリゴンを識別するためのポリゴン識別 番号が更に書き込まれ、
前記補間演算部は、 処理の対象となるドッ トが空き ドッ トであり、 そのド ッ 卜の両隣のドッ 卜のポリゴン識別番号が同一であり且つそのドッ 卜の両隣 のドッ 卜のいずれも空き ドッ トではないドッ トについて前記補間処理を行う ことを特徴とする画像合成装置。
(15) 請求項 (9) において、
前記フィ一ルドバッファ部には、 ポリゴンの画像が描かれないドッ トは空 き ドッ トとして書き込まれ、 また、 ポリゴンを識別するためのポリゴン識別 番号が更に書き込まれ、
前記補間演算部は、 処理の対象となるドッ トが空き ドッ トであり、 そのド ッ トの両隣のドッ トのポリゴン識別番号が同一であり且つそのドッ トの両隣 の ドッ トのいずれも空き ドッ 卜ではないドッ 卜について前記補間処理を行う ことを特徴とする画像合成装置。
(16) 請求項 (10) において、
前記フィールドバッファ部には、 ポリゴンの画像が描かれない-ドッ トは空 き ドッ トとして書き込まれ、 また、 ポリゴンを識別するためのポリゴン識別 番号が更に書き込まれ、 ' 前記補間演算部は、 処理の対象となるドッ 卜が空きドッ トであり、 そのド ッ トの両隣のドッ トのポリゴン識別番号が同一であり且つそのドッ 卜の両隣 のドッ 卜のいずれも空き ドッ 卜ではないドッ トについて前記補間処理を行う ことを特徴とする画像合成装置。
(17) 請求項 (14) において、
前記間引き演算部、 補間演算部における間引き処理、 補間処理が画面上で 連続した複数ドッ ト毎に行われることを特徴とする画像合成装置。
(18) 請求項 (15) において、 前記間引き演算部、 補間演算部における間引き処理、 補間処理が画面上で 連続した複数ドッ ト毎に行われることを特徴とする画像合成装置。
(19) 請求項 (16) において、
前記間引き演算部、 補間演算部における間引き処理、 補間処理が画面上で 連続した複数ドッ ト毎に行われることを特徴とする画像台成装置。
(20) 請求項 (14) において、
3次元画像を構成する各ポリゴンに共通の画像情報であるァトリビュート データを記憶するァ卜リビュー卜デ一夕記憶部を更に含み、
前記フィ一ルドバッファから読み出された前記ポリゴン識別番号に基づい て前記ァトリビュートデータ記憶部からァトリビュートデ一夕を読み出して 画像情報の形成を行うことを特徴とする画像合成装置。
PCT/JP1993/001206 1992-08-26 1993-08-26 Image synthesizer WO1994004990A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
GB9407871A GB2275403B (en) 1992-08-26 1993-08-26 Image synthesizing system
US08/211,395 US5553208A (en) 1992-08-26 1993-08-26 Image synthesizing system having a field buffer unit that stores texture coordinates

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP4/252139 1992-08-26
JP25213992 1992-08-26

Publications (1)

Publication Number Publication Date
WO1994004990A1 true WO1994004990A1 (en) 1994-03-03

Family

ID=17233023

Family Applications (2)

Application Number Title Priority Date Filing Date
PCT/JP1993/001206 WO1994004990A1 (en) 1992-08-26 1993-08-26 Image synthesizer
PCT/JP1993/001205 WO1994004989A1 (en) 1992-02-28 1993-08-26 Image synthesizer

Family Applications After (1)

Application Number Title Priority Date Filing Date
PCT/JP1993/001205 WO1994004989A1 (en) 1992-02-28 1993-08-26 Image synthesizer

Country Status (3)

Country Link
US (6) US5621867A (ja)
GB (4) GB2270243B (ja)
WO (2) WO1994004990A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008033848A (ja) * 2006-08-01 2008-02-14 Digital Media Professional:Kk コンピュータ・グラフィックス回路及びこの回路を用いて、二次元表示システムに表示される三次元オブジェクトに適用される二次元擬似ランダム・テクスチャ・パターンを、一次元テクスチャ画像を用いて生成する三次元コンピュータ・グラフィックス装置

Families Citing this family (119)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3904244B2 (ja) * 1993-09-17 2007-04-11 株式会社ルネサステクノロジ シングル・チップ・データ処理装置
US7859551B2 (en) * 1993-10-15 2010-12-28 Bulman Richard L Object customization and presentation system
US6407817B1 (en) * 1993-12-20 2002-06-18 Minolta Co., Ltd. Measuring system with improved method of reading image data of an object
JP2846252B2 (ja) * 1994-08-22 1999-01-13 株式会社ナムコ 3次元シミュレータ装置及び画像合成方法
TW278162B (ja) * 1994-10-07 1996-06-11 Yamaha Corp
US5793372A (en) * 1994-10-21 1998-08-11 Synthonics Incorporated Methods and apparatus for rapidly rendering photo-realistic surfaces on 3-dimensional wire frames automatically using user defined points
JP3176236B2 (ja) * 1994-11-30 2001-06-11 株式会社ソニー・コンピュータエンタテインメント 信号再生装置及び信号再生方法
JP2637931B2 (ja) * 1994-12-01 1997-08-06 インターナショナル・ビジネス・マシーンズ・コーポレイション テクスチャ・マッピングを行うコンピュータ・システム
US5949409A (en) * 1994-12-02 1999-09-07 Sony Corporation Image processing in which the image is divided into image areas with specific color lookup tables for enhanced color resolution
JP3647487B2 (ja) * 1994-12-02 2005-05-11 株式会社ソニー・コンピュータエンタテインメント テクスチャマッピング装置
JP3578498B2 (ja) * 1994-12-02 2004-10-20 株式会社ソニー・コンピュータエンタテインメント 画像情報処理装置
US5757376A (en) * 1994-12-02 1998-05-26 Sony Corporation Method of producing image data and associated recording medium
US7690043B2 (en) * 1994-12-19 2010-03-30 Legal Igaming, Inc. System and method for connecting gaming devices to a network for remote play
GB9501832D0 (en) * 1995-01-31 1995-03-22 Videologic Ltd Texturing and shading of 3-d images
JPH08287218A (ja) * 1995-04-10 1996-11-01 Sharp Corp 画像合成装置
US7715642B1 (en) * 1995-06-06 2010-05-11 Hewlett-Packard Development Company, L.P. Bitmap image compressing
US5751292A (en) * 1995-06-06 1998-05-12 Hewlett-Packard Company Texture mapping method and system
US5801708A (en) * 1995-06-06 1998-09-01 Hewlett-Packard Company MIP map texture storage by dividing and allocating among multiple blocks
EP0747858B1 (en) * 1995-06-06 2005-12-28 Hewlett-Packard Company, A Delaware Corporation Texture cache
US5745118A (en) * 1995-06-06 1998-04-28 Hewlett-Packard Company 3D bypass for download of textures
US5790130A (en) * 1995-06-08 1998-08-04 Hewlett-Packard Company Texel cache interrupt daemon for virtual memory management of texture maps
US5964810A (en) * 1995-06-09 1999-10-12 Xanavi Informatics Corporation Map display apparatus
JP3649478B2 (ja) * 1995-07-20 2005-05-18 株式会社ソニー・コンピュータエンタテインメント 画像情報処理装置及び画像情報処理方法
US6023278A (en) * 1995-10-16 2000-02-08 Margolin; Jed Digital map generator and display system
JP3867295B2 (ja) * 1995-11-14 2007-01-10 ソニー株式会社 画像処理装置及び画像処理方法
US5772297A (en) * 1995-11-15 1998-06-30 Creative Technology, Ltd. 3D graphics library
US6331856B1 (en) 1995-11-22 2001-12-18 Nintendo Co., Ltd. Video game system with coprocessor providing high speed efficient 3D graphics and digital audio signal processing
US6028593A (en) * 1995-12-01 2000-02-22 Immersion Corporation Method and apparatus for providing simulated physical interactions within computer generated environments
US7190371B2 (en) 1996-02-08 2007-03-13 Palm Charles S 3D stereo browser for the internet
US7038698B1 (en) 1996-02-08 2006-05-02 Palm Charles S 3D stereo browser for the internet
US7091991B2 (en) * 1996-02-08 2006-08-15 Palm Charles S 3D stereo browser for the internet
DE19606357A1 (de) * 1996-02-12 1997-08-14 Gmd Gmbh Bildverarbeitungsverfahren zur Darstellung von spiegelnden Objekten und zugehörige Vorrichtung
JP3586991B2 (ja) * 1996-08-30 2004-11-10 ソニー株式会社 テクスチャ・データ読出装置およびレンダリング装置
US6108005A (en) * 1996-08-30 2000-08-22 Space Corporation Method for producing a synthesized stereoscopic image
WO1998015920A1 (en) * 1996-10-08 1998-04-16 Image Technology Laboratories, Inc. Method of displaying three-dimensional images
JPH10187951A (ja) * 1996-12-27 1998-07-21 Namco Ltd 画像合成装置及び画像合成方法
JP3514945B2 (ja) * 1997-05-26 2004-04-05 株式会社ソニー・コンピュータエンタテインメント 画像作成方法および画像作成装置
US6014143A (en) * 1997-05-30 2000-01-11 Hewlett-Packard Company Ray transform method for a fast perspective view volume rendering
CN1231101A (zh) * 1997-05-30 1999-10-06 索尼公司 图像映射装置和图像映射方法、以及图像生成装置和图像生成方法
DE19806986A1 (de) * 1997-05-30 1998-12-03 Hewlett Packard Co Festkommaverfahren für schnelle und präzise dreidimensionale räumliche Transformationen
JPH118753A (ja) * 1997-06-18 1999-01-12 Nec Corp 電子透かし挿入装置
US6208347B1 (en) 1997-06-23 2001-03-27 Real-Time Geometry Corporation System and method for computer modeling of 3D objects and 2D images by mesh constructions that incorporate non-spatial data such as color or texture
US6226006B1 (en) * 1997-06-27 2001-05-01 C-Light Partners, Inc. Method and apparatus for providing shading in a graphic display system
US6016151A (en) * 1997-09-12 2000-01-18 Neomagic Corp. 3D triangle rendering by texture hardware and color software using simultaneous triangle-walking and interpolation for parallel operation
US5956043A (en) * 1997-09-18 1999-09-21 Novell, Inc. Textured tile rotation system and method
IL124579A (en) 1997-10-15 2006-12-10 Multitext Ltd Method and system for generation and use of multi-layered text
US6157985A (en) 1997-10-16 2000-12-05 Seagate Technology Llc Single-cycle variable period buffer manager for disk controllers
GB2331217B (en) * 1997-11-07 2000-08-30 Sega Enterprises Kk Imagae processing apparatus and method
US6320580B1 (en) 1997-11-07 2001-11-20 Sega Enterprises, Ltd. Image processing apparatus
US6097397A (en) * 1997-11-20 2000-08-01 Real 3D, Inc. Anisotropic texture mapping using silhouette/footprint analysis in a computer image generation system
JP2939230B1 (ja) * 1998-03-05 1999-08-25 株式会社ナムコ 画像生成装置及び情報記憶媒体
US6201546B1 (en) 1998-05-29 2001-03-13 Point Cloud, Inc. Systems and methods for generating three dimensional, textured models
US6552726B2 (en) * 1998-07-17 2003-04-22 Intel Corporation System and method for fast phong shading
US6300958B1 (en) * 1998-07-17 2001-10-09 T-Surf Corp. Global constrained parameterization of triangulated surfaces
IE980591A1 (en) * 1998-07-20 2000-02-09 Damien James Lee Three dimensional image processing
JP3427973B2 (ja) * 1998-12-09 2003-07-22 日本電気株式会社 オブジェクト表示記述文書変換装置及びブラウザ
US6738059B1 (en) * 1998-12-18 2004-05-18 Kabushiki Kaisha Sega Enterprises Apparatus and methods for image processing using mixed display objects
JP4240343B2 (ja) * 1998-12-19 2009-03-18 株式会社セガ 画像生成装置および画像生成方法
US20030158786A1 (en) 1999-02-26 2003-08-21 Skyline Software Systems, Inc. Sending three-dimensional images over a network
AUPP898499A0 (en) * 1999-03-02 1999-03-25 University Of Queensland, The Method for image texture analysis
JP3133299B2 (ja) * 1999-03-12 2001-02-05 株式会社スクウェア ゲーム装置、動画像表示方法及び記録媒体
WO2000062255A1 (en) * 1999-04-09 2000-10-19 Sony Computer Entertainment Inc. Method and apparatus for performing perspective transformation
US6094492A (en) * 1999-05-10 2000-07-25 Boesen; Peter V. Bone conduction voice transmission apparatus and system
JP3417883B2 (ja) 1999-07-26 2003-06-16 コナミ株式会社 画像作成装置、画像作成方法、画像作成プログラムが記録されたコンピュータ読み取り可能な記録媒体およびビデオゲーム装置
US6784882B1 (en) * 1999-09-10 2004-08-31 Sony Computer Entertainment Inc. Methods and apparatus for rendering an image including portions seen through one or more objects of the image
US6717577B1 (en) 1999-10-28 2004-04-06 Nintendo Co., Ltd. Vertex cache for 3D computer graphics
US6618048B1 (en) 1999-10-28 2003-09-09 Nintendo Co., Ltd. 3D graphics rendering system for performing Z value clamping in near-Z range to maximize scene resolution of visually important Z components
US7136070B1 (en) * 1999-12-06 2006-11-14 Nvidia Corporation System, method and computer program product for using an arbitrary quantity as texture address
US6456291B1 (en) * 1999-12-09 2002-09-24 Ati International Srl Method and apparatus for multi-pass texture mapping
US6674484B1 (en) 2000-01-10 2004-01-06 Koninklijke Philips Electronics N.V. Video sample rate conversion to achieve 3-D effects
US7071937B1 (en) 2000-05-30 2006-07-04 Ccvg, Inc. Dirt map method and apparatus for graphic display system
US6791561B1 (en) 2000-08-22 2004-09-14 Sony Corporation Method and apparatus for rendering video data
US7184059B1 (en) 2000-08-23 2007-02-27 Nintendo Co., Ltd. Graphics system with copy out conversions between embedded frame buffer and main memory
US6707458B1 (en) 2000-08-23 2004-03-16 Nintendo Co., Ltd. Method and apparatus for texture tiling in a graphics system
US6636214B1 (en) 2000-08-23 2003-10-21 Nintendo Co., Ltd. Method and apparatus for dynamically reconfiguring the order of hidden surface processing based on rendering mode
US7576748B2 (en) * 2000-11-28 2009-08-18 Nintendo Co. Ltd. Graphics system with embedded frame butter having reconfigurable pixel formats
US6937245B1 (en) 2000-08-23 2005-08-30 Nintendo Co., Ltd. Graphics system with embedded frame buffer having reconfigurable pixel formats
US6980218B1 (en) 2000-08-23 2005-12-27 Nintendo Co., Ltd. Method and apparatus for efficient generation of texture coordinate displacements for implementing emboss-style bump mapping in a graphics rendering system
US7538772B1 (en) 2000-08-23 2009-05-26 Nintendo Co., Ltd. Graphics processing system with enhanced memory controller
US6811489B1 (en) 2000-08-23 2004-11-02 Nintendo Co., Ltd. Controller interface for a graphics system
US6700586B1 (en) 2000-08-23 2004-03-02 Nintendo Co., Ltd. Low cost graphics with stitching processing hardware support for skeletal animation
JP4740476B2 (ja) * 2000-08-23 2011-08-03 任天堂株式会社 グラフィックスシステム内におけるn個のアルファ演算の論理結合を提供する方法および装置
US7196710B1 (en) 2000-08-23 2007-03-27 Nintendo Co., Ltd. Method and apparatus for buffering graphics data in a graphics system
US7061502B1 (en) 2000-08-23 2006-06-13 Nintendo Co., Ltd. Method and apparatus for providing logical combination of N alpha operations within a graphics system
US6825851B1 (en) 2000-08-23 2004-11-30 Nintendo Co., Ltd. Method and apparatus for environment-mapped bump-mapping in a graphics system
US6828980B1 (en) * 2000-10-02 2004-12-07 Nvidia Corporation System, method and computer program product for z-texture mapping
US7230628B1 (en) * 2000-10-05 2007-06-12 Shutterfly, Inc. Previewing a framed image print
US6614431B1 (en) * 2001-01-18 2003-09-02 David J. Collodi Method and system for improved per-pixel shading in a computer graphics system
DE10102477A1 (de) 2001-01-19 2002-07-25 Storz Endoskop Gmbh Schaffhaus Vorrichtung zum Applizieren von Licht auf eine Gefäßwand
GB0120277D0 (en) 2001-08-18 2001-10-17 Snap On Equipment Ltd Three-dimensional mapping systems for automotive vehicles and other articles
TW544636B (en) * 2001-11-22 2003-08-01 Silicon Integrated Sys Corp Method of texture mapping
US6748325B1 (en) 2001-12-07 2004-06-08 Iwao Fujisaki Navigation system
US20030193503A1 (en) * 2002-04-10 2003-10-16 Mark Seminatore Computer animation system and method
GB2390005A (en) * 2002-06-17 2003-12-24 Royal Holloway University Of L Screening Apparatus
US20040046765A1 (en) * 2002-09-06 2004-03-11 Laurent Lefebvre Gradient noise engine with shared memory
US7336275B2 (en) * 2002-09-06 2008-02-26 Ati Technologies Inc. Pseudo random number generator and method
US20130260879A1 (en) 2002-10-09 2013-10-03 Michael W. Saunders System and Method for Connecting Gaming Devices to a Network for Remote Play
US7321682B2 (en) * 2002-11-12 2008-01-22 Namco Bandai Games, Inc. Image generation system, image generation method, program, and information storage medium
US7680322B2 (en) * 2002-11-12 2010-03-16 Namco Bandai Games Inc. Method of fabricating printed material for stereoscopic viewing, and printed material for stereoscopic viewing
US7202867B1 (en) 2003-01-31 2007-04-10 Microsoft Corporation Generation of glow effect
US7274365B1 (en) 2003-01-31 2007-09-25 Microsoft Corporation Graphical processing of object perimeter information
TW594594B (en) * 2003-05-16 2004-06-21 Ind Tech Res Inst A multilevel texture processing method for mapping multiple images onto 3D models
JP4278434B2 (ja) * 2003-05-19 2009-06-17 パナソニック株式会社 通信装置、情報共有システムおよび情報共有方法
JP3852934B2 (ja) * 2003-05-20 2006-12-06 株式会社バンダイナムコゲームス 画像処理システム、プログラム及び情報記憶媒体
US7573599B2 (en) * 2004-05-20 2009-08-11 Primax Electronics Ltd. Method of printing geometric figures
US7880738B2 (en) * 2005-07-14 2011-02-01 Molsoft Llc Structured documents and systems, methods and computer programs for creating, producing and displaying three dimensional objects and other related information in those structured documents
US7305127B2 (en) * 2005-11-09 2007-12-04 Aepx Animation, Inc. Detection and manipulation of shadows in an image or series of images
US7477777B2 (en) * 2005-10-28 2009-01-13 Aepx Animation, Inc. Automatic compositing of 3D objects in a still frame or series of frames
EP2015256A4 (en) * 2006-04-24 2010-05-12 Panasonic Corp DRAWING DEVICE AND DRAWING METHOD
US10795457B2 (en) 2006-12-28 2020-10-06 D3D Technologies, Inc. Interactive 3D cursor
US11228753B1 (en) 2006-12-28 2022-01-18 Robert Edwin Douglas Method and apparatus for performing stereoscopic zooming on a head display unit
US11315307B1 (en) 2006-12-28 2022-04-26 Tipping Point Medical Images, Llc Method and apparatus for performing rotating viewpoints using a head display unit
US11275242B1 (en) 2006-12-28 2022-03-15 Tipping Point Medical Images, Llc Method and apparatus for performing stereoscopic rotation of a volume on a head display unit
GB2448185A (en) * 2007-04-05 2008-10-08 Generated Packaging Ltd Comp High definition image generation from low definition representation
US8400448B1 (en) * 2007-12-05 2013-03-19 The United States Of America, As Represented By The Secretary Of The Navy Real-time lines-of-sight and viewsheds determination system
US20120019541A1 (en) * 2010-07-20 2012-01-26 Advanced Micro Devices, Inc. Multi-Primitive System
US10810159B2 (en) 2014-10-14 2020-10-20 Microsoft Technology Licensing, Llc. Modular updating of visualizations
US10489967B2 (en) 2017-02-22 2019-11-26 Microsoft Technology Licensing, Llc Indexed value blending for use in image rendering
CN113469200A (zh) 2020-03-30 2021-10-01 阿里巴巴集团控股有限公司 数据处理方法和系统、存储介质、计算设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS4929718A (ja) * 1972-07-19 1974-03-16
JPS60250479A (ja) * 1984-05-25 1985-12-11 Hitachi Ltd 面のテクスチヤ表示方式
JPS62186373A (ja) * 1986-02-13 1987-08-14 Agency Of Ind Science & Technol 表示処理方法
JPH01131976A (ja) * 1987-08-05 1989-05-24 Daikin Ind Ltd テクスチャマッピング装置およびその方法

Family Cites Families (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3889107A (en) * 1972-10-16 1975-06-10 Evans & Sutherland Computer Co System of polygon sorting by dissection
GB2091526B (en) * 1981-01-13 1985-10-02 Harris Corp Digital map generator and display system
NL8300872A (nl) * 1983-03-10 1984-10-01 Philips Nv Multiprocessor-rekenmachinesysteem voor het tot een gekleurde afbeelding verwerken van in een hierarchische datastruktuur gedefinieerde objekt-elementen.
US4594673A (en) * 1983-06-28 1986-06-10 Gti Corporation Hidden surface processor
US4615013A (en) * 1983-08-02 1986-09-30 The Singer Company Method and apparatus for texture generation
JPS60246481A (ja) * 1984-05-21 1985-12-06 Yokogawa Hokushin Electric Corp 図形表示装置
JPS60256880A (ja) * 1984-06-04 1985-12-18 Yokogawa Hokushin Electric Corp 3次元図形表示装置
US4697178A (en) * 1984-06-29 1987-09-29 Megatek Corporation Computer graphics system for real-time calculation and display of the perspective view of three-dimensional scenes
DE3689271T2 (de) * 1985-02-26 1994-02-24 Sony Corp Verfahren zur Bildanzeige.
EP0205252B1 (en) * 1985-05-08 1989-09-13 Sony Corporation Video signal processing
SE445154B (sv) * 1985-07-08 1986-06-02 Ibm Svenska Ab Metod for att avlegsna dolda linjer
GB2181929B (en) * 1985-10-21 1989-09-20 Sony Corp Methods of and apparatus for video signal processing
JPS62186374A (ja) * 1986-02-12 1987-08-14 Toshiba Corp 境界抽出装置
JPS62231380A (ja) * 1986-03-31 1987-10-09 Namuko:Kk 画像合成装置
JPS62231379A (ja) * 1986-03-31 1987-10-09 Namuko:Kk 画像合成装置
GB2194656B (en) * 1986-09-03 1991-10-09 Ibm Method and system for solid modelling
JP2612260B2 (ja) * 1986-09-24 1997-05-21 ダイキン工業株式会社 テクスチヤマツピング装置
US4807158A (en) * 1986-09-30 1989-02-21 Daleco/Ivex Partners, Ltd. Method and apparatus for sampling images to simulate movement within a multidimensional space
US4935879A (en) * 1987-08-05 1990-06-19 Daikin Industries, Ltd. Texture mapping apparatus and method
JPH0831139B2 (ja) * 1987-09-29 1996-03-27 ファナック株式会社 形状の陰線処理方法
US4945495A (en) * 1987-10-21 1990-07-31 Daikin Industries, Ltd. Image memory write control apparatus and texture mapping apparatus
US5361386A (en) * 1987-12-04 1994-11-01 Evans & Sutherland Computer Corp. System for polygon interpolation using instantaneous values in a variable
US5086496A (en) * 1988-05-02 1992-02-04 Arch Development Corporation Method for hidden line and surface removal in a three dimensional display
US5097427A (en) * 1988-07-06 1992-03-17 Hewlett-Packard Company Texture mapping for computer graphics display controller system
FR2635393B1 (fr) * 1988-08-10 1990-10-19 Thomson Csf Procede d'elimination des faces cachees, pour la synthese d'une image filaire tridimensionnelle
US5175806A (en) * 1989-03-28 1992-12-29 Computer Design, Inc. Method and apparatus for fast surface detail application to an image
EP0658041B1 (en) * 1989-04-10 2000-07-05 Canon Kabushiki Kaisha Image reduction apparatus and method
JP2600904B2 (ja) * 1989-05-23 1997-04-16 ダイキン工業株式会社 画像合成方法およびその装置
JP3024145B2 (ja) * 1989-07-12 2000-03-21 株式会社日立製作所 テクスチャマッピング方法
DE3922874A1 (de) * 1989-07-12 1991-01-24 Webasto Ag Fahrzeugtechnik Windabweiser fuer fahrzeugdaecher mit verschiebbarem deckel
JPH0345428A (ja) * 1989-07-13 1991-02-27 Hino Motors Ltd 取外し可能な駆動ユニット付自動車
US5214753A (en) * 1989-07-31 1993-05-25 Shographics, Inc. Video system with parallel attribute interpolations
JPH0371277A (ja) * 1989-08-10 1991-03-27 Daikin Ind Ltd サーフェス・モデル描画方法およびその装置
GB2240015A (en) * 1990-01-15 1991-07-17 Philips Electronic Associated Texture memory addressing
US5224208A (en) * 1990-03-16 1993-06-29 Hewlett-Packard Company Gradient calculation for texture mapping
US5222205A (en) * 1990-03-16 1993-06-22 Hewlett-Packard Company Method for generating addresses to textured graphics primitives stored in rip maps
US5179638A (en) * 1990-04-26 1993-01-12 Honeywell Inc. Method and apparatus for generating a texture mapped perspective view
US5283860A (en) * 1990-11-15 1994-02-01 International Business Machines Corporation System and method for displaying trimmed surfaces using bitplane masking
DE69132796T2 (de) * 1990-11-30 2002-04-25 Sun Microsystems Inc Verfahren und gerät zur darstellung von grafischen bildern
US5230039A (en) * 1991-02-19 1993-07-20 Silicon Graphics, Inc. Texture range controls for improved texture mapping
JP2720920B2 (ja) * 1991-03-11 1998-03-04 工業技術院長 画像処理システムにおける実写画像とコンピュータグラフィックスの合成方法
GB2259432A (en) * 1991-09-06 1993-03-10 Canon Res Ct Europe Ltd Three dimensional graphics processing
US5295235A (en) * 1992-02-14 1994-03-15 Steve Newman Polygon engine for updating computer graphic display employing compressed bit map data
US5327509A (en) * 1992-04-27 1994-07-05 Star Technologies, Inc. Compressed image system for texture patterns
US5422988A (en) * 1992-06-25 1995-06-06 International Business Machines Corporation Method and apparatus for rendering a three-dimensional object with a plurality of dots
US5268967A (en) * 1992-06-29 1993-12-07 Eastman Kodak Company Method for automatic foreground and background detection in digital radiographic images
JPH0680375A (ja) * 1992-09-04 1994-03-22 Murata Mach Ltd 物品搬送装置
US5369739A (en) * 1993-07-09 1994-11-29 Silicon Graphics, Inc. Apparatus and method for generating point sample masks in a graphics display system
JPH10131976A (ja) * 1996-11-01 1998-05-22 Tsubakimoto Chain Co 回転体固定具

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS4929718A (ja) * 1972-07-19 1974-03-16
JPS60250479A (ja) * 1984-05-25 1985-12-11 Hitachi Ltd 面のテクスチヤ表示方式
JPS62186373A (ja) * 1986-02-13 1987-08-14 Agency Of Ind Science & Technol 表示処理方法
JPH01131976A (ja) * 1987-08-05 1989-05-24 Daikin Ind Ltd テクスチャマッピング装置およびその方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008033848A (ja) * 2006-08-01 2008-02-14 Digital Media Professional:Kk コンピュータ・グラフィックス回路及びこの回路を用いて、二次元表示システムに表示される三次元オブジェクトに適用される二次元擬似ランダム・テクスチャ・パターンを、一次元テクスチャ画像を用いて生成する三次元コンピュータ・グラフィックス装置

Also Published As

Publication number Publication date
US5553208A (en) 1996-09-03
US5615322A (en) 1997-03-25
US6333747B1 (en) 2001-12-25
GB2272137B (en) 1996-07-03
US5561746A (en) 1996-10-01
GB2275402A (en) 1994-08-24
GB9407871D0 (en) 1994-06-22
GB9317708D0 (en) 1993-10-13
GB2275402B (en) 1996-11-27
GB2272137A (en) 1994-05-04
GB9317791D0 (en) 1993-10-13
GB9407870D0 (en) 1994-06-22
GB2275403A (en) 1994-08-24
GB2270243A (en) 1994-03-02
US5621867A (en) 1997-04-15
GB2275403B (en) 1996-11-27
US5870101A (en) 1999-02-09
GB2270243B (en) 1996-02-28
WO1994004989A1 (en) 1994-03-03

Similar Documents

Publication Publication Date Title
WO1994004990A1 (en) Image synthesizer
US5097427A (en) Texture mapping for computer graphics display controller system
US5729672A (en) Ray tracing method and apparatus for projecting rays through an object represented by a set of infinite surfaces
US5230039A (en) Texture range controls for improved texture mapping
US5307450A (en) Z-subdivision for improved texture mapping
US6181352B1 (en) Graphics pipeline selectively providing multiple pixels or multiple textures
US5856829A (en) Inverse Z-buffer and video display system having list-based control mechanism for time-deferred instructing of 3D rendering engine that also responds to supervisory immediate commands
US4967392A (en) Drawing processor for computer graphic system using a plurality of parallel processors which each handle a group of display screen scanlines
US5877769A (en) Image processing apparatus and method
US20080273030A1 (en) Drawing apparatus and drawing method
JPH0757117A (ja) テクスチャマップへの索引を生成する方法及びコンピュータ制御表示システム
JPH0535913B2 (ja)
AU5785101A (en) Recirculating shade tree blender for a graphics system
WO2000002165A1 (fr) Procede permettant de produire des donnees de polygone et afficheur d&#39;images utilisant lesdites donnees
KR910009102B1 (ko) 화상합성 장치
JPH10208067A (ja) 画像生成装置及び画像生成方法
JP2883523B2 (ja) 画像合成装置及び画像合成方法
CA2260345C (en) Signal processing apparatus and image processing apparatus
JP3903557B2 (ja) データ変換装置および画像生成装置
US7372461B2 (en) Image processing apparatus and method of same
EP0425573B1 (en) Texture mapping for computer graphics display controller system
JP2774874B2 (ja) 画像合成装置及び画像合成方法
JP2888640B2 (ja) 画像合成装置及び画像合成方法
JPH06309471A (ja) 3次元グラフィックス描画装置
JP3556517B2 (ja) 3次元画像処理装置

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): GB JP US

WWE Wipo information: entry into national phase

Ref document number: 08211395

Country of ref document: US