METHOD AND APPARATUS FOR GENERATING OUTLINES

Abstract: With an outline generating method, outwards-facing normal vectors are set for a true object, inwards-facing normal vectors are set for an object for adding an outline, the object for adding the outline is further made to be larger than the true object, and these are overlaid, thus allowing an image with an outline added thereto to be instantaneously obtained without placing a load on the CPU.

Description: DESCRIPTION METHOD AND APPARATUS FOR GENERATING OUTLINES BACKGROUND OF THE INVENTION Field of the Invention The present invention relates to a technique for adding an outline to an object in computer graphics. Description of the Related Art Conventionally, drawing methods using polygons have been used for generating virtual three-dimensional images in a simpler fashion. Particularly, in game systems, the above image generating method using polygons is employed due to the reason that three-dimensional images must be generated instantaneously in accordance with player operation information. It is known that the image generating method using polygons is carried out following steps such as: Step 1: An object is divided into polygon areas, thereby forming object data of a collection of polygon apex data (x, y, z). Step 2: The pattern, i.e., texture data is set for the above object data. Step 3: The point of view from the player is set based on the operating information, and the coordinates values for each piece of polygon apex data in the above object data is changed based on this point of view. Step 4: Brightness according to the distance from the set light source is set for each piece of polygon apex data. Step 5: The determined polygon apex data is replaced with two-dimensional data in predetermined units, e.g., every frame. This is generally referred to as perspective conversion. Step 6: The data following perspective conversion is two-dimensional polygon data, and the coordinate values are only x and y. Step 7: Texture data is appropriated to each of the above polygons, i.e., color and patterns are set to the corresponding memory area indicated by the polygon data. This is generally called texture mapping. Step 8: Image data stored in the memory is read out, and displayed on a television monitor. Thus, a three-dimensional image can be obtained with simple processing, by using the above process. Recently, there have been requests for adding an outline to objects using polygons such as described above. This is because adding outlines allows new visual effects to be obtained. However, adding outlines to objects using polygons is not being practiced as of now. The reason is that, in order to add outlines to objects using polygons, the edge of each polygon, i.e., the boundary line for each polygon area must be detected. Inserting this edge detecting into the above step makes the amount of processing to be very great, which would cause deterioration in response to the player's operation, and render the game impractical. SUMMARY OF THE INVENTION Accordingly, it is an object of the present invention to provide a technique whereby outlines can be added to objects using polygons, with simple processing. The present invention has been made in order to achieve the above object, and has the following invention specifying features. The outline generating data generating method according to the present invention comprises a step for generating an object for generating an outline, which is in a homothetic relation with a true object regarding which normal vectors are set outside of self, and which is larger than the true object, based on input parameters. The object for generating an outline may have inward-pointing normal vectors set thereto, and the parameters may comprise at least normal vector data and data indicating size regarding the true object. The outline generating object generating apparatus according to the present invention comprises: parameter input means for inputting at least normal vector data, and data indicating size regarding a true object regarding which normal vectors are set outside of self; and outline generating object data generating means for generating an object for generating an outline, which is in a homothetic relation with a true object regarding which normal vectors are set outside of self, and which is larger than the true object, based on the data from the parameter input means. The outline generating object recording system according to the present invention comprises: parameter input means for inputting at least normal vector data, and data indicating size regarding a true object regarding which normal vectors are set outside of self; outline generating object data generating means for generating an object for generating an outline, which is in a homothetic relation with a true object regarding which normal vectors are set outside of self, and which is larger than the true object, based on the data from the parameter input means; and authoring means for recording the true object data and the outline generating object data to a master for generating computer-readable computer-executable media. The computer-readable computer-executable medium for generating the outline generating object according to the present invention stores the following data in a computer-readable and computer-executable manner: true object data regarding which normal vectors are set outside of self; object data for generating an outline, which is in a homothetic relation with the true object, and which is larger than the true object; and program data for using the object data. The entertainment system according to the present invention comprises: reading means for reading data from a computer-readable computer-executable medium; operating means for inputting various types of operating information; a CPU for performing processing based on program data read from the computer-readable computer-executable medium and operation information input from the operating means; graphic processing means for generating images based on commands from the CPU; and output means for displaying output images from the graphic processing means on a television monitor; wherein the graphic processing means generates an outline for the true object, based on true object data regarding which normal vectors are set outside of self, and object data for generating an outline, which is in a homothetic relation with the true object, and which is larger than the true object, the data having been stored in the computer-readable computer-executable medium, thus adding outlines to objects based on outline generating data. BRIEF DESCRIPTION OF THE DRAWINGS Figs. 1A-1F are conceptual diagrams for describing coloring based on normal lines, wherein; Fig. 1A is an explanatory diagram illustrating outward-facing normal lines; Fig. IB is an explanatory diagram illustrating coloring based on outward- facing normal lines; Fig. 1C is an explanatory diagram illustrating inward-facing normal lines; Fig. ID is an explanatory diagram illustrating coloring based on inward- facing normal lines; Fig. IE is a development illustrating the outer plane of the cube; and Fig. IF is a development illustrating the inner plane of the cube; Fig. 2 is a conceptual diagram illustrating the formation of an outline, wherein; Fig. 2A is an explanatory diagram illustrating a true object OBI set with normal lines facing outwards; Fig. 2B is an explanatory diagram illustrating an object OB2 set with normal lines facing inwards for forming an outline greater than the true object OBI; Fig. 2C is an explanatory diagram illustrating that the outer plane of the object OB2 set with normal lines facing inwards is not colored; and Fig. 2D is an explanatory diagram illustrating the object OB2 which has become an outline regarding the difference with the object OBI and thus colored; Fig. 3 is an explanatory diagram illustrating an example of an object drawn using the method shown in Fig. 2; Fig. 4 is a block diagram illustrating a system for generating an outline generating object and recording this in a computer-readable computer-executable medium; Figs. 5A-5B are diagrams illustrating an example of the data structure of an object to which is added an outline, recorded by the system shown in Fig. 4, wherein; Fig. 5A is a format diagram illustrating true object data; and Fig. 5B is a format diagram illustrating outline generating object data; and Fig. 6 is a block diagram illustrating an example of an entertainment system for displaying an object with an outline shown in Fig. 5 added thereto. DESCRIPTION OF THE PREFERRED EMBODIMENTS The following is a detailed description of embodiments of the outline generating data generating method, apparatus, recording system, computer-readable computer- executable medium, and entertainment system according to the present invention, with reference to the attached drawings. The crux of the present invention is in that a true object to which an outline is to be added, and an object for adding the outline which is in a homothetic relation with the true object and is larger than the true object, are overlaid, and further the directions of the normal vectors are made to be different for these objects. Now, the relation between normal vectors and coloring will be described with reference to Figs. 1A-1F. Fig. 1A shows a certain object. As shown in this Fig. 1A, outwards-facing normal vectors N are set to the visible planes al, bl, and cl of this object. The term outwards-facing means facing outwards from the object, and thus facing toward the player, i.e., the point of view. As shown in Fig. IB, color is applied to the outer planes al, bl, and cl of this object to which outwards-facing normal vectors N are set. As shown in Fig. IB, the object is not transmitting, and accordingly, the inside thereof is not visible. It is like looking at a cubic box that has been painted solid with red paint, for example. In Fig. 1C, inwards-facing normal vectors N are set to the visible planes al, bl, and cl of the object. The term inwards-facing means facing inwards to the object, and thus facing away from the player, i.e., the point of view. As shown in Fig. ID, color is applied to the inner planes a2, b2, c2, d2, e2, and f2 of this object to which inwards-facing normal vectors N are set. At this time, color is not applied to the outer planes al, bl, cl, dl, el, and fl of the object. As shown in Fig. ID, the color on the inside is viewed through the uncolored, i.e., transparent outer planes. This is like looking at a cubic glass box that has been painted solid with red paint on the inside only, for example. Figs. 1E-1F describe this with an example of a cardboard box. Fig. IE is the outside of the cardboard box, and Fig. IF is the inside of the cardboard box. The inside is colored, but the outside is not colored. Representing this state on a television monitor displays the colored inner planes through the uncolored transparent outer planes, as shown in Fig. ID. The present inventor has taken notice of this point, and conceived an arrangement wherein outwards-facing normal vectors are set for the true object, inwards-facing normal vectors are set for the object for adding the outline, the object for adding the outline is further made to be larger than the true object, and these are overlaid. Next, the method for adding the outline with be described with reference to Figs. 2A-2D. As shown in Fig. 2A, first, outwards-facing normal vectors N are set for each of the planes of the true object. Next, as shown in Fig. 2B, an outline generating object OB2, which is in a homothetic relation with the true object OBI and which is larger than the true object OBI is generated, and inwards-facing normal vectors -N are set for each of the planes of the outline generating object OB2. Accordingly, texture of color, pattern, etc., that has been specified beforehand is mapped on the outer plane of the true object OBI, and pre-specified color for generating the outline is set to the inner plane of the outline generating object OB2. As shown in Fig. 2C, when the two objects OBI and OB2 are overlaid, of the overlapped portion of the outline generating object OB2 and the true object OBI, the portion of the true object OBI is all displayed in the state of the predetermined texture of color, pattern, etc., having been mapped thereto, and the remaining portion, i.e., the portion of the outline generating object OB2 that has not overlapped with the true object OBI is all displayed in the predetermined color, as shown in Fig. 2D. The color in this example is black, and this portion becomes the outline. What is important here is that the outer plane of the outline generating object OB2 is transparent, so the inner plane of the outline generating object OB2 colored black is displayed, and this is viewed as the outline. Fig. 3 is a display example wherein the above outline generating method has been applied to an actual character. As can be understood from Fig. 3, adding an outline visually makes a great difference as compared to normal characters formed with polygons. Next, the recording system for generating the above outline generating object, recording this along with the true object and program data onto a master, and manufacturing computer-readable computer executable media from this master, will be described with reference to Fig. 4. The parameter input means 1 is for performing operations such as at least specifying each piece of polygon apex data for the true object data, setting normal vectors for each plane of the generated object, specifying the homothetic relation with the true object and the size ratio to the true object, and so forth. A keyboard, mouse, digitizer, etc., are used. The outline generating object data generating means 2 generates outline generating object data based on the parameters input from the parameter input means 1, i.e., the data of the direction of the normal vectors and the ratio of size as to the true object. The authoring means 3 is for recording the true object data, outline generating object data, texture data, program data, etc., on a master in a predetermined format. Here, the authoring means 3 includes register processing systems and the like for manufacturing a master such as a CD-ROM and a stamper. The computer-readable computer-executable medium 4 is manufactured by the stamper cut from a glass master. Next, the operation primarily concerning the outline generating object data generating means 2 will be described. The polygon apex data for the true object is sequentially input via the parameter input means 1. Once all true object data is input, and outwards-facing normal vectors are set for all polygons, the outline generating object generating process is started. The size ratio data as to the true object is input via the parameter input means 1. Once this value is input, the outline generating object data generating means 2 performs computation processing such that the values of each of piece of polygon apex data (x, y, z) of the true object becomes a value based on the above ratio data, and the outline generating object is generated based on the newly-selected polygon apex data. Fig. 5 illustrates data per unit for the true object, and data per unit for the outline generating object. As shown in Fig. 5, both the data per unit for the true object, and data per unit for the outline generating object are made up of polygon apex data, normal line data, a CLUT (Color Look-Up Table) for specifying color, texture No. data, and so forth. The difference between these sets of data is thus. In comparison with the values x, y, and z for the polygon apex data of the data per unit for the true object (See Fig. 5A), the values x, y, and z for the polygon apex data of the data per unit for the outline generating object (See Fig. 5B) have been respectively increased or decreased by + -. , ± β , and ± γ . The reason that " ± " is involved is that with the x-axis, enlargement in the left direction of the screen reduces the value, with the y-axis, enlargement in the downwards direction of the screen reduces the value, and with the z- axis, enlargement in the depth-wise direction of the screen reduces the value. Another difference is, that while the value of the normal line data of the data per unit for the true object (See Fig. 5A), is "+", i.e., the direction of the normal vector indicated by the normal line data is outwards-facing, the value of the normal line data of the data per unit for the outline generating object (See Fig. 5B), is "-", i.e., the direction of the normal vector indicated by the normal line data is inwards-facing. As described above, in the event that the direction of the normal vector is outwards-facing, the outwards-facing planes are colored, and in the event that the direction of the normal vector is inwards-facing, the inwards-facing planes are colored. The sets of data per unit shown in Fig. 5 are recorded to a master by the authoring means 3 in a bit-stream along with program data, texture data, etc., as described above. Fig. 6 illustrates an example of an entertainment system which reads in program data recorded in the computer-readable computer-executable medium 4, draws objects based on this program data and the operating information from the operating means 9, and adds an outline to the object based on true object data and outline generating object data. The entertainment system shown in Fig. 6 is arranged such that a bus 8 made up of control, data, and addresses busses, is connected to a CPU 7, and connected to this bus 8 are: reading means 5 such as an optical disk drive; main memory 6; operating means 9 such as a controller, keyboard, and so forth; graphics processing means 10 for subjecting the object following perspective conversion to texture mapping processing so as to generate image data for display, based on commands supplied from the CPU 7; output means 11 for converting the image data processed here into standard television signals such as NTSC or PAL for example; a television monitor 12 for displaying the picture signals from the output means as an image on the display screen thereof; a D/A converter 13 for converting digital audio signals into analog audio signals; an amplifier circuit 14 for performing current amplification of the analog audio signals from the D/A converter 13; and a speaker 15 for outputting the audio signals from the amplifier circuit 14 as audio. Next, the operation thereof will be described. Once the computer-readable computer-executable medium 4 is set to the entertainment system, the program data, true object data, outline generating object data, texture data, etc., are read out by the reading means 5. Of the data read out, the program data, true object data, and outline generating object data are each stored in the main memory 6, and the texture data is held in the graphics processing means 10. The player operating the operating means 9 causes the operation information thereof, e.g., information for moving the object, is supplied to the CPU 7 via the bus 8. The CPU 7 determines the point of view based on the above operating information, and changes each set of polygon apex data for the true object data, based on the point of view. At the same time, the CPU 7 also changes each set of polygon apex data for the outline generating object data. Next, brightness is obtained for each polygon apex, by performing light source calculations according to the position of a light source determined beforehand. Next, perspective conversion processing from three-dimensional data to two- dimensional data is performed. Accordingly, the polygon apex data for the true object and the outline generating object consists only of x and y. Next, the CPU 7 supplies the polygon apex data (x, y) of the outline generating object following perspective conversion, normal line data, and the CLUT to the graphics processing means 10. Next, the CPU 7 supplies the polygon apex data (x, y) of the true object following perspective conversion, normal line data, CLUT. and texture No. data to the graphics processing means 10. The graphics processing means 10 sets the polygon area of the outline generating object to the internal frame buffer, and also performs coloring for the outline, based on the CLUT. At this time, the CPU 7 does not add color the outer plane of this object, but only adds the color specified for the outline to the inner plane thereof, since the directions of the normal vectors indicated by normal line data point inwards. In the same manner, the graphics processing means 10 sets the polygon area of the true object to the internal frame buffer, maps the texture based on the texture No. data, and performs coloring based on the CLUT. At this time, the CPU 7 adds color to the outer plane of the true object, since the directions of the normal vectors indicated by normal line data point outwards. Accordingly, an image with an outline added to a true object is drawn on the frame buffer. This image data is supplied to the output means 11 and converted into picture signals, then supplied to the television monitor 12 and displayed on the display screen thereof as an image. As described above, according to the present embodiment, outwards-facing normal vectors are set for the true object, inwards-facing normal vectors are set for the object for adding the outline, the object for adding the outline is further made to be larger than the true object, and these are overlaid, so an image with an outline added thereto can be instantaneously obtained without placing a load on the CPU 7, and this is advantageous since an image with an outline added thereto can be obtained in games and the like with good response. As described above, according to the present invention, outwards-facing normal vectors are set for the true object, inwards-facing normal vectors are set for the object for adding the outline, the object for adding the outline is further made to be larger than the true object, and these are overlaid, thus yielding the advantage that an image with an outline added thereto can be instantaneously obtained without placing a load on the control system.

Claims: CLAIMS 1. An outline generating data generating method, comprising a step for generating an object for generating an outline, which is in a homothetic relation with a true object regarding which normal vectors are set outside of self, and which is larger than said true object, based on input parameters. 2. An outline generating data generating method according to Claim 1, wherein said object for generating outline has inward-pointing normal vectors set thereto. 3. An outline generating data generating method according to Claim 1, wherein said parameters comprise at least normal vector data and data indicating size regarding said true object. 4. An outline generating data generating apparatus, comprising: parameter input means for inputting at least normal vector data, and data indicating size regarding a true object regarding which normal vectors are set outside of self; and outline generating object data generating means for generating an object for generating an outline, which is in a homothetic relation with a true object regarding which normal vectors are set outside of self, and which is larger than said true object, based on said data from said parameter input means. 5. An outline generating data generating apparatus according to Claim 4, wherein said object for generating outline has inward-pointing normal vectors set thereto. 6. A recording system, comprising: parameter input means for inputting at least normal vector data, and data indicating size regarding a true object regarding which normal vectors are set outside of self; outline generating object data generating means for generating an object for generating an outline, which is in a homothetic relation with a true object regarding which normal vectors are set outside of self, and which is larger than said true object, based on said data from said parameter input means; and authoring means for recording said true object data and said outline generating object data to a master for generating computer-readable computer-executable media. 7. A recording system according to Claim 6, wherein said object for generating outline has inward-pointing normal vectors set thereto. 8. A computer-readable executing medium, storing the following data in a computer-readable and computer-executable manner: true object data regarding which normal vectors are set outside of self; object data for generating an outline, which is in a homothetic relation with said true object, and which is larger than said true object; and program data for using said object data. 9. A computer-readable executing medium according to Claim 7, wherein said object data for generating outline has inward-pointing normal vectors set thereto. 10. An entertainment system for adding outlines to objects based on outline generating data, said system comprising: reading means for reading data from a computer-readable computer-executable medium; operating means for inputting various types of operating information; a CPU for performing processing based on program data read from said computer-readable computer-executable medium and operation information input from said operating means; graphic processing means for generating images based on commands from said CPU; and output means for displaying output images from said graphic processing means on a television monitor; wherein said graphic processing means generates an outline for said true object, based on true object data regarding which normal vectors are set outside of self, and object data for generating an outline, which is in a homothetic relation with said true object, and which is larger than said true object, said data having been stored in said computer-readable computer-executable medium. 11. An entertainment system according to Claim 10, wherein said object data for generating outline has inward-pointing normal vectors set thereto.

Inventors: NAKASHIMA KAZUTOSHI, TAMURA TOMOZO, NAKASHIMA, KAZUTOSHI, TAMURA, TOMOZO
Applicants: SONY COMP ENTERTAINMENT INC, SONY COMPUTER ENTERTAINMENT INC.
Application year: 2000
Main classification: G06T15
IPC codes: G06T7, G06T9, G06T11, G06T15