Abstract:
An image output device is operable to output an image based on an image data. An image data supplying device is operable to supply the image data to the image output device. An information output device is provided in the image output device and operable to output information to the image data supplying device as a first data form, the information adapted to be presented to a user and including at least one of text data, image data and sound data. An information reproducing device is provided in the image data supplying device and configured to reproduce the information directly based on the first data form.

Description:
BACKGROUND OF THE INVENTION  
       [0001]     The present invention relates to a technique for notifying, to an operator of an image output device, information relevant to the operation of the image output device.  
         [0002]     For recent image output devices, such as so-called ink jet printers and laser printers, remarkable improvements have been made in various aspects, such as image displaying speed and quality. Therefore, image output devices can be employed for any image types used for artificial images, such as letters and figures, and natural images, such as photographs. Further, accompanying these improvements, various types of apparatuses, such as computers, digital cameras and mobile phones, can be connected to image output devices, and can be used as image data supplying devices to supply image data to the image output devices.  
         [0003]     When the operation state of an image output device, such as “data-reception”, “image output”, “no ink” or “no paper”, is to displayed, generally, code data consonant with the operation state is output by the image output device. Further, since it is difficult for an operator to understand the contents of code data, a technique is proposed whereby an image output device supplies code data to an image data supplying device, and the image data supplying device translates the code data and prepares a display form (as disclosed, for example, in Japanese Patent Publication No. 2002-236783A). Another technique is proposed whereby code data is translated, upon depression of a predetermined button, and a corresponding message is displayed or read aloud, so that an operator can easily understand the contents of the code data (disclosed, for example, in Japanese Patent Publication Nos. 1-147950A and 4-23662A).  
         [0004]     However, according to these conventional techniques, information for translating code data output using an image output device must be stored in advance in the image data supplying device. So long as the code data is standardized in advance, the code data can be translated in the same manner, regardless of which image output device outputs the code data. However, when a new function is provided for, or a new mechanism is mounted on the image output device, additional code data related to the function or the mechanism can be provided. Therefore, by using a method whereby code data are simply standardized in advance, these new code data can not be coped with. As one method, when information that can be employed to translate code data output by the image output device is fetched via the Internet, or read from various types of recording media, the additionally provided code data can be appropriately translated and displayed. However, not all image data supplying devices can be connected to the Internet, nor can they read required data from recording media.  
         [0005]     Moreover, these problems are not limited to a case wherein the operation state of an image output device is displayed, and could also occur in a case wherein specific information, transmitted to an operator, includes the operating method employed by the image output device.  
       SUMMARY OF THE INVENTION  
       [0006]     It is therefore an object of the invention to provide a technique for easily notifying information related to the operation of an image output device to an operator of the image output device, in a form that the operator can easily understand.  
         [0007]     In order to achieve the above object, according to the invention, there is provided an image output system, comprising:  
         [0008]     an image output device, operable to output an image based on an image data;  
         [0009]     an image data supplying device, operable to supply the image data to the image output device;  
         [0010]     an information output device, provided in the image output device and operable to output information to the image data supplying device as a first data form, the information adapted to be presented to a user and including at least one of text data, image data and sound data; and  
         [0011]     an information reproducing device, provided in the image data supplying device and configured to reproduce the information directly based on the first data form.  
         [0012]     Specifically, when the information is output by the image output device in the form of a text or an image, that information is received and displayed as a text or an image. And when the information is output by the image output device in the form of a sound, that information is received and reproduced as a sound.  
         [0013]     As described above, when the information that is output to the image supplying device by the image output device is in a form that a user can understand, the image data supplying device need only reproduce the information received from the image output device for that information to be provided immediately, in an understandable form, for the user. Therefore, data used to translate the information received from the image output device need not be stored in the image supplying device, and regardless of which image output device is connected to the image supplying device, the image supplying device can easily provide appropriate information for the user. Further, since the image data supplying device need only display or reproduce received information, the configuration of the image data supplying device and the control processing can be simplified.  
         [0014]     The information may be indicative of an operation state of the image output device. The operation state of the image output device can, for example, be status information, such as “receiving image data”, “processing data” or “outputting image”, or error information, such as a “no paper” or an “abnormal communication”.  
         [0015]     It is preferable that the operation state of the image output device be provided for the user. This is because, in most cases, it is sufficient for the image data supplying device merely to reproduce received information, and for a complicated process, for the received information, not to be required of the image data supplying device.  
         [0016]     The first data form includes description data indicative of which one of the text data, the image data and the sound data is associated with the information.  
         [0017]     It is preferable that the description form employed for the information provided for the user be flexibly changed. This is because in accordance with the contents, for example, information provided in an appropriate form, such as a text, an image or a sound, can also be provided for the user.  
         [0018]     Here, the description data may be described with a markup language. The term markup language is a general term used for languages in which the structure of a sentence can be expressed by inserting special character strings, called tags, into the sentence. Typical known markup languages are SGML, HTML and XML. Further, the various sentence structures can be expressed as logical structures, stylish structures, like headlines, accessory structures, like indentations and fonts, and structures related to data forms, such as images or sounds.  
         [0019]     With a markup language, various structures can be expressed flexibly and easily by employing tags. Further, data described in an markup language can be appropriately reproduced by employing a simple program. Therefore, it is preferable that information that is to be output by an image output device, and to be provided for a user, be described in a markup language, so that the information can be easily and appropriately provided for the user.  
         [0020]     The image output device may comprise an information reproducing device configured to reproduce the information directly based on the first data form.  
         [0021]     This case is preferable because the image output device need not store both information to be reproduced by the image output device and information to be reproduced by the image data supplying device. Furthermore, since for a user the same information is provided by the image output device and the image supplying device, the user can easily understand the provided contents, without experiencing any confusion.  
         [0022]     According to the invention, there is also provided an image output device operable to output an image based on an image data and adapted to be connected to an image data supplying device operable to supply the image data to the image output device, the image output device comprising:  
         [0023]     an information output device, operable to output information to the image data supplying device as a first data form,  
         [0024]     wherein the information includes at least one of text data, image data and sound data, is adapted to be presented to a user, and is adapted to be reproduced by the image data supplying device directly based on the first data form.  
         [0025]     According to the invention, there is also provided A method for notifying information, comprising:  
         [0026]     connecting an image output device operable to output an image based on an image data and an image data suppler operable to supply the image data to the image output device;  
         [0027]     outputting information from the image output device to the image data supplying device as a first data form, the information adapted to be presented to a user and including at least one of text data, image data and sound data; and  
         [0028]     reproducing the information at the image data supplying device, directly based on the first data form.  
         [0029]     According to the invention, there is also provided a method for notifying information, comprising:  
         [0030]     connecting an image output device operable to output an image based on an image data and an image data suppler operable to supply the image data to the image output device;  
         [0031]     outputting information from the image output device to the image data supplying device as a first data form; and  
         [0032]     configuring the information so as to include at least one of text data, image data and sound data, to be adapted to be presented to a user, and to be adapted to be reproduced by the image data supplying device directly based on the first data form.  
         [0033]     According to the invention, there is also provided a program product comprising a program causing a computer to execute a method for notifying information, comprising:  
         [0034]     connecting an image output device operable to output an image based on an image data and an image data suppler operable to supply the image data to the image output device;  
         [0035]     outputting information from the image output device to the image data supplying device as a first data form, the information adapted to be presented to a user and including at least one of text data, image data and sound data; and  
         [0036]     reproducing the information at the image data supplying device, directly based on the first data form.  
         [0037]     According to the invention, there is also provided a program product comprising a program causing a computer to execute a method for notifying information, comprising:  
         [0038]     connecting an image output device operable to output an image based on an image data and an image data suppler operable to supply the image data to the image output device;  
         [0039]     outputting information from the image output device to the image data supplying device as a first data form; and  
         [0040]     configuring the information so as to include at least one of text data, image data and sound data, to be adapted to be presented to a user, and to be adapted to be reproduced by the image data supplying device directly based on the first data form.  
         [0041]     When this program, or the program stored in a recording medium is read by a computer, and when the above described functions are provided by the computer, an operator of an image output device can be easily and appropriately notified of information that is to be reported to the operator. 
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0042]      FIG. 1  is a block diagram showing an image output system constituted by a game machine and a color printer according to one embodiment of the invention;  
         [0043]      FIG. 2  is a schematic view showing a configuration of the color printer;  
         [0044]      FIG. 3  is a schematic view showing an arrangement of nozzles in an ink ejecting head in the color printer;  
         [0045]      FIG. 4  is a schematic view showing a state that a screen in a game is displayed on a monitor;  
         [0046]      FIG. 5  is a schematic view showing an area that a two-dimensional image is directly displayed in the game screen of  FIG. 4 ;  
         [0047]      FIGS. 6A and 6B  are perspective views showing a shape of a flying boat serving as a main character in the game;  
         [0048]      FIG. 7  is a schematic view showing a state that the shape of the flying boat is expressed by minute planar polygons;  
         [0049]      FIG. 8  is a schematic view showing an object table for managing polygon data of respective objects in the game;  
         [0050]      FIG. 9  is a schematic view showing data structure of the polygon data;  
         [0051]      FIG. 10  is a flowchart of processing for displaying the game screen on the monitor;  
         [0052]      FIG. 11  is a diagram showing a principle of rendering in  FIG. 10 ;  
         [0053]      FIGS. 12A and 12B  show equations for projecting apex coordinates of polygons constituting the object onto coordinates on a two-dimensional plane;  
         [0054]      FIG. 13  is a diagram showing a projected image generated by the rendering;  
         [0055]      FIG. 14  is a table showing data structure of drawing command output to draw an image generated by the rendering;  
         [0056]      FIG. 15  is a flowchart showing processing for printing an image by supplying image data from the game machine to the color printer;  
         [0057]      FIG. 16  is a schematic view showing a state that the shape of the flying boat is expressed by the minute polygons;  
         [0058]      FIG. 17  is a table referred to determine whether the polygon data exists or not;  
         [0059]      FIG. 18  is a schematic view showing a state that a screen for determining image capturing conditions is displayed on the monitor;  
         [0060]      FIG. 19  is a schematic view showing a state that a screen for determining print conditions is displayed on the monitor;  
         [0061]      FIG. 20  is a flowchart of processing for outputting print data;  
         [0062]      FIG. 21  is a diagram showing a lookup table referred to execute color conversion shown in  FIG. 20 ;  
         [0063]      FIG. 22  is a diagram showing a part of a dither matrix used in the dithering method to execute halftoning shown in  FIG. 20 ;  
         [0064]      FIG. 23  is a diagram showing determination as to whether a dot is formed or not with reference to the dither matrix;  
         [0065]      FIG. 24  is a flowchart showing processing for displaying printer information in the image output system;  
         [0066]      FIG. 25  is a schematic view showing a state that a printer information displaying screen is displayed on the monitor;  
         [0067]      FIG. 26  is a schematic view showing a state that data output from the color printer is displayed in a printer information displaying region in the printer information displaying screen;  
         [0068]      FIG. 27  is a schematic view showing a case that the data output from the color printer is described with Japanese language;  
         [0069]      FIG. 28  is a schematic view showing a state that text data and image data are displayed in the printer information displaying region;  
         [0070]      FIGS. 29A and 29B  are schematic views showing cases that data is divided into plural pieces and the pieces are sequentially output from the color printer;  
         [0071]      FIG. 30  is a flowchart showing another processing for displaying printer information executed in the image output system;  
         [0072]      FIG. 31  is a schematic view showing a state that a printer help displaying screen is displayed on the monitor; and  
         [0073]      FIG. 32  is a schematic view showing a state that help data output from the color printer is displayed in a predetermined region in the printer help displaying screen. 
     
    
     DETAILED DESCRIPTION OF THE EMBODIMENTS  
       [0074]     Embodiments of the invention will be described below in detail with reference to the accompanying drawings.  
         [0075]      FIG. 1  is a block diagram showing an image output system constituted by a game machine  100  and a color printer  200  according to one embodiment of the invention. The game machine  100  is constituted by connecting a main memory  110 , a coordinates transformer (hereinafter, the GTE: Geometry Transfer Engine)  112 , a frame buffer  114 , an image processor (hereinafter, the GPU: Graphic Processing Unit)  116 , a the ROM  108 , a driver  106 , a communication controller  103  and the like to be able to exchange data from each other by way of a bus centering on the CPU  101 . Further, the game machine  100  is connected with a controller  102  or the like for operating the game machine  100 . Further, the game machine  100  is also connected with the color printer  200  to be able to output a screen in the midst of a game by the color printer  200 .  
         [0076]     The CPU  101  is a central processing unit for executing so-to-speak arithmetic operation or logical operation, which governs to control a total of the game machine  100 . The ROM  108  is a memory exclusive for reading and stored with various programs including a program (boot program) initially executed by the CPU  101  after activating the game machine  100 . The main memory  110  is a memory capable of reading and writing data and is used as a temporarily storing region when the CPU  101  executes arithmetic operation or logical operation. The GTE  112  executes operation for moving and rotating a geometrical shape in a three-dimensional space at high speed while making access to the main memory  110  under control of the CPU  101 . The GPU  116  executes a processing for forming a screen displayed on a monitor  150  at a high speed by receiving an instruction from the CPU  101 . The frame buffer  114  is an exclusive memory used for forming the screen displayed on the monitor  150  by the GPU  116 . The GPU  116  displays a screen in the midst of a game by reading data on the screen formed on the frame buffer  114  to output to the monitor  150 . Further, when the screen in the midst of a game is printed, the screen in the midst of the game is printed by supplying data formed on the frame buffer  114  to the color printer  200  by way of the GPU  116 .  
         [0077]     Programs and various data for executing a game are stored in a storage disk of so-to-speak compact disk or digital video disk. When the storage disk  105  is set to the game machine  100 , programs and data stored to the storage disk  10  are read by the driver  106  and temporarily stored in the main memory  110 . Further, when a content of operating the controller  102  is inputted to the CPU  101  by way of the communication controller  103 , the CPU  101  reads programs stored in the main memory  110  and executes predetermined processings, thereby, a game is executed.  
         [0078]      FIG. 2  is a schematic view showing a configuration of the color printer  200 . The color printer  200  is an ink jet printer capable of forming dots of 4 color inks of cyan, magenta, yellow, black. Naturally, an ink jet printer capable of forming ink dots of a total of 6 colors including a cyan ink having a low concentration of a die or a pigment (light cyan) and a magenta ink having a low concentration of a die or a pigment (light magenta) in addition to the inks of 4 colors can also be used. Further, in the following, depending on cases, cyan ink, magenta ink, yellow ink, black ink, light cyan ink, light magenta ink may be abbreviated as C ink, M ink, Y ink, K ink, LC ink, LM ink, respectively.  
         [0079]     As illustrated, the color printer  200  is constituted by a mechanism of ejecting inks and forming dots by driving a printing head  241  mounted on a carriage  240 , a mechanism of reciprocating the carriage  240  in an axial direction of a platen  236  by a carriage motor  230 , a mechanism for carrying print sheet P by a sheet feeding motor  235 , and a control circuit  260  for controlling to form dots, move the carriage  240  and carry the print sheet.  
         [0080]     The carriage  240  is mounted with an ink cartridge  242  for containing K ink and an ink cartridge  243  containing various inks of C ink, M ink, Y ink. When the ink cartridges  242 ,  243  are mounted to the carriage  240 , respective inks in the cartridges are supplied to ink ejecting heads  244  through  247  of respective colors provided at a lower face of the printing head  241  through introducing tubes, not illustrated.  
         [0081]      FIG. 3  is a schematic view showing an arrangement of nozzles Nz in an ink ejecting head  244  through  247  in the color printer. Bottom faces of the ink ejecting heads are formed with  4  sets of nozzle arrays for ejecting inks of respective colors of C, M, Y, K and the nozzles Nz of  48  pieces per set of a nozzle array are aligned at a constant pitch k.  
         [0082]     The control circuit  260  is constituted by connecting the CPU, the ROM, RAM, PIF (peripheral apparatus interface) and the like to each other by a bus. The control circuit  260  controls primary scanning operation and secondary scanning operation of the carriage  240  by controlling operation of the carriage motor  230  and the sheet feeding motor  235  and controls to eject ink drops from the respective nozzles at pertinent timings based on print data supplied from outside. In this way, the color printer  200  can print a color image by forming respective colors of ink dots at pertinent positions on the print medium under control of the control circuit  260 .  
         [0083]     Further, when drive signal waveforms supplied to the nozzles are controlled for ejecting ink drops, ink dots having different sizes can also be formed by changing the sizes of ink drops to be ejected. When the sizes of the ink dots can be controlled in this way, by properly using ink dots having different sizes in accordance with a region of an image to be printed, an image having a higher image quality can also be printed.  
         [0084]     Further, various methods are applicable to a method of ejecting ink drops from ink ejecting heads of respective colors. That is, a type of ejecting ink by using a piezoelectric element, a method of ejecting ink drops by producing bubbles in an ink path by a heater arranged at the ink path and the like can be used. Further, there can also be used a printer of a type of forming ink dots on print sheet by utilizing a phenomenon of thermal transcription or the like, or a type of adhering respective colors of toner powders on a print medium by utilizing static electricity instead of ejecting inks.  
         [0085]     According to the color printer  200  having the above-described hardware constitution, by driving the carriage motor  230 , respective colors of the ink ejecting heads  244  through  247  are moved in a primary scanning direction relative to the print sheet P and by driving the sheet feeding motor  235 , the print sheet P is moved in a secondary scanning direction. By ejecting ink drops by driving the nozzles at pertinent timings in synchronism with movements of primary scanning and secondary scanning of the carriage  240  by the control circuit  260 , the color printer  200  can print a color image on the print sheet.  
         [0086]     In this embodiment, a game is proceeded by operating a main character in a virtual three-dimensional space set as the stage of the game.  FIG. 4  is a schematic view showing a state that a screen in a game is displayed on the monitor  150 . An imaginary planet surface is displayed on the illustrated screen and a behavior of setting various buildings is virtually displayed at the surface of the planet. The game is executed by maneuvering and advancing a flying boat serving as a main character in the stage of the game.  
         [0087]     Although only a two-dimensional shape can be expressed on the screen of the monitor  150 , at inside of the game machine  100 , the planet surface, the flying boat, the various kinds of buildings and the like are expressed as bodies having three-dimensional shapes. An object dealt with as having a three-dimensional shape at inside of the game machine  100  in this way is referred to as “object” in the specification. In the screen exemplified in  FIG. 4 , a flying boat ob 1  displayed to be large substantially at a center of the screen, a planet surface ob 2 , a dome-shaped building ob 3 , two pyramid-shaped buildings ob 11 , ob 12  seen remotely, further, six of flying circular disks ob 4  through ob 9  flying above the planet surface and the like are objects and data of three-dimensionally expressing surface shapes of bodies are stored therefor.  
         [0088]     Therefore, when by operating the flying boat ob 1  serving as the main character, relative to the flying boat ob 1 , positional relationships of other objects (for example, buildings, flying circular disks and the like) are changed, in accordance therewith, ways of viewing the objects on the monitor  150  are also changed. As a result, although the objects of the flying boat ob 1 , the planet surface ob 2  and the like are created by imagination, the objects can be displayed on the monitor  150  as if the objects were really present. Further, according to the game machine  100  of the embodiment, by printing the screen displayed on the monitor  150 , the image as if the image were taken by a photograph can be printed although a description will be given later in details.  
         [0089]     Further, according to the example shown in  FIG. 4 , a portion of the sky of the planet and the satellites floating in the sky do not constitute objects but two-dimensional images displayed on the monitor  150  as they are. Therefore, with regard thereto, even when the flying boat ob 1  is operated, ways of viewing these on the monitor  150  are not changed. This is because these are extremely remote in comparison with a range of moving the flying boat ob 1  and therefore, even when a position of the flying boat ob 1  is changed, ways of viewing these hardly change and therefore, it is sufficient when these are dealt with as two-dimensional images.  FIG. 5  is a schematic view showing a region displaying two-dimensional images on the screen of the monitor  150  as they are with hatchings. In this embodiment, two-dimensional images can be fitted to a portion of a screen displayed on the monitor  150 .  
         [0090]     Next, an explanation will be given of a method of dealing with a body as an object having a three-dimensional shape by the game machine  100 .  FIGS. 6A and 6B  are perspective views showing a shape of a flying boat ob 1  serving as a main character in the game. Almost all portions of a surface of the flying boat ob 1  are constituted by smooth curved faces. In the game machine  100 , the object having the three-dimensional curved faces is expressed by using a plane polygonal shape. That is, the three-dimensional curved face is divided into small plane polygonal shapes and approximately expressed by the plane polygonal shapes.  
         [0091]      FIG. 7  is a schematic view showing a state that the shape of the flying boat ob 1  is expressed by minute planar polygons. The plane polygonal shape may be referred to as “polygon”. In this embodiment, all of objects are expressed as aggregations of polygons and the shape of the object is expressed by three-dimensional coordinate values of respective apexes constituting the polygon. In the specification, data expressing the shape of the object by coordinates of the apexes of the polygons is referred to as “polygon data”. Further, the polygon data of the respective objects are controlled by a table referred to as an object table.  
         [0092]      FIG. 8  is a schematic view showing an object table for managing polygon data of respective objects in the game. The object table is stored with object numbers for identifying respective objects, top addresses of the main memory  110  stored with polygon data showing shapes of objects and polygon numbers constituting the objects. In the object table, the object number and a record set including the top address of the polygon data and the polygon number are set for every object.  
         [0093]      FIG. 9  is a schematic view showing data structure of the polygon data. The polygon data are constituted by serial numbers of polygons, XYZ coordinate values of apexes constituting the respective polygons, numbers of textures attached to the polygons, XYZ coordinate values of reference points set to the objects. Among them, single sets of the numbers of the polygons, the apex coordinates, the texture numbers are set for the respective polygons, on the other hand, the XYZ coordinate values of the reference points are set with regard to the objects.  
         [0094]     Numbers of the apex coordinates set to the respective polygons are set with numbers in accordance with shapes of the polygons. For example, when the polygon is constituted by a triangular shape, the polygon is constituted by three apexes and therefore, the polygon is set with three apex coordinates. Similarly, when the polygon is constituted by a quadrangular shape, four of apex coordinates are set. According to the embodiment, all of the objects are constituted by triangular polygons and therefore, each polygon is set with three apex coordinates.  
         [0095]     Further, the texture number can be regarded as a number indicating a color to be painted at inside of the polygon. For example, when a surface of an object is red, all the polygons constituting the object may be painted with red color. In that case, the texture number of the polygon is designated with a number indicating red color. However, not only the colors but also surfaces having various metallic lusters of aluminum, brass and the like, a transparent surface of glass or the like, a surface of wood skin or the like can also be designated as texture numbers. The texture number is a number designating a state of a surface provided to the polygon in this way.  
         [0096]     On the other hand, the reference point set to the object is XYZ coordinate values used for expressing a position and an attitude of the object in the three-dimensional space. In this embodiment, a screen of the monitor  150  displayed in the midst of the game can be printed as a clear image as if the image were a photograph and although a description will be given later in details, by using information of the position and the direction of the object constituting the object, such a clear image can be printed. Therefore, the object is set with the reference point in order to specify a position in the three-dimensional space at which the object is present and a direction in which object is directed.  
         [0097]     With regard to the flying boat (object number ob 1 ) shown in  FIG. 7 , there are provided a total of three reference points of a reference point P 1  provided at an airframe front portion and reference points P 2 , P 3  respectively provided at rear ends of left and right stabilizers. When a minimum of three reference points are provided in this way, the position and the direction of the object in the three-dimensional space can be specified. Naturally, the number of the reference points is not limited to three but a larger number of reference points may be provided. The polygon data shown in  FIG. 9  are set with XYZ coordinate values of the reference points. Further, it is not necessarily needed to provide the reference points to all of the objects. With regard to the point, an explanation will be given later in details.  
         [0098]     As has been explained above, according to the game machine  100  of the embodiment, all the objects are assigned with the object numbers and surface shapes of the objects are expressed by polygon data indicating the apex coordinates of the polygons. Further, when by citing the object table from the object number, the top address of the corresponding polygon data is acquired, the apex coordinates expressing the three-dimensional space of the object can be acquired by reading data described at and after the address. Image data for displaying on the monitor  150  of the game machine  100  is formed by subjecting the polygon data indicating the three-dimensional shape acquired in this way to a processing, mentioned later.  
         [0099]     Further, although according to the object table exemplified in  FIG. 8 , only two items of the top address of the polygon data and the polygon number constituting the object are set in correspondence with the object number, other items may be set. For example, data indicating a type of the polygon constituting the object, that is, by what angles of a polygon shape a polygon is constituted, whether the reference point is provided to the polygon, data indicating a number of the reference points can be set in correspondence with the object number.  
         [0100]      FIG. 10  is a flowchart of processing executed by the game machine  100  for displaying the game screen on the monitor  150 . Processings executed in corporation with the main memory  110 , the GTE  112 , the frame buffer  114 , the GPU  116  and the like centering on CPU  101  will be described with reference to the flowchart.  
         [0101]     When the game screen displaying processing is started, the CPU  101  determines whether there is an input from the controller  102  (step S 10 ). As described above, in the midst of the game, the operation to the game machine  100  is executed exclusively by the controller  102  and therefore, first, it is determined whether there is the operation input from the controller  102 . Further, when there is not the input (step S 10 : No), a processing of updating the display of the screen by outputting the image data stored to the frame buffer  114  to the monitor  150  (screen updating processing) is executed (step S 50 ). The image date to be displayed on the monitor  150  is formed and stored in the frame buffer  114 . Contents of a processing for forming the image data to store to the frame buffer  114  and the screen updating processing of outputting the image data stored to the frame buffer  114  to the monitor  150  will be described later. On the other hand, when it is determined that there is the input from the controller  102  (step S 10 : yes), a series of processings, mentioned later, are executed in order to reflect the content of the operation by the controller  102  on the screen of the monitor  150 .  
         [0102]     When the input from the controller  102  is detected, a processing of moving the object operated by the controller  102  in the three-dimensional space set as the stage of the game by a distance and in a direction in accordance with the operation is executed (step S 20 ). As an example, an explanation will be given of a case in which the operation by the controller  102  is for advancing the flying boat ob 1 . As described above, the flying boat ob 1  is expressed by the plurality of polygons at inside of the game machine  100  (refer to  FIG. 7 ) and the apex coordinates of the respective polygons are set to the polygon data (refer to  FIG. 9 ). Further, the top address of the memory region stored to the polygon data can be acquired by referring to the object Hence, when the flying boat ob 1  is advanced, first, in reference to the object table, the top address of the polygon data in correspondence with the flying boat (object number ob 1 ) is acquired. Next, the apex coordinates constituting the respective polygons are acquired by reading the polygon data stored to the memory region constituting the front acquired address on the main memory  110 . The apex coordinates acquired in this way constitute coordinates expressing a position of the flying boat ob 1  at a current time point in the three-dimensional space as the stage of the game.  
         [0103]     With regard to the point, a more or less supplementary explanation will be given. The storing disk  105  is stored with initial values of the polygon data with regard to the respective objects. Starting the game, the initial values of the polygon data are read from the storing disk  105  and stored to the memory  110  and the top address values storing the polygon data are set to the object table. Further, when the object is moved, rotated or deformed in accordance with proceeding the game, the content of the polygon data stored to the main memory  110  is updated by a processing, mentioned later. Therefore, when the top address is acquired by referring to the object table, the apex coordinates at the current time point of the respective objects can be read.  
         [0104]     Here, the controller  102  is operated to advance the flying boat ob 1  and therefore, at S 20  of the game screen displaying processing shown in  FIG. 10 , by referring to the object table, the polygon data indicating the current position of the flying boat ob 1  is acquired from the main memory  110 . Successively, a direction and a moving amount of moving the flying boat ob 1  in the three-dimensional space are determined by an amount of operating the controller  102  and the coordinate values of the flying boat ob 1  after movement are calculated. The operation is executed at high speed by the GTE  112  under control of the CPU  101 . Specifically, when the moving direction and the moving amount of the flying boat ob 1  are determined, the CPU  101  supplies the moving direction of the moving amount to the GTE  112  along with the value of the top address of the polygon data. The GTE  112  calculates the apex coordinates after movement by executing coordinates transformation for the apex coordinates of the polygon data after reading the polygon data of the flying boat ob 1  based on the supplied top address. The polygon data of the main memory  110  is updated by the apex coordinates after transformation acquired in this way. Although in the above-described, an explanation has been given of the case of advancing the flying boat ob 1 , when other object is operated by the controller  102 , a similar processing is executed for the operated object. As a result, the polygon data of the respective objects stored to the main memory  110  are always stored with the newest coordinate values of the objects.  
         [0105]     When the operation of the controller  102  is reflected to the object position in this way, a processing (rendering processing) of forming the data of the two-dimensional image from the polygon data of the respective objects is started (step S 30 ). In the rendering processing, by executing a processing of projecting the three-dimensional objects expressed by the polygon data on a plane in correspondence with the screen of the monitor  150 , the two-dimensional image is formed from the three-dimensional objects.  
         [0106]      FIG. 11  shows a behavior of forming a two-dimensional image by subjecting an object in a shape of a dice to the rendering processing. In the rendering processing, first, an observing point Q for observing the object is set, successively, a projecting face R in correspondence with the screen of the monitor  150  is set between the object and the observing point Q. Further, an arbitrary point selected from a surface of the object and the observing point Q are connected by a straight line to determine an intersection at which the straight line intersects with the projecting face R. For example, when point “a” on the object is selected, a point Ra can be determined as an intersection at which a straight line connecting point “a” and the observing point Q intersects with the projecting face R. Here, as is well known, light is provided with a property of advancing straight and therefore, light coming out from point “a” and going to the observing point Q produces an image at point Ra on the projecting face R. In other words, point Ra on the projecting face R can be regarded as a point to which point “a” on the object is projected. Therefore, when such an operation is executed for all of the points on the surface of the object, the two-dimensional image of the object projected onto the projecting face Ra can be acquired.  
         [0107]     Incidentally, as described above, the object is expressed by the polygons and therefore, it is not necessary to execute such an operation with regard to all the points on the surface of the object but may be executed only with regard to the apex coordinates of the polygons. For example, assume that point b and point c on the surface of the object are respectively projected to point Rb, point Rc on the projecting face R. In this case, the polygon in a triangular shape constituting apexes by point a, point b, point c on the object may be regarded to be projected to a region in a triangular shape constituting the apexes by point Ra, point Rb, point Rc on the projecting face R. Further, when the polygon on the object is constituted by, for example, red color, also a region in a triangular shape constituted by projecting the polygon onto the projecting face R may be regarded to be constituted by red color. That is, the texture number provided to the polygon on the object can be regarded to be succeeded also to a region projected on the projecting face R.  
         [0108]     Further, in the rendering processing, also a processing referred to as so-to-speak shadow face erasing is executed. The shadow face erasing is a processing of erasing a portion of the surface of the object constituting a shade of other surface. For example, in the example shown in  FIG. 11 , a polygon constituting apexes by point b, point d, point e of the surface of the object is disposed on a back side of the object in view from the observing point Q, a total thereof constitutes a shade of other surface and therefore, an image thereof is not produced on the projecting face R. Hence, with regard to the polygon, a projected image thereof is made not to be displayed on the projecting face R. Further, depending on the shape of the object and setting the observing point Q, there is also a case in which only a region of a portion of a certain polygon constitutes a shade of other surface. In such a case, a display of only a portion of the polygon constituting the shade is omitted and the projected image is displayed only for a portion which does not constitute a shade.  
         [0109]     In this way, in the rendering processing, a processing of calculating coordinate values when the apexes of the polygons constituting the object are projected onto the projecting face R. Such coordinate values can relatively simply be calculated.  FIG. 12A  shows a calculation equation for calculating coordinate values (U, V) on the projecting face R provided by projecting coordinate points (X, Y, Z) on the object. Here, α, β, γ, δ are coefficients determined by a distance from the observing point Q to the projecting face R, or to the object. Or, simply, a calculation equation which does not include a division can also be used as shown by  FIG. 12B . Here, εζ, η, θ, ι, κ are coefficients respectively determined by a distance from the observing point Q to the projecting face R, or to the object.  
         [0110]     Further, although a detailed explanation will be omitted, in the rendering processing, there may be carried out a processing referred to as shading for shading the surface of the object by placing a light source at a previously set position in the three-dimensional space, or a processing or reducing a brightness at a remotely disposed portion or gradating a projected image in order to emphasize a depth perception. The rendering processing comprising such a series of processings is executed by receiving an instruction from the CPU  101  by the GTE  112 , executing predetermined operation to the polygon data stored to the main memory  110  and updating the polygon data on the memory by using a provided result. Further, when the above-described processings are executed for all the objects appearing on the screen of the monitor  150 , the rendering processing indicated at step S 30  of  FIG. 10  is finished.  
         [0111]     Successive to the above-described rendering processing, the CPU  101  of the game machine  100  starts a drawing processing (step S 40  of  FIG. 10 ). The drawing processing is a processing of forming the image data set with gray scale values for respective pixels from the projected image formed by the rendering processing. That is, the projected image provided by the rendering processing is expressed by a style using coordinates of apexes of polygonal shapes projected with polygons and texture numbers to be provided to the polygonal shapes. On the other hand, the image data which can be displayed on the monitor  150  is expressed by a style finely dividing the image into small regions referred to as pixels and set with gray scale data (normally, data expressing brightness) for the respective pixels. When one kind of brightness data is set to each pixel, the image data becomes the image data of a monochromatic image and when brightness data of respective colors of RGB constituting three primary colors of light is set, the image data becomes an image data of a color image. Further, in place of the brightness data of respective colors of RGB, a color image can also be expressed by using two kinds of gray scale data in correspondence with brightness of color and gray scale data in correspondence with chrominance. At any rate, data expressing the projected image provided by the rendering processing cannot be displayed on the monitor  150  as it is and therefore, a processing of converting the data into a data style which can be displayed on the monitor  150  is executed. Such a processing is a processing referred to as drawing processing. Further, as described by using  FIG. 5 , when two-dimensional image is fitted to the screen, data of the two-dimensional image may be fitted thereto in the drawing processing.  
         [0112]     When the drawing processing is started, the CPU  101  of the game machine  100  outputs a drawing instruction to the GPU  116 . The drawing processing is executed by forming the image data to store to the frame buffer  114  by the GPU  116  by receiving the drawing instruction.  
         [0113]      FIG. 13  is a diagram showing a projected image generated by the rendering.  FIG. 14  is a table showing data structure of drawing command output from the CPU  101  to the GPU  116  to draw an image generated by the rendering. First, with reference to  FIG. 13 , the projected image to be subjected to the drawing will be described. As described above, the projected image constituting the object of drawing is the two-dimensional image provided by projecting polygons constituting the object onto the projecting face R. In this embodiment, the object is constituted by using polygons all of which are formed by the triangular shape and therefore, as a rule, all the polygons are projected onto the projecting face R as an image of the triangular shape.  
         [0114]     Further, polygon indicates a plane polygonal shape constituting the object as described above, strictly speaking, the polygonal shape constituted by projecting the polygon to the projecting face R differs from the polygon. However, in the following, for convenience of explanation, also the projected image of the polygon is referred to as polygon. Further, in differentiating these, the polygons may be referred to as “polygon constituting object” and “polygon constituting projected image”.  
         [0115]     The projected image shown in  FIG. 13  is constituted by three polygons of polygon  1 , polygon  2 , polygon  3 . Further, all of projected images are constituted by triangular polygons to correspond to that all polygons constituting the object are constituted by triangular polygons and when the triangular polygons are projected to the projecting face R, triangular projected images are provided. Further, as described above in reference to  FIG. 11 , polygons constituting the projected images are attached with texture numbers the same as those of polygons constituting the object.  
         [0116]     When the projected image is drawn, the CPU  101  outputs the drawing instruction having a data structure shown in  FIG. 14 . As illustrated, the drawing instruction is constituted by data sets each of which includes “CODE”, texture numbers, coordinate values of apexes on the projected face R for each of polygons. Here, “CODE” expresses that the instruction is the drawing instruction and becomes data for indicating a shape of the polygon constituting the object of drawing. That is, there is also a case in which the polygon constituting the object is not limited to the triangular shape but a polygon of a quadrangular shape or a pentagonal shape or the like is used, in accordance therewith, a shape of the polygon constituting the projected image is also changed. Further, even when the polygon of the object is constituted by the triangular shape, in a case where a portion thereof constitutes a shade of other polygon, the polygon on the projected race R can also be dealt with as a polygon of, for example, a quadrangular shape. In consideration thereof, according to the drawing instruction of the embodiment, a shape of the polygon is made to be able to be designated for each polygon.  
         [0117]     The drawing instruction of the embodiment is set with the texture number successive to “CODE”. The texture number is a texture number attached to a polygon constituting the projected image and in almost all the cases, the texture number the same as the texture number attached to the polygon constituting the object. Further, in place of the texture number, color information (for example, gray scale values of respective colors of R, G, B) to be attached to the polygon can also be set.  
         [0118]     Successive to the texture number, coordinate values on the projected face R of apexes constituting the polygons are set. A number of apex coordinates is determined by “CODE”, mentioned above. For example, when the shape of the polygon is designated as the triangular shape in “CODE”, three apex coordinates are set and when designated to a polygon of a quadrangular shape, four apex coordinates are set. The drawing instruction is constituted by a data structure in which data constituting single sets of “CODE”, the texture numbers, the apex coordinates are set for respective polygons constituting the projected image.  
         [0119]     According to the drawing instruction exemplified in  FIG. 14 , three sets of data comprising “CODE”, the texture numbers and the apex coordinates are set in correspondence with that the projected image constituting the object of drawing is constituted by three polygons of polygon  1  through polygon  3 . That is, with regard to polygon  1 , successive to “CODE” and the texture number, coordinate values of three apexes A, B, C constituting polygon  1  are set. Further, with regard to polygon  2 , successive to “CODE” and the texture number, coordinate values of three apexes B, C, D constituting polygon  2  are set, with regard to polygon  3 , successive to “CODE”, the texture number, coordinate values of three apexes C, D, E constituting polygon  3  are set. The apex coordinates and the texture numbers of the polygons are stored to the main memory  110  after having being generated by the GTE  112  in the above-described rendering processing. The CPU  101  generates the drawing instruction having the data structure shown in  FIG. 14  to supply to the GPU  116  by reading the data with regard to all the objects to be displayed on the screen of the monitor  150  from the data stored in the main memory  110 .  
         [0120]     When the GPU  116  receives the drawing instruction, the GPU  116  converts insides of the polygonal shapes constituted by connecting the respective apexes to the two-dimensional image printed by the color or the pattern indicated by the texture number. Further, the provided two-dimensional image is converted into data of an expressing style setting the gray scale data for the respective pixels constituting the image to store to the frame buffer  114  as the image data. As a result, the projected image expressed by the apex coordinates of the polygons on the projected face R and the texture numbers of the polygons is converted into the image data in a data style which can be expressed on the monitor  150  to be stored to the frame buffer  114 . Further, the image data set with the gray scale values of respective colors of R, G, B at the respective pixels is formed. When the above-described processing is executed for all the projected images appearing on the screen of the monitor  150 , the drawing processing shown in step S 40  of  FIG. 10  is finished.  
         [0121]     When the drawing processing has been finished, at this occasion, a processing of updating the screen of the monitor  150  by outputting the image data provided on the frame buffer  114  to the monitor  150  is executed (step S 50 ). That is, in accordance with the specification of the monitor  150  such as a screen resolution or a scanning system of interlace or noninterlace or the like, the image data is read from the frame buffer  114  to supply to the monitor  150  as a video signal. Thereby, the two dimensional image developed to the frame buffer  114  can be displayed on the screen of the monitor  150 .  
         [0122]     Further, when the displaying of the monitor  150  is updated by a frequency of at least 24 times or more per second, by the after image phenomenon provided to the retina of the human being, the image as if it were continuously moved can be displayed. In this embodiment, by updating the display of the screen by executing the game screen displaying processing shown in  FIG. 10  at a frequency of about 30 times per second, the display can be executed as if the various objects of the flying boat ob 1  and the like is continuously moved in the screen of the monitor  150 . Further, in order to be able to execute such a high speed processing, the game machine  100  of the embodiment is mounted with the GTE  112  capable of executing various operations including coordinates transformation at high speed, the main memory  110  capable of reading and writing a large amount of data used in the operations at high speed, the GPU  116  swiftly generating image data based on the drawing instruction received from the GPU  101 , further, the frame buffer  114  or the like capable of storing the generated image data at high speed and outputting the data to the monitor  150  at high speed.  
         [0123]     Incidentally, when a number of polygons constituting the object of the processing becomes successively large, it is difficult to execute the game screen displaying processing shown in  FIG. 10  at a frequency of about 30 times per second. Hence, the various objects including the flying boat ob 1  are constituted by more or less large polygons such that a number of the polygons is not excessively large. As described above, the polygon is constituted by a plane polygonal shape and therefore, when the polygon becomes successively large, there is brought about a drawback that a surface of the object becomes angular. However, fortunately, on the screen of the game, the object is frequently moved, in addition thereto, the monitor  150  is not provided with a high drawability as in a photograph and therefore, it is not conspicuous that a surface of the object is angular and therefore, there is not brought about a drawback that a feeling of presence of the game is deteriorated.  
         [0124]     However, when the screen of the monitor  150  is printed by a printing apparatus, such a situation is changed at all. That is, in addition to the fact that the image provided by printing is a stationary image, a printing apparatus in recent years is provided with a high drawability near to that of a photograph and therefore, there is a case in which it is found that a surface of the object is angular by seeing the printed image. Further, after seeing the printed image, even in the object displayed on the monitor  150  in the midst of the game, the surface looks to be angular and there is a concern that the feeling of presence of the game is significantly deteriorated. In contrast thereto, according to the game machine  100  of this embodiment, even when the screen of the monitor  150  is printed by a printing apparatus, a clear image as if a real object were taken by a photograph can be outputted.  
         [0125]     Further, normally, such a clear image is not displayed on the monitor  150  and therefore, when the clear image as if a real object were taken by a photograph can be printed, a dissociation from the image confirmed by the monitor  150  is enhanced and it is difficult to predict an image provided by printing. In view of the point, according to the game machine  100  of the embodiment, the following processing is executed to be able to further accurately grasp the printed image from the monitor  150 .  
         [0126]      FIG. 15  is a flowchart showing processing for printing an image by supplying image data from the game machine  100  to the color printer  200 . The image printing processing will be described with reference to this flowchart.  
         [0127]     When the CPU  100  of the game machine  100  detects that a predetermined printing button provided at the controller  102  is depressed, the CPU  101  starts the image printing processing shown in  FIG. 15  by generating an interruption. Further, when the interruption is generated, a processing which has been carried out by the CPU  101  is temporarily interrupted, in accordance therewith, the game is interrupted from being advanced until finishing the image printing processing.  
         [0128]     When the image printing processing is started, first, the CPU  101  acquires polygon data constituting the basis of an image displayed on the monitor  150  at a time point of depressing the printing button of the controller  102  (step S 100 ). That is, as described above, an image displayed on the monitor  150  is the image provided by projecting the object to the projected face R and coordinate values of apexes of polygons constituting the object are stored to the main memory  110  as polygon data. Hence, at step S 100 , polygon data of objects are acquired with regard to respective objects displayed on the monitor  150  at the time point of depressing the printing button of the controller  102 .  
         [0129]     Successively, it is determined whether minute polygon data is stored with regard to the acquired polygon data (step S 102 ). Here, the minute polygon data is data expressing the three-dimensional shape of the object by polygons smaller than the polygons used in the above-described game screen displaying processing. As shown in  FIG. 16 , the minute polygon data is data of expressing the surface shape of the object by three-dimensional coordinate values of respective apexes constituting such polygons.  
         [0130]     Further, also the minute polygon data is provided with a plurality (three in the embodiment) of reference points similar to the normal polygon data shown in  FIGS. 7 and 9 . The reference points are provided at the same positions in a case where the minute polygon data and in a case where the normal polygon data in view of positional relationships thereof relative to the object. For example, as shown by  FIG. 7 , in the normal polygon data of the flying boat ob 1 , the reference points p 1 , p 2 , p 3  are provided at the front end of the airframe and the rear ends of the left and right stabilizers. Similarly, even in the minute polygon data of the flying boat ob 1 , the reference points p 1 , p 2 , p 3  are respectively provided at the front end of the airframe and the rear ends of the left and right stabilizers. In this way, with regard to the object at which the minute polygon data is existed, the reference points are provided at the same positions relative to the object with regard to each of the normal polygon data and the minute polygon data. Conversely speaking, with regard to the object in which the minute polygon data is not existed, it is not necessarily needed that the reference points are set to the object data.  
         [0131]     When  FIGS. 7 and 16  are compared, in comparison with the polygon data used in the game screen displaying, it is apparent that smaller polygons are used in the minute polygon data. Further, it is apparent that the larger the curvature (the smaller the radius of curvature) of a portion on the surface of the object, by the smaller polygon, the portion is constituted. When the small polygons are used in this way, a shape of the object can further accurately be expressed and even the portion having the large radius of curvature of the surface does not give an angular impression to a viewing person.  
         [0132]     It can be determined whether the minute polygon data is existed by referring to a table (minute polygon data table) previously set with presence or absence of the minute polygon data. As shown in  FIG. 17 , the minute polygon data table is set with an object number of the object in which the minute polygon data is existed and a polygon number. Therefore, when the object number is set by referring to the minute polygon data table, it can be determined that the minute polygon data is existed with regard to the object. Conversely, when the object number is not set to the minute polygon data table, it can be determined that the minute polygon data is not existed with regard to the object.  
         [0133]     Further, the object table described above in reference to  FIG. 8  is set with the inherent object numbers and the top addresses of the polygon data with regard to all the objects. On the other hand, according to the minute polygon data table, there is a case in which the same top address is set to a plurality of the object numbers. For example, as shown by  FIG. 4 , all of the objects of objects ob 4  through ob 9  express the flying circular disks and the flying circular disks are constituted by the same shape. In such a case, in the minute polygon data table, as shown by  FIG. 7 , with regard to the six objects having the object numbers ob 4  through ob 9 , the same top address and the same polygon number are set. A description will be given later of a reason that in the minute polygon data table, there is a case in which the same top address and the polygon number are set to different object numbers.  
         [0134]     At step S 102 , with regard to the object in which it is determined that the minute polygon data is existed, a processing of switching the polygon data which is previously acquired at step S 100  by the minute polygon data in a state of making the reference points coincide with each other is executed (step S 104 ). A detailed explanation will be given of a content of the processing as follows. First, based on the top address set to the minute polygon data table, the minute polygon data are read to store to consecutive addresses of the main memory  110 . Here, the minute polygon data are stored to a continuous region at an after address value Appd on the main memory  110 .  
         [0135]     Successively, by executing coordinates transformation of moving or rotating the object with regard to the minute polygon data stored to the memory region at and after the address Appd of the main memory  110 , the coordinates of the reference point of the minute polygon data are made to coincide with coordinates of the reference points of the normal polygon data acquired at step S 100 . Such a coordinates transformation is executed not for data indicated by the top address of the minute polygon table shown in  FIG. 17  but for data constituted by reading the minute polygon data to be expanded at and after address Appd of the main memory  110 . Further, when the coordinates of the reference point of the minute polygon data are made to coincide with the coordinates of the reference point of the normal polygon data, the top address and polygon number of the object table described above in reference to  FIG. 8  are rewritten by the top address Appd of the memory region stored with the normal polygon data and the polygon number constituting the minute polygon data. When the top address and the polygon number set to the object table are rewritten in this way, in the rendering processing and the drawing processing executed successively, not the normal polygon data but the minute polygon data are referred. At step S 104  of  FIG. 15 , the processing of switching the polygon data by the minute polygon data is specifically a processing of rewriting the top address and the polygon number set to the object table in this way by the top address and the polygon number positioned minute polygon data.  
         [0136]     Here, an explanation will be given of the reason that in the minute polygon data table, the same top address and the same polygon number are set to the different object numbers. As described above, with regard to the object in which the minute polygon data is existed, after reading the minute polygon data, the minute polygon data is moved or rotated such that the coordinates of the reference point coincide with the coordinates of the reference point of the normal polygon data. Here, the different objects are necessarily provided with the different three-dimensional coordinate values and therefore, even when the same minute polygon data is read, after movement or rotation, the same minute polygon data becomes minute polygon data different from each other. Therefore, when such an operation is executed in the different regions of the main memory  110  of the respective objects, the same data can be used for the inherent minute polygon data and therefore, in the minute polygon data table, the objects having the same shape are set with the same top address and the same polygon number.  
         [0137]     In the processing at step S 104 , with regard to the object in which the minute polygon data is existed, the processing of switching the polygon data by the minute polygon data in this way is executed. On the other hand, with regard to the object in which the minute polygon data is not existed, such a processing may be skipped.  
         [0138]     Following this, processing for determining image capturing conditions is started (step S 106 ). The determination of the image capturing conditions can be performed while the operator of the game machine  100  is confirming the screen displayed on the monitor  150 .  FIG. 18  is a schematic view showing a state that a screen for determining image capturing conditions is displayed on the monitor. As shown, substantially a center of the screen for setting the image capturing condition is provided with a monitor region  151  for displaying the screen displayed on the monitor  150  when a printing button is depressed. Further, a periphery of the monitor region  151  is provided with buttons for setting a focal length, an aperture value, a focusing position and the like. In this embodiment, a screen displayed on the monitor  150  is not simply printed but by setting the items, thereby, the image on the monitor  150  can be printed as if a photograph were taken by operating a virtual camera.  
         [0139]     A focal length is set by selecting focal lengths from zoom to wide angle by moving a knob  153  provided on a right side of the monitor region  151  in an up and down direction. Further, the aperture value is set by selecting a value from an open side to a narrow side by moving a knob  154  provided on the right lower side of the monitor region  151  in the up and down direction. Further, the focusing position can be set by moving a cursor  152  displayed on the monitor region  151  while operating a cross cursor of the controller  102  to a position intended to focus and thereafter depressing a button displayed as “focusing position” on the set screen. An effect of the image capturing condition set in this way is reflected to the image displayed on the monitor region  151  and therefore, the image capturing condition can be set while confirming the effect. Further, when a desired image capturing condition is determined, by depressing a button  156  displayed as “OK” on the set screen, the set image capturing condition is firmly determined and a processing of confirming the printed image reflected with the image capturing condition is started. At step S 106  of the printed image confirming processing shown in  FIG. 15 , the processing of setting various image capturing conditions is executed as described above.  
         [0140]     Following the determination of the image capturing conditions, a rendering process and a drawing process are initiated (steps S 108  and S 110 ). As described above, the rendering processing is the processing of forming the data of the two-dimensional image from the polygon data of the respective objects. Such a processing can be executed by calculating projected images of respective objects to the projecting face R set between the observing point Q and the respective objects as described above in reference to  FIG. 11 . Further, the drawing processing is a processing of forming the image data set with the gray scale values for the respective pixels from the projected image formed by the rendering processing. Similar to the game screen displaying processing described above in reference to  FIG. 10 , the rendering processing is executed while referring to the object table by the GTE  112  under control of the CPU  101  and the data of the provided two-dimensional image is stored to the main memory  110 . A content set by the image capturing condition setting processing is reflected to setting the observing point Q and the projecting face R in the rendering processing. Further, with regard to the object disposed to be remote from or proximate to the observing point Q, a special operation of providing a filter for blurring the projected image is also executed in accordance with setting the aperture value.  
         [0141]     The GPU  116  executes the drawing processing executed successively by receiving a drawing instruction outputted by the CPU  101  and the acquired image data is stored to the frame buffer  114 . An explanation will be omitted here of detailed contents of the rendering processing and the drawing processing. However, with regard to the object in which the minute polygon data are present, since the object table (refer to  FIG. 8 ) is rewritten at the above-described step S 104 , the rendering processing and the drawing processing are not executed with respect to the normal polygon data displayed on the monitor  150  when the printing button is depressed, but executed with respect to the minute polygon data.  
         [0142]     The CPU  101  of the game machine  100  starts processing for determining print conditions (step S 112 ) subsequent to the rendering processing (step S 108 ) and the drawing processing (step S 110 ). The operator of the game machine  100  also executes the print condition setting processing while confirming the screen displayed on the monitor  150  similar to the case of setting the image capturing condition (step S 106 ).  
         [0143]      FIG. 19  is a schematic view showing a state that a screen for determining print conditions is displayed on the monitor. In this embodiment, three items of a sheet size, a sheet kind used in printing and a printing mode in printing can be set. The sheet size and the sheet kind are set by selecting the sheet size by using the cursor  152  displayed on the screen by operating the cross cursor of the controller  102 . Further, the printing mode can be set by moving a knob  158  displayed on the screen from “fine” to “fast”. Further, in addition to the conditions, items of a number of sheets of printing and whether so-to-speak marginless printing is executed may be able to be set. When the printing condition is set as described above, by depressing a button displayed as “OK” on the set screen, the set printing condition is firmly determined.  
         [0144]     When the printing condition is set, the CPU  101  of the game machine  100  starts a processing of forming the print data from the image data stored to the frame buffer  114  to output to the color printer  200  (printed data outputting processing) (step S 150 ).  
         [0145]      FIG. 20  is a flowchart of processing for outputting print data. When the printed data outputting processing is started, first, the CPU  101  starts a resolution converting processing (step S 152 ). The resolution converting processing is a processing of converting a resolution of the image data stored to the frame buffer  114  to a resolution by which the image of the color printer  202  is intended to print (print resolution). Further, the print resolution is determined by a number of pixels constituting the screen of the monitor  150  and a size of the image to be printed, that is, a size of print sheet set by the above-described print condition setting processing (step S 112  of  FIG. 15 ).  
         [0146]     Further, when the print resolution is higher than the resolution of the image data, the resolution is increased by forming new image data between the pixels by executing an interpolating operation. Conversely, when the resolution of the image data is higher than the print resolution, the resolution is reduced by omitting the read image data by a constant rate. In the resolution converting processing, by executing the operation to the image data of the frame buffer  114 , the resolution of the image data formed by the drawing processing is converted to the print resolution.  
         [0147]     When the resolution of the image data is converted into print resolution in this way, at this occasion, a color converting processing is executed (step S 154 ). The color converting processing is a processing of converting RGB color image data expressed by a combination of gray scale values of R, G, B to image data expressed by a combination of gray scale value of respective colors used for printing. As described above, according to the game machine  100  of the embodiment, whereas the image set with the gray scale values of respective colors of R, G, B are formed for the respective pixels, in the color printer  200 , as shown by  FIG. 2 , the image is printed by using four colors (C, M, Y, K) of ink. Hence, there is executed a processing (color converting processing) of converting the image data expressed by respective colors of R, G, B to data expressed by the gray scale values of respective colors of C, M, Y, K.  
         [0148]     The color converting processing can swiftly be carried out by referring to a color converting table (LUT).  FIG. 21  is a diagram showing an LUT referred to execute color conversion. The LUT can be regarded as a kind of a three-dimensional mathematical table when considered in the following way. First, consider a color space assigning R axis, G axis, B axis to three axes orthogonal to each other as shown by  FIG. 21 . Then, all of RGB image data can be displayed necessarily in correspondence with coordinate points in the color space. Therefrom, when R axis, G axis, B axis are finely divided and a number of lattice points are set in the color space, the respective lattice points can be considered to express the image data and gray scale values of respective colors of C, M, Y, K in correspondence with the image data of RGB can be made to correspond to the respective lattice points. The LUT is a kind of a three-dimensional mathematical table in which the gray scale values of respective colors of C, M, Y, K are made to correspond to the lattice points provided in the color space to store. When the color converting processing is executed based on a corresponding relationship between the image data of RGB and the gray scale data of respective colors of C, M, Y, K stored in LUT, the image data expressed by the gray scale values of respective colors of RGB can swiftly be converted into the gray scale data of respective colors of C, M, Y, K.  
         [0149]     Further, when a print sheet differs, a ground color of sheet differs and also color development of ink differs. Further, a way of oozing ink differs by a kind of print sheet and a difference in a way of oozing ink effects an influence on a tone of color. Therefrom, in order to print an image having a high image quality, it is preferable to properly use a pertinent LUT in accordance with a kind of print sheet. Hence, at step S 154 , the color converting processing is executed by properly using the previously determined LUT in accordance with the kind of the print sheet set by the above-described print condition setting processing (step S 112  of  FIG. 15 ).  
         [0150]     When the above-described color converting processing is executed, the CPU  101  of the game machine  100  starts a halftoning processing (step S 156 ). The halftoning processing is the following processing. Image data provided by the color converting processing is gray scale data which can take values from a gray scale value 0 to a gray scale value 255 for respective pixels when a data length is set to 1 byte. In contrast thereto, the color printer  200  expresses an image by forming dots and therefore, only either of states of “forming dot” and “not forming dot” can be selected for respective pixels. Therefore, the color printer  200  expresses a middle gray scale by changing a density of dots formed in a predetermined region instead of changing the gray scale values of the respective pixels. The halftoning processing is a processing of determining whether dots are formed or not for respective pixels such that dots are produced by a pertinent density in accordance with the gray scale value of the image data.  
         [0151]     As a method of producing dots by a pertinent density in accordance with the gray scale value, various methods of an error diffusing method, a dithering method and the like are applicable. The error diffusing method is a method of determining whether dots are formed or not with regard to respective pixels such that an error in expressing the gray scale produced at a pixel by determining whether dots are formed or not with respect to a certain pixel is diffused to surrounding pixels and an error diffused from surrounding is resolved. A rate of diffusing the produced error to surrounding respective pixels is set previously to an error diffusing matrix. Further, the dithering method is a method of determining whether dots are formed or not with regard to respective pixels by comparing a threshold set in a dithering matrix and a gray scale value of image data for respective pixels, determining to form dots for a pixel at which the gray scale of the image data is larger and conversely determining not to form dots with regard to a pixel in which the threshold is larger. In this embodiment, either of the methods can be used, however, at this occasion, the halftoning processing is executed by using the method referred to as the dithering method.  
         [0152]      FIG. 22  is a diagram showing a part of a dither matrix used in the dithering method to execute the halftoning. The matrix is set with thresholds evenly selected from a range of gray scale values of 0 through 255 for respective vertical and horizontal 64 pixels, or a total of 4096 pieces of pixels. Here, the gray scale values of the thresholds are selected from the range of 0 through 255 in correspondence with the fact that the image data is constituted by 1 byte data and the gray scale values set for the pixels can take values of 0 through 255. Further, a size of the dithering matrix is not limited to an amount of vertical and horizontal 24 pixels as exemplified in  FIG. 22  but can be set to various sizes including a size in which numbers of vertical and horizontal pixels differ from each other.  
         [0153]      FIG. 23  is a diagram showing determination as to whether a dot is formed or not with reference to the dither matrix. In determining whether dots are formed or not, first, a gray scale value of image data with regard to a pixel aimed as an object of determination (aimed pixel) and a threshold stored to a corresponding position in the dithering matrix are compared. Dashed arrows shown in  FIG. 23  schematically expresses that the gray scale value of the aimed pixel and the threshold stored at the corresponding position in the dithering matrix are compared. Further, when the gray scale of the aimed pixel is larger than the threshold of the dithering matrix, it is determined that dots are formed for the pixel. Conversely, when the threshold of the dithering matrix is larger, it is determined that dots are not formed for the pixel.  
         [0154]     In this example, the image data of a pixel disposed at a left upper corner of image data is provided with a gray scale value of 180 and a threshold stored at a position on the dithering matrix in correspondence with the pixel is 1. Therefore, with regard to the pixel at the left upper corner, the gray scale value 180 of the image data is larger than the threshold  1  of the dithering matrix and therefore, it is determined that dots are formed for the pixel. Solid arrows shown in  FIG. 23  schematically expresses a behavior of determining that dots are formed for the pixel and writing a result of the determination to a memory. On the other hand, with regard to a right next pixel of the pixel, the gray scale value of the image data is 130, the threshold of the dithering matrix is 177, the threshold is larger and therefore, it is determined that dots are not formed for the pixel. According to the dithering method, dots are produced in reference to the dithering matrix in this way.  
         [0155]     At step S 156  of the printed data outputting processing shown in  FIG. 20 , the processing of determining whether dots are formed as described above for respective gray scale values of respective colors C, M, Y, K converted by the color converting processing is executed.  
         [0156]     When the halftoning processing is finished as described above, the CPU  101  of the game machine  100  starts an interlacing processing (step S 158 ). The interlacing processing is a processing of realigning image data converted into an expressing style by whether dots are formed or not in an order of transferring to the color printer  200  in consideration of an order by which dots are actually formed on a print sheet. The CPU  101  of the game machine  100  realigns the image data by executing the interlacing processing and outputting finally provided data from the GPU  116  to the color printer  200  as print data (step S 160 ). Further, when all the print data are outputted to the color printer  200 , the operation finishes the print data outputting processing shown in  FIG. 20  to return to the image printing processing of  FIG. 15 .  
         [0157]     In the image printing processing, when the operation returns from the print data outputting processing, a game recovering processing is executed (step S 114 ). The game recovering processing is a processing of restarting the game by finishing the image printing processing shown in  FIG. 15 . That is, the above-described image printing processing is started in the state of temporarily interrupting the game by generating an interruption by the CPU  101  of the game machine  100  when the printing button of the controller  102  is depressed as mentioned above. Hence, prior to the image printing processing, the CPU  101  prepares to restart the game by recovering a program counter and various data to a state before interrupting the game. As mentioned above, with regard to the object in which the minute polygon data is existed also the set value of the object table is rewritten in the image printing processing and therefore, also the set value is recovered to an original set value in the game recovering processing.  
         [0158]     When the game recovering processing is finished in this way (step S 114 ), also the image printing processing shown in  FIG. 15  is finished. Various variables and data including the program counter are recovered to a state before interrupting the game and therefore, the game can be restarted when the game is interrupted.  
         [0159]     On the other hand, the color printer  200  prints an image by forming dots on print sheet in accordance with print data supplied from the GPU  116  in this way. That is, as described above in reference to  FIG. 2 , primary scanning and secondary scanning of the carriage  240  are executed by driving the carriage motor  230  and the sheet feeding motor  235  and ejecting ink drops by driving the printing head  241  in accordance with movements thereof, thereby, ink dots are formed. As a result, a printed image of a scene the same as that displayed on the screen of the monitor  150  is provided.  
         [0160]     As described above, in the image printing processing, print data is formed from the minute polygon data and therefore, in the print data, a surface of the object is expressed as a smooth surface including a curved face portion. Therefore, in the printed image provided based on the print data, the surface of the object is not angular and the printed image can be provided as if an existing object were taken by a photograph. Further, during a game, since the polygon data that are generated are based on relatively large polygons, images can be quickly displayed.  
         [0161]     As described above, since image data are supplied by the game machine  100  to the color printer  200  connected to the game machine  100 , images displayed on the monitor  150  can be printed. When ink or the supply of printing paper in the color printer  200  runs out during printing, this must be reported to the user in order for a new ink cartridge or a supply of printing paper to be requested. In this case, generally, code data indicating that ink has run out or that the supply of paper has been exhausted is output by the color printer  200  to the game machine  100 , and a message consonant with the code data is displayed on the monitor  150  of the game machine  100  to provide a notification for the user.  
         [0162]     However, to use this method, data for translating the code data output by the color printer  200  must be stored in advance in the game machine  100 . For a printer that was already known when the game machine  100  appeared on the market, such data can be stored in advance in the game machine  100 . However, when a printer for which a new function is provided or a printer that employs new colors of ink for printing was developed after the game machine  100  went on sale, it is impossible for data for translating all the code data output by these printers to be stored in advance in the game machine  100 . While taking this point into account, the game machine  100  of this embodiment performs the following process to display information for the printer.  
         [0163]      FIG. 24  is a flowchart showing processing for displaying printer information in the image output system. This process is performed by the CPU  101  mounted in the game machine  100 . As shown, during the printer information displaying processing, first, whether a display request has been issued by the color printer  200  is determined (step S 200 ). That is, when an event occurs in the color printer  200 , such as that the supply of ink or of paper has been exhausted, that must be reported to a printer operator, the color printer  200  outputs a special control code to the game machine  100 . Upon receiving this control code, the CPU  101  of the game machine  100  determines that the color printer  200  has requested that a specific message be displayed. In this explanation, for convenience sake, the CPU  101  performs monitoring constantly to determine whether a display request has been issued by the color printer  200 . However, the CPU  101  need not always perform this monitoring, but may, upon receiving a control code for a display request issued by the color printer  200 , generate an interrupt and initiate the printer state displaying processing.  
         [0164]     When it is determined that the display request has been issued by the color printer  200  (yes at step S 200 ), the CPU  101  of the game machine  100  prepares the printer information displaying screen on the monitor  150  (step S 202 ).  FIG. 25  is a schematic view showing a state that a printer information displaying screen is displayed on the monitor  150 . As shown, two buttons, an “OK” button and a “Cancel” button, and a screen title “Printer Information” are provided on the printer information displaying screen. An area (the printer information displaying region) wherein the contents of printer information are to be displayed is blank, i.e., nothing is displayed in this region. It should be noted that in  FIG. 25  the printer information displaying region is shaded.  
         [0165]     When the printer information displaying screen shown in  FIG. 25  appears on the monitor  150 , the CPU  101  displays, in the printer information displaying region, data output by the color printer  200  (step S 204 ).  FIG. 26  is a schematic view showing a state that data output from the color printer is displayed in the printer information displaying region in the printer information displaying screen. In the example as shown, only texts are displayed in the printer information displaying region. Therefore, in this case, following the reception of the control code requesting that information be displayed, the color printer  200  must merely output text data for the contents that are to be displayed. Thus, after the CPU  101  of the game machine  100  has received the control code and has prepared the printer information displaying screen shown in  FIG. 25 , the CPU  101  need only display, in the printer information displaying region, the text data received from the color printer  200 , so that the screen as shown in  FIG. 26  and the printer information are displayed on the monitor  150 .  
         [0166]     When the data received from the color printer  200  are displayed in the printer information displaying region, a check is performed to determine whether the “OK” button (the confirmation button) on the screen of the monitor  150  is depressed (step S 206 ). When it is determined that the confirmation button is depressed (yes at step S 206 ), the printer information displaying screen shown in  FIG. 26  is closed (step S 208 ). Thereafter, the printer information displaying processing in  FIG. 24  is terminated.  
         [0167]     According to the above described printer information displaying processing, information concerning the color printer  200  can be appropriately displayed simply by displaying data, prepared in advance and supplied by the color printer  200 , on the printer information displaying screen. That is, since data for translating code data output by the color printer  200  need not previously be stored in the game machine  100 , contents consonant with an arbitrary printer connected to the game machine  100  can be appropriately displayed.  
         [0168]     When, for example, the supply of ink in a special color loaded in the color printer  200  is exhausted, the CPU  101  of the game machine  100  need only prepare the printer information displaying screen and display data supplied by the color printer  200 , so as to appropriately notify the printer operator that the supply of the special ink has been exhausted. Of course, data to be displayed on the screen must be stored in advance in the color printer  200 , and an adequate memory capacity for this is required. However, since data for only one printer model must be stored, only a small memory capacity is required. Furthermore, when the color printer  200  is to be employed in a different country, the data to be stored in the printer must merely be described in the local language, so that the printer information can be appropriately displayed, without any alteration of the game machine  100  being required.  
         [0169]      FIG. 27  is a schematic view showing a case that the data output from the color printer is described with Japanese language. As shown, when data output by the color printer  200  are described in a local language, the CPU  101  of the game machine  100  must simply display the data received on the screen, for the printer information to be appropriately displayed in the local language. As described above, according to the printer information displaying processing of this embodiment, regardless of whichever type of printer produced for whichever country is connected to the game machine  100 , the game machine  100  can appropriately display information output by the printer, without any special process having to be performed.  
         [0170]     Furthermore, according to the printer information displaying processing of this embodiment, the process for displaying data concerning the color printer  200  is also extremely simplified. Specifically, after the color printer  200  has issued a display request to the game machine  100 , the color printer  200  must simply output, to the game machine  100 , data stored in advance, for the information to be displayed on the screen of the monitor  150 . Furthermore, since data consonant with the printer model is stored in each printer, the contents displayed on the monitor  150  will always correspond to the model of the printer being used.  
         [0171]     In the above explanation, text data have been output by the color printer  200 . However, the data output by the color printer  200  are not limited to text data, image data can also be output. The form of the image data may, for example, be an arbitrary general-purpose data form, such as a bitmap form, a GIFF form or a JPEG form.  
         [0172]      FIG. 28  is a schematic view showing a state that text data and image data are displayed in the printer information displaying region. In order to display such information, information described using a text data form and information described using an image data form must merely be included in the data output by the color printer  200 . For these data, data described in a so-called markup language, such as is used for an HTML document, can be properly employed. Then, when the above data are received, the game machine  100  need only display as text, the data portion described using the text data form, and display as an image, the data portion described using the image data form.  
         [0173]     Further, in an example image shown in  FIG. 28 , the external appearance of the color printer  200  connected to the game machine  100  is shown, and the position of a paper supply switch is indicated by an arrow. The external appearance of the printer and the position of the paper supply switch may differ depending on the printer model; however, in the printer information displaying processing in this embodiment, since the data are supplied by the color printer  200 , the game machine  100  can display appropriate information, without having to identify the model of the connected printer.  
         [0174]     Data may be separately output by the color printer  200  a plurality of times.  FIGS. 29A and 29B  are schematic views showing cases that data is divided into plural pieces and the pieces are sequentially output from the color printer  200 . As shown, when printing is initiated, first, the image data shown in  FIG. 29A  are output by the color printer  200  and displayed on the screen of the monitor  150 . Then, when the image printing is progressed to a degree, the image data shown in  FIG. 29B  is output. In this manner, the game machine  100  must simply display the data supplied by the color printer  200 , so that a display consonant with the progress of the process performed by the color printer  200  can be provided.  
         [0175]     Sound data may also be output by the color printer  200 , or else data described so that sound is combined with text or an image may be output. So long as the data to be output by the color printer  200  are described by employing one of the so-called markup languages, such as HTML, tags corresponding to text, image and sound data forms must simply be inserted into the data, for the data to be described by combining the sound and the text or the image data forms.  
         [0176]     In the printer information displaying processing of the embodiment described above, in each case only data supplied by a printer are displayed (or sound data are reproduced) in accordance with a display request issued by the printer. When the game machine  100  serves in a passive role, as in the above described displaying processing, the display contents tend to be related to the operation state of a printer. However, the game machine  100  can also actively request data from a printer, and display the data so obtained.  
         [0177]      FIG. 30  is a flowchart showing another processing for displaying printer information executed in the image output system. This process, as is the previously described printer information displaying processing, is performed by the CPU  101  mounted in the game machine  100 . The process will now be explained while referring to the flowchart.  
         [0178]     When, for example, the operator of the game machine  100  depresses a predetermined button provided on the controller  102 , the CPU  101  of the game machine  100  generates an interrupt and initiates the printer information displaying processing. In order to specifically explain the printer information displaying processing performed as an aid in understanding, a case is employed wherein help information is displayed for a printer.  
         [0179]     As shown, during the printer information displaying processing, first, a printer help displaying screen is prepared (step S 300 ).  FIG. 31  is a schematic view showing a state that the printer help displaying screen is displayed on the monitor  150 . As shown, three buttons, a “Return” button, a “Next” button and a “Close” button, a screen title “Printer Help”, and an area (a printer help displaying region) wherein help information for a printer is to be displayed are provided on the printer help displaying screen. It should be noted that in  FIG. 31  the printer help displaying region is shaded.  
         [0180]     When the CPU  101  of the game machine  100  has displayed the printer help screen the CPU- 101  outputs control code to the color printer  200  requesting help data (step S 302  in  FIG. 30 ). Upon receiving the control code requesting the help data, the color printer  200  outputs, to the game machine  100 , data that was previously stored. The help data are described using a text form, an image form, a sound form or a combination of them, and are stored in advance in the color printer  200 .  
         [0181]     The CPU  101  of the game machine  100  receives the help data from the color printer  200  and displays that data in the previously prepared printer help displaying region (step S 304 ). When sound data are included in the received data, reproduction of the sound data is also performed.  FIG. 32  is a schematic view showing a state that help data output from the color printer  200  is displayed in a predetermined region in the printer help displaying screen. Since all the help data output by the color printer  200  can not be displayed at one time in the printer help displaying region, the displaying region must be changed by depressing the “Next” button or the “Return” button on the screen. This function is provided by a screen displaying function (specifically a browser) mounted in the game machine  100 . In this manner, at step S 304  in the printer information displaying processing of the second embodiment shown in  FIG. 30 , from among the help data received from the color printer  200 , data at a designated location are read and displayed on the screen.  
         [0182]     When it is confirmed that the “Close” button on the printer help screen is depressed (yes at step S 306 ), the printer help screen in  FIG. 32  is closed (step S 308 ) and the printer information displaying processing in  FIG. 30  is terminated.  
         [0183]     During the printer information displaying processing described above, the data supplied by the color printer  200  must simply be displayed in the previously prepared area on the screen of the monitor  150 , so that information for the color printer  200  can be appropriately displayed. Therefore, regardless of whichever type of printer produced for whichever country is connected to the game machine  100 , the game machine  100  can appropriately display information output by the printer, without any special process having to be performed.  
         [0184]     Various embodiments have been described. However, the present invention is not limited to these embodiments, and can be variously modified without departing from the scope of the present invention.  
         [0185]     For example, in the above described embodiments, the game machine  100  is employed as the apparatus that supplies image data. However, since all the printer information displaying processings can be performed without any special processing capability being required, an arbitrary apparatus of a type that supplies image data to the color printer  200  can perform the printer information process extremely easily. For example, an apparatus, such as a digital camera or a mobile phone, that has a monitor screen can appropriately perform the above described printer information displaying processing.  
         [0186]     Of course, an apparatus, such as a computer, having a high level processing capability can also be employed as an apparatus for supplying image data to the printer. Also, in this case, an apparatus that supplies image data can appropriately display information output by the printer, without being aware of the type of printer that is connected.