Game development support system, game development support method, information processing device, and information processing program
Patent Information
- Application Number
- JP2023132435
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-08-16
- Publication Date
- 2025-02-28
- Estimated Expiration
- 2043-08-16
AI Technical Summary
【0025】 この発明によれば、開発中のゲームプログラムの動作を確認する際の手間を軽減させることができる。
Smart Images

Figure 2025027572000001_ABST
Abstract
Description
[Technical field]
[0001] The present invention relates to a game development support system, a game development support method, an information processing device, and an information processing program, and in particular to a game development support system, a game development support method, an information processing device, and an information processing program for viewing, for example, video captured from game images displayed during the execution of a game program under development, and logs generated and output during the execution of a game program under development. [Background technology]
[0002] An example of this type of information processing device is disclosed in Patent Document 1. In the game development system disclosed in Patent Document 1, a game device executes a game program under development, and generates and transmits logs used in game processing to the information processing device. The information processing device displays the logs acquired from the game device, and the game developer visually checks the logs generated during game processing. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Patent 7072625 Summary of the Invention [Problem to be solved by the invention]
[0004] When developing a game program, it is common to capture video of the game screen, but because the exact timing at which the game screen is displayed is unknown from the video, it is time-consuming to synchronize the timing of the log and the video when viewing them using an information processing device included in a game development system such as the background art.
[0005] Therefore, a primary object of the present invention is to provide a novel game development support system, a novel game development support method, an information processing device, and an information processing program.
[0006] Another object of the present invention is to provide a game development support system, a game development support method, an information processing device, and an information processing program that can reduce the effort required when checking the operation of a game program under development. [Means for solving the problem]
[0007] (Configuration 1) Configuration 1 is a game development support system including at least a game device that executes a game program under development and an information processing device. The game program under development causes the computer of the game device to output a log during execution of game processing, and generates game images so as to include an identification image that can identify the timing at which the game images are output during at least a predetermined period during execution of the game processing. The information processing device acquires the log from the game device, acquires video data capturing the game images, performs image analysis on the video data, identifies a frame in the video that includes the identification image, identifies the timing at which the game image including the identification image was output, and generates a viewing image that includes at least the log and the video, and in which the log and the video are displayed in synchronization, based on the identified timing and timing information included in the log.
[0008] According to configuration 1, it is possible to identify when a video was captured and to view it in sync with the log, thereby reducing the effort required to check the operation of a game program under development.
[0009] (Configuration 2) In configuration 2, in configuration 1, the identification image is an image of information that is placed at a predetermined position within the game image and indicates the timing at which the game image is being output.
[0010] According to configuration 2, the identification image is placed at a predetermined position within the game image, so that it is easy to identify the frame within the video that includes the identification information.
[0011] (Configuration 3) In a third aspect of the present invention, in the first or second aspect, the identification image is an image of text information indicating the number of frames from the start of the game or a predetermined timing after the start of the game.
[0012] According to configuration 3, since the identification image is an image of text information indicating the frame number, the timing at which the game image is output can be specified by the frame number.
[0013] (Configuration 4) Configuration 4 is configuration 1, in which the identification image is an image of information that is placed at a predetermined position on the game image at a predetermined timing after the start of the game, and the computer of the game device further outputs information indicating the first timing at which the image of the information is placed at the predetermined position on the game image.
[0014] According to configuration 4, by detecting an information image from the video and combining it with information indicating the initial timing of output, it is possible to identify the timing at which the information image was placed at a predetermined position in the game image.
[0015] (Configuration 5) Configuration 5 is a configuration 4 in which the identification image is an image of a pattern of a predetermined color.
[0016] According to configuration 5, since only a predetermined color is detected, the information image can be detected with a simple configuration.
[0017] (Configuration 6) Configuration 6 is any one of configurations 1 to 5, in which the game device captures game images to generate video data, and the information processing device receives the video data from the game device.
[0018] (Configuration 7) Configuration 7 is any one of configurations 1 to 5, in which the information processing device captures game images and generates video data.
[0019] (Configuration 8) Configuration 8 is any one of configurations 1 to 3, in which the information processing device acquires video data obtained by capturing a game image displayed on the display device by the imaging device.
[0020] (Configuration 9) Configuration 9 is any of configurations 1 to 5, wherein the game program under development further causes the computer of the game device to detect the occurrence of a predetermined error during game execution, and when the error is detected, generates a game image including an identification image, and transmits video data of a predetermined period of time including at least the timing when the game image including the identification image was generated in response to the occurrence of the error to the information processing device.
[0021] (Configuration 10) Configuration 10 is a game development support method including at least a game device that executes a game program under development and an information processing device that executes an information processing program. The game program under development causes a computer of the game device to output a log during execution of game processing, and generates game images so as to include an identification image that can identify the timing at which the game images are output during at least a predetermined period during execution of the game processing. The information processing program causes a computer of the information processing device to acquire a log from the game device, acquire video data capturing game images, perform image analysis on the video data, identify a frame in the video that includes the identification image, identify the timing at which the game image including the identification image was output, and generate a viewing image that includes at least the log and the video, and in which the log and the video are displayed in synchronization, based on the identified timing and timing information included in the log.
[0022] (Configuration 11) Configuration 11 is an information processing device that acquires a log from a game device that is executing a game program under development, acquires video data capturing a game image that includes an identification image that enables identification of the timing at which the game image is output, performs image analysis on the video data, identifies a frame in the video that includes the identification image, identifies the timing at which the game image including the identification image was output, and generates a viewing image that includes at least the log and the video, and in which the log and the video are displayed in synchronization, based on the identified timing and timing information included in the log.
[0023] (Configuration 12) Configuration 12 is an information processing program executed on an information processing device, which causes a processor of the information processing device to acquire a log from a game device executing a game program under development, acquire video data capturing a game image including an identification image that allows the timing at which the game image is output to be identified, perform image analysis on the video data, identify a frame in the video including the identification image, identify the timing at which the game image including the identification image was output, and generate a viewing image that includes at least the log and the video, and in which the log and the video are displayed in synchronization, based on the identified timing and timing information included in the log.
[0024] In configurations 10 to 12, as in configuration 1, the effort required to check the operation of a game program under development can be reduced. Effect of the Invention
[0025] According to this invention, it is possible to reduce the effort required to check the operation of a game program under development.
[0026] The above objects, other objects, features and advantages of the present invention will become more apparent from the following detailed description of the embodiments with reference to the drawings. [Brief description of the drawings]
[0027] [Figure 1] FIG. 1 is a diagram showing a non-limiting example of the configuration of a game development support system according to a first embodiment. [Diagram 2] FIG. 2 is a block diagram showing a non-limiting example of the electrical configuration of the game device shown in FIG. [Diagram 3] FIG. 3 is a block diagram showing a non-limiting example of the electrical configuration of the information processing device shown in FIG. [Figure 4] FIG. 4 is a diagram showing a non-limiting example of a game screen displayed on the display device of the game device shown in FIG. [Diagram 5] FIG. 5 is a diagram showing a non-limiting example of a viewing screen displayed on the display device of the information processing device shown in FIG. [Figure 6] FIG. 6 is a non-limiting example illustrating the discrepancy between the game time of a game program executed on a game device and the recording time. [Figure 7] FIG. 7 is a diagram showing a non-limiting example of a game screen including an identification image. [Figure 8] FIG. 8 is a diagram showing a non-limiting example for explaining an identification image included in a game screen. [Figure 9] FIG. 9 is a diagram showing a non-limiting example of a memory map of the RAM of the game device shown in FIG. [Figure 10] FIG. 10 is a diagram showing a non-limiting example of the specific contents of the data storage area of the RAM shown in FIG. [Figure 11] FIG. 11 is a diagram showing a non-limiting example of a memory map of the RAM of the information processing device shown in FIG. [Figure 12] FIG. 12 is a flow chart showing a non-limiting example of the overall processing of a game program of a processor built into the game device shown in FIG. [Figure 13] FIG. 13 is a flow chart showing a part of a non-limiting example of game image generation processing by the processor built into the game device shown in FIG. [Figure 14] FIG. 14 is a flowchart showing another non-limiting example of the game image generation process by the processor built in the game device shown in FIG. 2, and follows FIG. [Figure 15] FIG. 15 is a flow chart showing a part of a non-limiting example of the analysis and identification process of the processor built in the information processing device shown in FIG. [Figure 16] FIG. 16 is a flowchart showing another non-limiting example of the analysis and identification process of the processor built in the information processing device shown in FIG. 3, which follows FIG. [Figure 17] FIG. 17 is a flow chart showing a non-limiting example of a browsing process of the processor built in the information processing device shown in FIG. [Figure 18] FIG. 18 is a diagram showing a non-limiting example for explaining an identification image of the second embodiment included in the game screen. [Figure 19] FIG. 19 is a flowchart showing a part of a non-limiting example of game image generation processing by a processor built into the game device of the second embodiment. [Figure 20] FIG. 20 is a flowchart showing another part of a non-limiting example of the game image generation processing by the processor built into the game device of the second embodiment. [Figure 21] FIG. 21 is a flowchart showing a part of a non-limiting example of analysis and identification processing of a processor built into the information processing device of the second embodiment. [Figure 22] FIG. 22 is a flowchart showing another non-limiting example of the analysis and identification process of the processor built in the information processing device according to the second embodiment, which follows FIG. [Diagram 23] FIG. 23 is a flowchart showing another non-limiting example of the analysis and identification process of the processor built in the information processing device according to the second embodiment, which follows FIG. [Figure 24] FIG. 24 is a diagram showing a non-limiting example of the configuration of the game development support system according to the third embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0028] <First Example> 1, a non-limiting example of a game development support system 10 includes a game device 12 and an information processing device 14, which are communicatively connected to each other via wire or wirelessly. The game device 12 and the information processing device 14 can also be connected to each other via a network such as a LAN and / or the Internet.
[0029] The game device 12 is a game device that executes a game program of a virtual game under development. In this first embodiment, unless otherwise specified, the term "game program" does not refer to a commercial version of the game program, but rather to a game program under development. Similarly, the term "game device" does not refer to a commercial version of the game program, but rather to a development game device that executes a game program under development.
[0030] Fig. 2 is a block diagram showing a non-limiting example of the electrical configuration of game device 12. As shown in Fig. 2, game device 12 includes a processor 20, which is connected to a RAM 22, a flash memory 24, a communication module 26, an input device 28, a display device 30, and a D / A converter 32. The D / A converter 32 is also connected to a speaker 34.
[0031] The processor 20 is responsible for the overall control of the game device 12. Specifically, the processor 20 is a SoC (System-on-a-chip) incorporating multiple functions such as a CPU function, a GPU function, and a video memory (VRAM).
[0032] The RAM 22 is a volatile storage medium, and is used as a work memory or buffer memory for the processor 20. The flash memory 24 is a non-volatile storage medium, and is used to store game programs and to store (save) various types of data.
[0033] For example, the game program and necessary data are read from the flash memory 24 and stored in the RAM 22. In addition, the GPU built into the processor 20 generates image data for displaying various screens on the display device 30 in a VRAM (also called a frame buffer) using image generation data 304b (see FIG. 10) stored in the RAM 22, and outputs the generated image data to the display device 30.
[0034] The communication module 26 has a function of connecting to a wireless LAN, for example, by a method conforming to the IEEE802.11.b / g standard. Therefore, for example, the processor 20 uses the communication module 26 to transmit and receive data to and from other devices via an access point and a network such as the Internet. In this first embodiment, the other device is the information processing device 14. The communication module 26 may also have a function of connecting to a wired LAN. However, the communication module 26 can also be used to transmit and receive data directly to and from other devices.
[0035] Also, the communication module 26 may have a function of performing short-distance wireless communication, different from the function of connecting to a wireless LAN. Specifically, the communication module 26 has a function of transmitting and receiving infrared signals with other devices by a predetermined communication method (for example, infrared method), and a function of performing wireless communication with the same type of game device according to a predetermined communication protocol (for example, multilink protocol). In this case, for example, the processor 20 can directly transmit and receive data with the same type of other game device using the communication module 26. However, instead of the infrared short-distance wireless communication, short-distance wireless communication according to other wireless communication standards such as Bluetooth (registered trademark) may be performed.
[0036] The input device 28 is, for example, a game controller equipped with various push buttons, keys, or switches provided on the game device 12, and is used by a user or player (hereinafter simply referred to as a "player") for various operations such as menu selection and instructions in an application. For example, the game controller is provided with an A button, a B button, an X button, a Y button, an L button, an R button, a cross button (or / and a slide stick), and the like. However, in the case of a portable game device 12, a touch panel may be provided as the input device 28 in addition to the push buttons, keys, or switches.
[0037] The display device 30 is a display device such as an LCD or an organic EL. However, if the game device 12 is a stationary game device, the display device 30 is provided separately from the main body of the game device 12.
[0038] The D / A converter 32 converts the audio data provided by the processor 20 into an analog audio signal and outputs it to a speaker 34. The audio data is data about sounds generated by characters or objects, sound effects, background music, and the like.
[0039] 2 is merely an example, and is not limited thereto. For example, the input device 28 may be provided separately from the main body of the game device 12 and communicatively connected to the processor 20. The game device 12 may also be configured to allow an external memory such as an optical disk, a USB memory, or a memory card to be detachably attached thereto.
[0040] The information processing device 14 is a general-purpose personal computer, a tablet terminal, or a server. Fig. 3 is a block diagram showing a non-limiting example of the electrical configuration of the information processing device 14. As shown in Fig. 3, the information processing device 14 includes a processor 40, which is connected to a RAM 42, a HDD 44, a communication module 46, an input device 48, and a display device 50.
[0041] The processor 40 is responsible for overall control of the information processing device 14. Specifically, the processor 40 is an SoC incorporating multiple functions such as a CPU function, a GPU function, and a VRAM.
[0042] The RAM 42 is a volatile storage medium and is used as a work memory or buffer memory for the processor 40. The HDD 44 is a non-volatile storage medium and is used to store information processing programs for outputting logs and video data, and to save various types of data.
[0043] For example, the information processing program and necessary data are read from the HDD 44 and stored in the RAM 42. In addition, the GPU built into the processor 40 generates image data for displaying various screens on the display device 50 in the VRAM using image generation data 504b (see FIG. 11) stored in the RAM 42, and outputs the generated image data to the display device 50.
[0044] The communication module 46 has the same functions as the communication module 26 shown in Fig. 2, and transmits and receives data to and from the game device 12. The input device 48 can be configured, for example, with a keyboard, a computer mouse, a touch panel, etc. When the information processing device 14 is a tablet terminal, the input device 48 can be configured with hardware buttons and a touch panel provided on the device body of the information processing device 14.
[0045] The display device 50 is a display device such as an LCD or an organic EL display. However, when the information processing device 14 is a stationary personal computer or server, the display device 50 is provided separately from the main body of the information processing device 14.
[0046] 3 is merely an example, and is not limited thereto. For example, the information processing device 14 may further include a speaker. The information processing device 14 may also be configured to allow an external memory such as an optical disk, a USB memory, or a memory card to be detachably attached thereto.
[0047] As an example, the game program is a game program for a virtual game such as an action game, in which a player character object moves within a virtual space, fights enemy character objects, obtains items, and uses items in accordance with the player's operations.
[0048] Fig. 4 shows a non-limiting example of a game screen 100 when a game program is executed. In the game screen 100 shown in Fig. 4, a player character object 102 and an enemy character object 104 are displayed facing each other. In addition, the player character object 102 holds a gun object 106. Background objects other than the ground are omitted.
[0049] The game screen 100 is also an image of a game under development that is displayed when a game program is being executed, and at least one of the upper and lower areas 110 of the game screen 100 displays internal information of the game program that is not displayed in the game image when the product version of the game program is executed. The internal information includes the CPU and GPU usage rates, memory occupancy, player operation information, the progress of the virtual game, and the total time spent playing the virtual game (i.e., total play time). In FIG. 4, the area 110 is painted gray to make it easier to see.
[0050] Furthermore, in the game device 12, while the game program processing (overall processing, which will be described later) is being executed, a log of various parameters (hereinafter referred to as a "parameter log") used in this overall processing is generated. The various parameters are parameters that indicate the properties and performance of the character objects appearing in the virtual game, and specifically correspond to the HP, level, type and number of possessed items, movement speed, acceleration, various flags, etc. of the character object (here, the player character object 102).
[0051] Furthermore, in the game device 12, a text or binary log (text log) of various parameters used in the overall processing is generated during execution of the overall processing of the game program. The text log is a log for displaying the names (or contents) and numerical values of various parameters as character strings.
[0052] The parameter log and the text log are generated for each frame (hereinafter referred to as "game frame"). The number of game frames (hereinafter referred to as "game frame number") from the start of the overall processing of the game program (i.e., the start of the game) is added to the parameter log and the text log. The parameter log and the text log are stored from the start to the end of the overall processing of the game program. The start of the game is when the game program managed by the firmware or OS of the game device 12 is started (or executed). However, the game frame number can also be the number of frames from a predetermined timing after the start of the game. The game frame is the unit time for updating the screen of the game device 12, and is set to 1 / 60 seconds, for example. The game frame can also be set to 1 / 30 seconds or 1 / 120 seconds.
[0053] When the execution of the entire process of the game program is started, the execution of a capture function provided in the game device 12 is instructed, and the game screen 100 from the start to the end of the virtual game is captured. That is, video data is generated. As an example, the file format of the video data is MP4.
[0054] In this embodiment, the parameter log, text log and moving image data for each game frame are output (or transmitted) to the information processing device 14, and the information processing device 14 acquires (or receives) the parameter log, text log and moving image data.
[0055] However, this is just one example, and the game device 12 may transmit all parameter logs, text logs and video data from the start of the game to the end of the game to the information processing device 14 after the game ends.
[0056] In another example, the game device 12 may store the parameter log, text log, and video data in a storage medium such as a memory card or an external HDD, and the information processing device 14 may acquire the parameter log, text log, and video data from this storage medium.
[0057] Moreover, the video data can also be generated by transmitting game image data generated by the game device 12 to the information processing device 14 and capturing the game image data with a capture device connected to the information processing device 14.
[0058] Fig. 5 shows a non-limiting example of viewing screen 200 displayed on display device 50 of information processing device 14. Viewing screen 200 shown in Fig. 5 includes display areas 202, 204, 206, and 208. As an example, in viewing screen 200, display areas 202 and 204 are provided side by side at the top of the screen, below which display area 206 is provided, and further below which display area 208 is provided.
[0059] A moving image obtained by playing back moving image data is displayed in display area 202. A text log is displayed in display area 204. A parameter log is displayed in display area 206. An operation panel is provided in display area 208.
[0060] However, the parameter log, text log, and operation panel are omitted in Fig. 5. The parameter log and text log are as described above. The operation panel is provided with a number of icons for playing, stopping, fast-forwarding, and rewinding the video, and a slide button for determining the playback position of the video.
[0061] On such a viewing screen 200, when a video is played, a parameter log and a text log of a game frame corresponding to a frame of the video being displayed (hereinafter referred to as a "video frame") are displayed, depending on an operation by a developer or the like.
[0062] Although not shown, on the initial viewing screen 200 when viewing is started, the display areas 202, 204, and 206 are blank.
[0063] However, since video data usually does not include information regarding the timing at which game images are displayed, i.e., the number of game frames, it is difficult to synchronize and display the video with the parameter log and text log.
[0064] FIG. 6 is a diagram for explaining the discrepancy between game frames and recording time. In FIG. 6, the upper part shows changes in game images according to the progression of the number of game frames from the start of the game, that is, the elapsed time (hereinafter referred to as "game time"). To put it simply, when the player character object 102 advances to the right in accordance with the player's operation, an enemy character object 104 appears in front of the player character object 102. The player character object 102 attacks the enemy character object 104 using a gun object 106 in accordance with the player's operation, and a bullet fired from the gun object 106 hits the enemy character object 104, causing the enemy character object 104 to fall. However, a plurality of game images (59 game frames in this case) between two adjacent game images in the upper part of FIG. 6 are omitted.
[0065] In addition, in the lower part of Fig. 6, the change in the video, i.e., the captured game image (hereinafter referred to as "captured image"), according to the progress of the number of video frames, i.e., the elapsed time (hereinafter referred to as "recording time") from the start of recording is shown. However, multiple captured images (59 video frames in this case) between two adjacent captured images in the lower part of Fig. 6 are omitted.
[0066] In the example shown in Fig. 6, for ease of understanding, the frame rate of the game image and the frame rate of the video are set to be the same and fixed, but the frame rate of the game image may change during the execution of the game program.
[0067] For example, even if capture execution is instructed at the same time as the overall processing of a game program is started, it may take some time before the capture of game images actually starts, resulting in a discrepancy between the game time and the recording time. In the example shown in Fig. 6, when the number of game frames from the start of the game is 120, that is, when the game time is 2 seconds, the recording time is 0 seconds, resulting in a discrepancy of 2 seconds. Conversely, there may also be a case where the capture of game images starts first.
[0068] Therefore, even if the output of the parameter log and the text log starts at the same time as the playback of the video data starts, the number of game frames in the parameter log and the text log will almost never match with the number of game frames in the video.
[0069] For this reason, in this embodiment, in certain cases, a game image including an identification image that allows identification of the timing at which the game image is being output is displayed, and the identification image is also included in the video data, thereby synchronizing the log and video on the viewing screen 200.
[0070] FIG. 7 is a diagram showing a non-limiting example of a game screen 100 including an identification image. In the game screen 100 shown in FIG. 7, an identification image display area 120 is provided in the upper left corner of the screen. That is, the identification image is placed at a predetermined position in the game image. In the first embodiment, the identification image is an image of a marker of a predetermined color (e.g., green) and a character string indicating the number of game frames from the start of the game. Furthermore, the identification image is displayed (or drawn) for only a first predetermined time (1.1 seconds in the first embodiment).
[0071] FIG. 8 is an enlarged view of the upper left portion of the game screen 100. As shown in FIG. 8, the display area 120 includes a display area 120a and a display area 120b. The display area 120a is an area that displays a green marker. The display area 120b is an area of the display area 120 other than the display area 120a, and is an area that displays a character string indicating the number of game frames. In FIG. 7 and FIG. 8, a rectangular frame is displayed to easily show the display area 120, but the rectangular frame does not need to be displayed in the actual game screen 100. In FIG. 8, the display area 120a is filled in gray to distinguish the display area 120a from the display area 120b.
[0072] When the top left vertex of the game screen 100 is set as the origin (0,0), the display area 120a is determined to have a range from length x1 to length x2 in the horizontal direction and a range from length y1 to length y2 in the vertical direction. The display area 120b is determined to have a range from length x2 to length x3 in the horizontal direction and a range from length y1 to length y2 in the vertical direction. However, the lengths x1, x2, x3, y1, and y2 are each expressed by the number of pixels when game image data corresponding to the game screen 100 is generated in the VRAM.
[0073] The predetermined cases are when capture of the game screen 100 is started at the start of the game, and when an error occurs during execution of the game program. An error is determined during the overall processing of the game program, and specifically, an error is determined when the player character object 102 is located in a place where it should not be.
[0074] The video data is generated from the start of the game to the end of the game. If an error occurs, video data is generated using video data from the start of the game to the end of the game, including at the end of the video data a capture image including an identification image displayed (or drawn) due to the occurrence of the error, and beginning at a position going back a second predetermined time (for example, 5 minutes) from the end. The video data for the portion where the error occurred is generated by a developer or the like.
[0075] Therefore, the video data includes an identification image in a part including the beginning or a part including the end. Therefore, in the information processing device 14, when a log and a video are viewed, the video data is analyzed prior to viewing, and an identification image included in the video data is detected. However, analysis may be performed simultaneously while the video is being viewed by parallel processing. In this case, the video is viewed in a manner not synchronized with the log until the analysis is completed.
[0076] In the process of analyzing the video data (hereinafter referred to as the "process of image analysis"), the video data is scanned for a third predetermined time period (e.g., 30 seconds) including the beginning of the video data and a third predetermined time period including the end of the video data, and identification images included in the video frames constituting the video data are detected. Furthermore, the recording time of the video frame including the detected identification image and the corresponding number of game frames are identified.
[0077] Specifically, before image analysis processing, the video data is decoded according to the MP4 file format. In the image analysis processing, first, image data corresponding to the first video frame of the decoded video data is loaded into the VRAM, and it is determined whether or not a green marker is drawn in the range corresponding to the display area 120a among the image data loaded into the VRAM. In other words, it is determined whether or not the color values (i.e., RGB values) of the pixels in the range corresponding to the display area 120a indicate green.
[0078] When a green marker is detected in the range corresponding to the display area 120a, character recognition processing is performed in the range corresponding to the display area 120b. Specifically, OCR processing is performed in the range corresponding to the display area 120b. Since OCR processing is a well-known technique, a description thereof is omitted. Therefore, the number of game frames included in the image data expanded in the VRAM is recognized or detected. Therefore, the recording time of the video frame corresponding to the image data expanded in the VRAM and the corresponding number of game frames are identified.
[0079] On the other hand, if a green marker is not detected in the range corresponding to display area 120a, it is determined whether a green marker is drawn in a predetermined number of video frames (for example, 5) ahead. That is, the video data is scanned while skipping video frames. This is to reduce the processing load of the image analysis process. Therefore, it is also possible to scan the video data without skipping video frames.
[0080] The first 30 seconds of video data are scanned, and if no green marker is detected, the video data is scanned from 30 seconds before the end to the end (hereafter referred to as the "last 30 seconds"). Scanning the last 30 seconds of video data is the same as scanning the 30 seconds including the first video frame.
[0081] Since the identification image is drawn in the display area 120 at a predetermined position of the game image, the image analysis process can easily identify or detect the video frame corresponding to the image data including the identification image, since it is only necessary to search the range corresponding to this display area 120. Also, since the identification image is a character string of the game frame number, the timing at which the identification image is drawn in the game device 12 can be identified by the game frame number.
[0082] In the first embodiment, it is determined whether or not a green marker is drawn in the range corresponding to the display area 120a, but it may be determined whether or not a green marker is drawn in a first predetermined range including the range corresponding to the display area 120a. As an example, the first predetermined range is about 1.2 to 2 times the size of the range corresponding to the display area 120a. Similarly, the character recognition process is performed in the range corresponding to the display area 120b, but it may be performed in a second predetermined range including the range corresponding to the display area 120b. As an example, the second predetermined range is about 1.2 to 2 times the size of the range corresponding to the display area 120b.
[0083] When the recording time and the corresponding number of game frames are specified, the video data and the log are synchronized based on this information and displayed on the viewing screen 200. Here, a method for synchronizing the video data and the log will be described.
[0084] During execution of a game program, the frame rate may be changed according to the processing load of the processor 20. In order to accommodate this change in frame rate, i.e., a variable frame rate, a game time corresponding to the number of game frames identified by analyzing the video data is further identified, and a deviation in the identified recording time (hereinafter, referred to as "time deviation") is calculated (or identified) by analyzing the video data for the identified game time, and viewing image data for the viewing screen 200 in which the video data and the log are synchronized using the calculated time deviation is generated. As an example, the time deviation is calculated by subtracting the identified recording time from the identified game time. Therefore, if the start of recording is later than the start of the game, the time deviation is a positive value, and if the start of recording is earlier than the start of the game, the time deviation is a negative value.
[0085] As described above, in order to identify the game time corresponding to the number of game frames, a log of information on the game time corresponding to the number of game frames, i.e., the elapsed time from the start of the game (hereinafter referred to as "time corresponding information") is generated during execution of the game program, and the log of the time corresponding to the information (hereinafter referred to as "time corresponding information log") is output to the information processing device 14. In order to generate a log of the game time corresponding to the number of game frames, the game time is counted in μseconds.
[0086] However, the game device 12 may transmit all time-based information logs from the start of the game to the end of the game, together with all parameter logs, text logs and video data from the start of the game to the end of the game, to the information processing device 14 after the game ends.
[0087] Alternatively, the game device 12 may store the time-corresponding information log together with the parameter log, text log and video data in a storage medium such as a memory card or an external HDD, and the information processing device 14 may acquire the parameter log, text log, video data and time-corresponding information log from this storage medium.
[0088] When a developer or the like starts the viewing process, a viewing screen 200 is displayed on the display device 50 of the information processing device 14. When a developer or the like issues an instruction to play using an operation panel displayed in the display area 208 of the viewing screen 200, playback of the video starts, and the parameter log and text log start to be displayed in accordance with the video. Basically, the video is played from the beginning, but if a developer or the like specifies a playback position, it is played from the specified playback position.
[0089] During video playback, the game time corresponding to the current recording time of the video data (hereinafter referred to as "current time") is calculated using the time offset. The game time is calculated by adding the time offset to the current time. Once the game time is calculated, the parameter log and text log of the number of game frames corresponding to the calculated game time are displayed.
[0090] 9 is a diagram showing an example of a memory map 300 of the RAM 22 of the game device 12 shown in FIG. 2. As shown in FIG. 9, the RAM 22 includes a program storage area 302 and a data storage area 304. The game program of the first embodiment is stored in the program storage area 302. The game program includes a main processing program 302a, a communication program 302b, an image generating program 302c, an image display program 302d, an operation input detection program 302e, a game control program 302f, a frame number count program 302g, a game time count program 302h, an identification image drawing program 302i, a parameter log generating program 302j, a parameter log output program 302k, a text log generating program 302m, a text log output program 302n, a time-based information log generating program 302p, a time-based information log output program 302q, a capture program 302r, and a video data output program 302s.
[0091] The game program may be stored in advance in the flash memory 24, or may be acquired from an external memory such as an optical disk, USB memory, or memory card that is detachable from the game device 12. However, a part of the game program may be stored in the flash memory 24, and the other part may be acquired from the external memory. The same applies to the image generation data 304b described later.
[0092] The main processing program 302a is a program for processing the main routine of the game program of the first embodiment.
[0093] The communication program 302b is a program for communicating with an external device, which is the information processing device 14 in this first embodiment.
[0094] The image generation program 302c is a program for generating (or drawing) game image data corresponding to the game screen 100, i.e., a game image, using the image generation data 304b. When it is determined that an identification image is to be drawn, game image data including image data of the identification image is generated. However, when it is not determined that an identification image is to be drawn, game image data not including image data of the identification image is generated.
[0095] The image display program 302d is a program for outputting game image data generated according to the image generation program 302c to the display device 30. Therefore, the game screen 100 is displayed on the display device 30.
[0096] The operation input detection program 302e is a program for detecting operation input data 304a input by the player to the operation input unit. In this first embodiment, the operation input unit is various push buttons, keys, or switches provided on the input device .
[0097] The game control program 302f is a program for executing game control processing of the virtual game of the first embodiment.
[0098] The frame number count program 302g is a program for counting the number of game frames from the start of the game.
[0099] The game time count program 302h is a program for counting the game time from the start of the game.
[0100] The identification image drawing program 302i is a program for determining whether or not to draw an identification image (a green marker and the number of game frames in the first embodiment).
[0101] The parameter log generating program 302j is a program for generating a parameter log for each game frame.
[0102] The parameter log output program 302k is a program for outputting a parameter log generated according to the parameter log generating program 302j. In this first embodiment, the parameter log is output to the information processing device 14. At this time, the communication program 302b is also executed.
[0103] The text log generation program 302m is a program for generating a text log for each game frame.
[0104] The text log output program 302n is a program for outputting a text log generated according to the text log generation program 302m. In this first embodiment, the text log is output to the information processing device 14. At this time, the communication program 302b is also executed.
[0105] The time-based information log generating program 302p is a program for generating a time-based information log for each game frame.
[0106] The time-based information log output program 302q is a program for outputting a time-based information log generated according to the time-based information log generation program 302p. In this first embodiment, the time-based information log is output to the information processing device 14. At this time, the communication program 302b is also executed.
[0107] The capture program 302r is a program for capturing game images and generating video data.
[0108] The video data output program 302s is a program for outputting video data generated according to the capture program 302r. In this first embodiment, the video data is output to the information processing device 14. At this time, the communication program 302b is also executed.
[0109] Although not shown, the program storage area 302 also stores other programs such as a sound output program for generating and outputting sounds required in a virtual game, and a program for changing the orientation of a virtual camera according to a player's operation input. The program storage area 302 also stores firmware or an OS, middleware, and the like.
[0110] Fig. 10 shows a non-limiting example of the specific contents of the data storage area 304 of the RAM 22 shown in Fig. 9. As shown in Fig. 10, the data storage area 304 stores operation input data 304a, image generation data 304b, game frame number data 304c, game time data 304d, parameter data 304e, parameter log data 304f, text log data 304g, time-corresponding information log data 304h, video data 304i, an identification image drawing flag 304j, an error flag 304k, and the like.
[0111] The operation input data 304a is data input from the input device 28, and is stored in chronological order. After being used for processing by the processor 20, the operation input data 304a is erased.
[0112] The image generation data 304b includes data such as polygon data and texture data for generating game image data.
[0113] The game frame number data 304c is data on the number of game frames counted from the start of the game.
[0114] The game time data 304d is data on the game time counted in microseconds from the start of the game.
[0115] The parameter data 304e is data on various parameters, and is updated by the game control process.
[0116] The parameter log data 304f is data of a parameter log generated in the current game frame, and is updated for each game frame.
[0117] The text log data 304g is data of a text log generated in the current game frame, and is updated for each game frame.
[0118] The time-based information log data 304h is data of a time-based information log generated in the current game frame, and is updated for each game frame.
[0119] The video data 304i is data of a game image captured in the current game frame, and is updated for each video frame.
[0120] The identification image drawing flag 304j is a flag for determining whether or not to draw the identification image. When it is determined that the identification image is to be drawn according to the identification image drawing program 302i, the identification image drawing flag 304j is turned on. On the other hand, when it is determined that the identification image is not to be drawn according to the identification image drawing program 302i, the identification image drawing flag 304j is turned off.
[0121] The error flag 304k is a flag for determining whether or not to draw an identification image when an error occurs. When an identification image is to be drawn when an error occurs, the error flag 304k is turned on, and when an identification image is not to be drawn when an error occurs, the error flag 304k is turned off.
[0122] Although not shown in the figure, other data necessary for executing the game program is stored in the data storage area 304, and a counter or timer is provided in the data storage area 304. For example, parameter data for each non-player object such as the enemy character object 104 in the virtual space, each background object, and the virtual camera is also stored.
[0123] Fig. 11 is a diagram showing an example of a memory map 500 of the RAM 42 of the information processing device 14 shown in Fig. 3. As shown in Fig. 11, the RAM 42 includes a program storage area 502 and a data storage area 504. The information processing program of the first embodiment is stored in the program storage area 502. The information processing program includes a main processing program 502a, a communication program 502b, an image generating program 502c, an image display program 502d, an operation input detection program 502e, an acquisition program 502f, a decoding program 502g, an image analysis program 502h, an identification program 502i, a time lag calculation program 502j, a video playback program 502k, and a log display program 502m.
[0124] The information processing program may be stored in advance in the HDD 44, or may be acquired from an external memory such as an optical disk, a USB memory, or a memory card that is detachable from the information processing device 14. However, a part of the information processing program may be stored in the HDD 44, and the other part may be acquired from the external memory. The same applies to the image generation data 504b described later.
[0125] The main processing program 502a is a program for processing the main routine of the information processing program of the first embodiment.
[0126] The communication program 502b is a program for communicating with an external device, the game device 12 in this first embodiment.
[0127] Image generating program 502c is a program for generating (or drawing) viewing image data corresponding to viewing screen 200, using image generation data 504b, parameter log data 504c, text log data 504d, and video data 504f.
[0128] The image display program 502d is a program for outputting the viewing image data generated according to the image generating program 502c to the display device 50. Therefore, the viewing screen 200 is displayed on the display device 50.
[0129] The operation input detection program 502e is a program for detecting operation input data 504a to the operation input unit by a developer, etc. In this first embodiment, the operation input unit is various push buttons, keys, or switches provided on the input device 48.
[0130] The acquisition program 502f is a program for acquiring the parameter log data 504c, the text log data 504d, the time-based information log data 504e, and the video data 504f. In this first embodiment, the parameter log, the text log, and the video received from the game device 12 according to the communication program 502b are acquired.
[0131] The decoding program 502g is a program for decoding the video data 504f acquired from the game device 12. However, when decoding the video data 504f, a decoding program included in the video playback program 502k may be used.
[0132] The image analysis program 502h is a program for scanning the decoded video data 504f, detecting identification images contained in image data corresponding to video frames constituting the video data 504f, and detecting the number of game frames from the detected identification images.
[0133] The identification program 502i is a program for identifying the recording time of a video frame corresponding to the image data from which the number of game frames has been detected, and the corresponding number of game frames.
[0134] The time lag calculation program 502j is a program for specifying a game time corresponding to the number of game frames specified according to the specification program 502i, and calculating (or specifying) a time lag.
[0135] The video playback program 502k is a program for playing a video. The log display program 502m is a program for displaying a parameter log and text in synchronization with the video, using a time lag calculated according to the time lag calculation program 502j. When playing a video and displaying a log, the image generation program 502c and the image display program 502d are also executed.
[0136] Although not shown in the drawing, other programs necessary for information processing are also stored in the program storage area 502. The program storage area 502 also stores an OS, middleware, and the like.
[0137] Furthermore, data storage area 504 stores operation input data 504a, image generation data 504b, parameter log data 504c, text log data 504d, time-based information log data 504e, video data 504f, and time lag data 504g.
[0138] The operation input data 504a is data input from the input device 48, and is stored in chronological order. The operation input data 504a is deleted after being used for processing by the processor 40. The image generation data 504b includes data for generating the browsing image data.
[0139] The parameter log data 504c is the parameter log data 304f acquired from the game device 12 from the start of the game to the end of the game.
[0140] The text log data 504d is the text log data 304g acquired from the game device 12 from the start of the game to the end of the game.
[0141] The time-based information log data 504e is the time-based information log data 304h acquired from the game device 12 from the start of the game to the end of the game.
[0142] The video data 504f is the video data 304i from the start of the game to the end of the game obtained from the game device 12. In addition, the video data 504f may be video data of a portion where an error has occurred, generated using the video data 304i from the start of the game to the end of the game obtained from the game device 12.
[0143] The time lag data 504g is data on the time lag calculated according to the time lag calculation program 502j.
[0144] Although not shown, the data storage area 504 stores other data necessary for information processing, and is provided with a counter or a timer.
[0145] Fig. 12 is a flow diagram showing a non-limiting example of the processing (overall processing) of the game program of the processor 20 shown in Fig. 2. Figs. 13 and 14 are flow diagrams showing a non-limiting example of the game image generation processing of the processor 20 shown in Fig. 2. Figs. 15 and 16 are flow diagrams showing a non-limiting example of the analysis and identification processing of the processor 40 shown in Fig. 3. Fig. 17 is a flow diagram showing a non-limiting example of the browsing processing of the processor 40 shown in Fig. 3.
[0146] However, the processing of each step in the flow diagrams shown in Figures 12 to 17 is merely an example, and the processing order of each step may be changed as long as the same result is obtained. In addition, in this first embodiment, the processing of each step in the flow diagrams shown in Figures 12 to 14 is basically described as being executed by the processor 20, but some steps may be executed by a processor other than the processor 20 or a dedicated circuit. Similarly, the processing of each step in the flow diagrams shown in Figures 15 to 17 is basically described as being executed by the processor 40, but some steps may be executed by a processor other than the processor 40 or a dedicated circuit.
[0147] Below, the overall processing and game image generation processing will be explained with reference to Figures 12 to 14, and the analysis and identification processing and viewing processing will be explained with reference to Figures 15 to 17, but duplicate explanations of the same processing content will be omitted.
[0148] When the power supply of game device 12 is turned on, prior to the execution of the overall processing, processor 20 executes a startup program stored in a boot ROM (not shown), which initializes each unit such as RAM 22. When the player instructs game device 12 to execute the game program of the first embodiment, game device 12 starts the overall processing.
[0149] 12, when the processor 20 starts the overall processing, in step S1, it starts counting the number of game frames and the game time, and instructs the execution of capture in step S3. Although not shown, the processor 20 executes the capture process in parallel with the overall processing. The capture process is a process of capturing the game screen 100 displayed on the display device 30, i.e., a game image, and generating video data 304i of the captured game image. In addition, the generated video data 304i is output to the information processing device 14. Therefore, the information processing device 14 obtains the video data 304i for each video frame.
[0150] In the next step S5, initial settings are performed. Here, the processor 20 determines the positions and orientations of the player character object 102, each non-player object (including the enemy character object 104), each background object, and the virtual camera in the virtual space as initial positions and initial orientations. The processor 20 also sets initial values for various parameters.
[0151] In the next step S7, operation input data transmitted or input from input device 28 is obtained, and in step S9, a game control process is executed. In the game control process, processor 20 causes player character object 102 to perform an arbitrary action, obtain or use an item, etc., in accordance with the operation of the player. Furthermore, in the game control process, processor 20 causes enemy character object 104 to appear, causes enemy character object 104 to attack player character object 102, or performs an arbitrary action, or causes an item to appear, regardless of the operation of the player. Furthermore, when the game control process is executed, parameter data 304e is updated.
[0152] In the next step S11, a game image generation process (see Figs. 13 and 14) is executed, which will be described later. Briefly, processor 20 sets a virtual camera in the virtual space so as to include player character object 102 in its field of view, executes a drawing process based on the virtual camera, and generates game image data corresponding to the image captured by the virtual camera. That is, game image data is generated based on the result of the game control process in step S9. Although a detailed description will be omitted, the game image data also includes image data regarding internal information. Furthermore, in a predetermined case, the game image data also includes image data of an identification image.
[0153] Next, in step S13, a game image is displayed. Here, the processor 20 outputs to the display device 30 the game image data generated in step S11.
[0154] Furthermore, in step S15, a parameter log is generated, in step S17, the generated parameter log is output to the information processing device 14, in step S19, a text log is generated, in step S21, the generated text log is output to the information processing device 14, in step S23, a time-corresponding information log is generated, and in step S25, the generated time-corresponding information log is output to the information processing device 14. Thus, the information processing device 14 acquires the parameter log, text log, and time-corresponding information log for each game frame.
[0155] Then, in step S27, it is determined whether or not to end the virtual game. The determination in step S27 is made based on whether or not the player has instructed to end the virtual game. If "NO" in step S27, that is, if the virtual game is not to be ended, the process returns to step S7. On the other hand, if "YES" in step S27, that is, if the virtual game is to be ended, the entire process is ended.
[0156] 13, when the processor 20 starts the game image generation process, in step S31, it determines whether or not a capture is being performed. If the result is "YES" in step S31, that is, if a capture is being performed, it determines in step S33 whether or not the error flag 304k is on. If the result is "NO" in step S33, that is, if the error flag 304k is off, the process proceeds to step S43. On the other hand, if the result is "YES" in step S33, that is, if the error flag 304k is on, the process proceeds to step S51 shown in FIG. 14.
[0157] If "NO" in step S31, that is, if capture is not being performed, in step S35, it is determined whether or not capture is to be started. Here, processor 20 determines whether or not there is a notification from the capture function that capture processing has started. If "NO" in step S35, that is, if capture is not to be started, the process proceeds to step S43.
[0158] On the other hand, if step S35 is "YES", that is, if capture is to start, then in step S37, counting of the drawing time of the identification image (1.1 seconds in this first embodiment) is started, in step S39, the identification image drawing flag 304j is turned on, and in step S41, game image data including image data of the identification image is generated, and the process returns to the overall process. In this first embodiment, the identification image is a green marker and a character string indicating the current game frame number. The current game frame number is the game frame number indicated by the game frame number data 304c.
[0159] Also, in step S43, it is determined whether the identification image drawing flag 304j is on. If "NO" in step S43, that is, if the identification image drawing flag 304j is off, the process proceeds to step S49. On the other hand, if "YES" in step S43, that is, if the identification image drawing flag 304j is on, it is determined in step S45 whether drawing of the identification image is to be ended. Here, the processor 20 determines whether counting the drawing time of the identification image has ended.
[0160] If "NO" in step S45, that is, if drawing of the identification image is not to be ended, the process proceeds to step S41. On the other hand, if "YES" in step S45, that is, if drawing of the identification image is to be ended, the identification image drawing flag 304j is turned off in step S47, and game image data that does not include image data of the identification image is generated in step S49, and the process returns to the overall process.
[0161] 14, in step S51, it is determined whether the identification image drawing flag 304j is on. If "YES" in step S51, that is, if the identification image drawing flag 304j is on, the process proceeds to step S59. On the other hand, if "NO" in step S51, that is, if the identification image drawing flag 304j is off, the process starts counting the drawing time of the identification image in step S53, turns on the identification image drawing flag 304j in step S55, and generates game image data including image data of the identification image in step S57, and returns to the overall process.
[0162] Also, in step S59, it is determined whether drawing of the identification image is completed. If "NO" in step S59, the process proceeds to step S57. On the other hand, if "YES" in step S59, in step S61, the identification image drawing flag 304j is turned off, in step S63, the error flag 304k is turned off, and in step S65, game image data that does not include image data of the identification image is generated, and the process returns to the overall process.
[0163] As shown in FIG. 15, when processor 40 starts the analysis and identification process, in step S101, it decodes the video data, in step S103, it expands image data corresponding to the first video frame into VRAM, and in step S105, it searches for a green marker in a predetermined area of the image data expanded into VRAM (i.e., the range corresponding to display area 120a).
[0164] In the next step S107, it is determined whether or not a green marker is drawn in display area 120a. If "NO" in step S107, that is, if a green marker is not drawn in display area 120a, the process proceeds to step S117. On the other hand, if "YES" in step S107, that is, if a green marker is drawn in display area 120a, in step S109, character recognition processing (OCR processing in this first embodiment) is performed in another predetermined area of the image data expanded in VRAM (i.e., the range corresponding to display area 120b).
[0165] In the next step S111, the recording time of the video frame corresponding to the image data expanded in the VRAM and the corresponding number of game frames are identified, and in step S113, the identified recording time is subtracted from the game time corresponding to the identified number of game frames to calculate the time lag, and in step S115, the time lag calculated in step S113 is stored, and the analysis and identification process is terminated. That is, the processor 40 stores the time lag data 504g in the RAM 42. However, the identified number of game frames is the number of game frames recognized in the character recognition process. The same applies to step S129 described later.
[0166] In step S117, it is determined whether the first 30 seconds of video data have been scanned. If step S117 is "NO", that is, if the first 30 seconds of video data have not been scanned, in step S119, image data corresponding to a predetermined number of video frames ahead (5 in this first embodiment) is loaded in VRAM, and the process returns to step S105. On the other hand, if step S117 is "YES", that is, if the first 30 seconds of video data have been scanned, in step S121 shown in FIG. 16, image data corresponding to a video frame 30 seconds before the end of the video data is loaded in VRAM.
[0167] In the next step S123, a green marker is searched for in the range corresponding to the display area 120a of the video data expanded in the VRAM. In the following step S125, it is determined whether or not a green marker is drawn in the display area 120a. If "NO" in step S125, the process proceeds to step S135. On the other hand, if "YES" in step S125, in step S127, character recognition processing is performed in the display area 120b of the image data expanded in the VRAM. Next, in step S129, the recording time of the video frame corresponding to the image data expanded in the VRAM and the corresponding number of game frames are identified, in step S131, the time difference is calculated, and in step S133, the time difference calculated in step S131 is stored, and the analysis and identification processing is terminated.
[0168] In step S135, it is determined whether the last 30 seconds of the video data have been scanned. If "NO" in step S135, that is, if the last 30 seconds of the video data have not been scanned, in step S137, a predetermined number of video frames (5 in this first embodiment) ahead are loaded into the VRAM, and the process returns to step S123. On the other hand, if "YES" in step S135, that is, if the last 30 seconds of the video data have been scanned, the analysis and identification process ends.
[0169] 17, when processor 40 starts the viewing process, in step S201, it displays viewing screen 200 on display device 50. Here, initial viewing screen 200 is displayed. In the next step S203, it is determined whether or not there is an instruction to play a video. Here, processor 40 determines whether or not playback has been instructed using the operation panel displayed in display area 208.
[0170] If "YES" in step S203, that is, if playback of the moving image is instructed, proceed to step S209. On the other hand, if "NO" in step S203, that is, if playback of the moving image is not instructed, it is determined in step S205 whether or not a recording time, that is, a playback position, is instructed.
[0171] If "NO" in step S205, that is, if the recording time has not been specified, the process returns to step S203. On the other hand, if "YES" in step S205, that is, if the recording time has been specified, the recording time, that is, the playback position, is specified in step S207 according to the developer's instructions, and the process returns to step S203.
[0172] In step S209, playback of the video is started. If a playback position is not specified, processor 40 starts playback of video data 504f from the beginning, and if a playback position is specified, starts playback of video data 504f from the specified playback position. The video image obtained by playing video data 504f is displayed in display area 202 of viewing screen 200.
[0173] In the next step S211, time lag data 504g is used to identify a game time corresponding to the current time. The method of identifying (or calculating) a game time corresponding to the current time is as described above. In the following step S213, a parameter log of the number of game frames corresponding to the identified game time is output, and in step S215, a text log of the number of game frames corresponding to the identified game time is output. Therefore, a parameter log of the game time corresponding to the recording time of the video frame of video data 504f being played is displayed in display area 206 of viewing screen 200, and a text log of the game time is displayed in display area 204 of viewing screen 200. That is, a viewing image in which the log and the video are synchronized is displayed. Processor 40 identifies the number of game frames corresponding to the game time by referring to time-corresponding information log data 504e.
[0174] Then, in step S217, it is determined whether or not viewing has ended. Here, processor 40 determines whether or not viewing has been instructed to end. If "NO" in step S217, that is, viewing has not ended, other processing is executed in step S219, and the process returns to step S211. As other processing, processor 40 may change the playback position, pause, fast-forward playback, or rewind playback in response to an instruction from a developer, etc. On the other hand, if "YES" in step S217, that is, viewing has ended, viewing processing is terminated.
[0175] According to the first embodiment, in a predetermined case, a game image is displayed including an identification image indicating the number of game frames as the timing for displaying the game image, so that the video data capturing the game image can include image data of the identification image. Therefore, by detecting the identification image included in the video, the recording time of the video frame and the number of game frames corresponding to this recording time can be specified, and the log and the video can be viewed in sync based on the specified recording time and number of game frames. In other words, it is possible to specify when the video was captured and view it in sync with the log, which reduces the effort required to check the operation of a game program under development.
[0176] In the first embodiment, a green marker and a character string indicating the number of game frames are displayed as the identification image. This is to reduce the processor load due to OCR processing during scanning. If the processor load is not taken into consideration, the green marker may be omitted and only the character string indicating the number of game frames may be displayed. In this case, steps S105, S107, S125, and S127 shown in FIG. 15 are deleted, and a process for determining whether or not the number of game frames has been detected is added between steps S109 and S111 and between steps S129 and S131. In addition, if the number of game frames is detected in the process between steps S109 and S111, the process proceeds to step S111, and if the number of game frames is not detected, the process proceeds to step S117. If the number of game frames is detected in the process between steps S129 and S131, the process proceeds to step S135, and if the number of game frames is not detected, the process proceeds to step S135.
[0177] In the first embodiment, the identification image is displayed when the capture is started and when an error occurs during the execution of the game program, but this is not necessarily limited to this. The identification image may be displayed when the player character object moves to a predetermined location or when the player instructs the display (or drawing) of the identification image. In such a case, the information processing device generates video data from when the player moves to the predetermined location to when the player leaves the location. Also, when an instruction is given to display the identification image, video data is generated with the position where the display of the identification image ends as the end and the position going back a second predetermined time from the end as the start, similarly to when an error occurs.
[0178] Furthermore, in the first embodiment, the game image is captured by the game device, but game image data corresponding to the game image may be transmitted to the information processing device, and the game image data may be recorded on the information processing device side. In such a case, the information processing device may be provided with a function for recording game image data, or a capture device may be connected. In this case, the information processing device may obtain video data using a function provided in the information processing device, or may obtain video data from a capture device connected to the information processing device. Furthermore, when recording is started on the information processing device side, the information processing device notifies the game device that recording has started.
[0179] Also, video data of the game screen displayed on the display device captured by a video camera may be transmitted to the information processing device. That is, the information processing device acquires video data from the video camera. However, if the file format of the video data captured by the video camera is not MP4, the file format is converted to MP4. When capturing video with a video camera, the game device is notified of the start of recording by the player's operation. Also, when the game screen is captured by a video camera, the position of the origin of the game screen may deviate from the position of the origin of the video frame. If the position of the origin is deviated, the range for searching for the identification image is changed according to the deviation.
[0180] Furthermore, in the first embodiment, in a certain case, the game image is displayed including an identification image indicating the number of game frames as the timing for displaying the game image, but the game image may be displayed including an identification image indicating the game time instead of the number of game frames. In such a case, the game time corresponding to the recording time is identified in the analysis and identification process, and the time difference is calculated. In this way, the log and the video can be viewed in a synchronized manner.
[0181] In the first embodiment, the game time corresponding to the playback time of the video is specified in consideration of the case of a variable frame rate, and the parameter log and text log of the number of game frames corresponding to the game time are displayed, but when the frame rate is fixed, the parameter log and text log of the number of game frames corresponding to the playback time of the video can be displayed by other methods. As will be described later, in this case, the information processing device 14 does not use a time-corresponding information log, and therefore the game device 12 does not generate or output a time-corresponding information log.
[0182] Specifically, the number of video frames equivalent to the differential time is calculated using the time (hereinafter referred to as the "differential time") obtained by subtracting the recording time of the video frame for which the number of game frames is specified (hereinafter referred to as the "specific time") from the current time of the video data being played, the frame rate of the game image in game device 12, and the frame rate of the video.
[0183] When the frame rate of the game image (hereinafter referred to as the "first frame rate") in the game device 12 is the same as the frame rate of the video data (hereinafter referred to as the "second frame rate"), the number of game frames corresponding to the current time is the specified number of game frames plus the number of video frames corresponding to the difference time. Note that the first frame rate and the second frame rate are acquired from the information contained in the video and log after they are acquired, and are set in the information processing device 14.
[0184] Furthermore, when the first frame rate and the second frame rate are different, the number of video frames corresponding to the difference time is converted according to the difference in frame rate. Specifically, the number of video frames corresponding to the difference time is multiplied by the number obtained by dividing the first frame rate by the second frame rate. The number of game frames obtained by adding the value obtained by converting the number of video frames corresponding to the difference time to the specified number of game frames is the number of game frames corresponding to the current time. However, when the current time is before the specified time, the number of video frames corresponding to the difference time is a negative value.
[0185] In either case where the first frame rate and the second frame rate are the same or different, a parameter log and a text log for the number of game frames corresponding to the calculated current time are displayed on the viewing screen 200.
[0186] <Second Example> The game development support system 10 of the second embodiment is the same as the first embodiment except for the identification image displayed on the game device 12 and searched for by the information processing device 14. Therefore, we will only explain the differences and omit redundant explanations.
[0187] Fig. 18 is an enlarged view of the upper left portion of the game screen 100 of the second embodiment. As shown in Fig. 18, in the second embodiment, the display area 120 is set to be the same as the display area 120a of the first embodiment. In Fig. 18, a rectangular frame is displayed to easily show the display area 120, but in the actual game screen 100, the rectangular frame does not have to be displayed.
[0188] Moreover, in the second embodiment, during the drawing time, i.e., the first predetermined time (specifically, 1.1 seconds), markers of different colors are displayed in sequence as the identification image. That is, a pattern of predetermined colors is displayed. Specifically, during the first second of the drawing time, a red marker is displayed in the display area 120 as the identification image. During the next 0.05 seconds, a yellow marker is displayed in the display area 120 as the identification image. During the further next 0.05 seconds, a green marker is displayed in the display area 120 as the identification image.
[0189] In the second embodiment, a red marker is displayed in the display area 120 when the drawing time is 1 second, but a yellow marker may be displayed instead. In the second embodiment, a yellow marker is displayed in the display area 120 when the drawing time is 1.05 seconds, but a green marker may be displayed instead.
[0190] However, the display area 120 in the second embodiment may be provided at a position different from the display area 120a in the first embodiment. In such a case, the range in which the color, i.e., the identification image is searched for in the information processing device 14 is set in the display area 120 set at a different position.
[0191] Furthermore, in the second embodiment, when drawing of a marker of each color is started, the color of the marker and the game frame number when drawing of the marker of this color is started (hereinafter referred to as "frame number correspondence information") are notified to the information processing device 14. For example, if the game frame number when drawing of a red marker is started is 7343, information indicating the color red and 7343 is notified to the information processing device 14 as the frame number correspondence information.
[0192] Since the red marker is displayed for one second, if the game frame is 1 / 60 seconds, the game frame number when drawing of the yellow marker starts is 7403. Therefore, when drawing of the yellow marker starts, information indicating yellow and 7403 is notified to the information processing device 14 as frame corresponding information.
[0193] Since the yellow marker is displayed for 0.05 seconds, if the game frame is 1 / 60 seconds, the game frame number when drawing of the green marker starts is 7406. Therefore, when drawing of the green marker starts, information indicating the color green and 7406 is notified to the information processing device 14 as frame corresponding information.
[0194] In this way, in the second embodiment, the identification image displayed is different from that in the first embodiment, and therefore a part of the analysis and identification process executed by the information processing device 14 is different from the analysis and identification process in the first embodiment. Here, the analysis and identification process in the second embodiment will be described.
[0195] In the analysis and identification process, first, the video data is decoded according to the MP4 file format. Image data corresponding to the first video frame of the decoded video data is loaded into the VRAM, and it is determined whether or not a red, yellow, or green marker is displayed in the range corresponding to the display area 120 among the image data loaded into the VRAM. In other words, it is determined whether or not the color values (i.e., RGB values) of pixels in the range corresponding to the display area 120 indicate red, yellow, or green.
[0196] When a red, yellow or green marker is detected in the range corresponding to display area 120, the number of game frames of the detected marker color is identified corresponding to the recording time of the video frame corresponding to the image data in which the marker of this color was detected, by referring to the frame number correspondence information notified by game device 12.
[0197] As described above, the red marker is displayed for 1 second, and the yellow and green markers are displayed for 0.05 seconds each. Therefore, in a video frame in which a red marker is detected, the number of game frames may be off by up to 1 second (60 game frames in the second embodiment). In contrast, in a video frame in which a yellow and green marker are detected, the number of game frames may be off by up to 0.05 seconds (3 game frames).
[0198] Therefore, in the second embodiment, in order to minimize the discrepancy between the recording time of a video frame and the number of game frames, when a green marker is detected in the range corresponding to display area 120, even if yellow and red markers are also detected, the recording time of the video frame corresponding to the image data in which the green marker was detected and the number of game frames corresponding to this recording time are specified. This number of game frames is the number of game frames corresponding to green in the frame number correspondence information notified by game device 12.
[0199] However, when a yellow and green marker are detected, it is also possible to specify the recording time of the video frame corresponding to the image data in which the yellow marker is detected and the number of game frames corresponding to this recording time. This number of game frames is the number of game frames corresponding to yellow in the frame number correspondence information notified by game device 12.
[0200] When a green marker is not detected in the range corresponding to display area 120, if a yellow marker is detected, the recording time of the video frame corresponding to the image data in which the yellow marker is detected and the number of game frames corresponding to this recording time are specified even if a red marker is also detected. This number of game frames is the number of game frames corresponding to yellow in the frame number correspondence information notified by game device 12.
[0201] When only a red marker is detected in the range corresponding to display area 120, the recording time of the video frame in which the red marker was first detected and the game frame number corresponding to this recording time are specified. This game frame number is the game frame number corresponding to the color red in the frame number correspondence information notified by game device 12.
[0202] The game frame number is determined according to the recording time of the video frame in which the red marker was first detected, because the red marker is displayed for one second in the game image and may be detected multiple times.
[0203] In the second embodiment as well, the identification image is drawn in the display area 120 at a predetermined position of the game image, and the image analysis process only requires detecting the color of the marker drawn in the range corresponding to this display area 120, making it possible to specify or detect the identification image with a simple configuration. Therefore, it is possible to easily specify the recording time of the video frame corresponding to the image data including the identification image and the corresponding number of game frames.
[0204] On the other hand, if no red, yellow or green marker is detected in the area corresponding to display area 120, it is determined whether a red, yellow or green marker is displayed for a predetermined number of video frames (e.g., 5) ahead.
[0205] The first 30 seconds of video data are scanned, and if no red, yellow, or green marker is found, the last 30 seconds of video data are scanned. The last 30 seconds of video data are scanned in the same way as the first 30 seconds of video data.
[0206] Therefore, in the second embodiment, the identification image drawing program 302i stored in the program memory area 302 of the RAM 22 of the game device 12 displays a pattern of a predetermined color on the game device 12 in response to the start of recording and the occurrence of an error.
[0207] In the second embodiment, the program storage area 302 of the RAM 22 of the game device 12 further includes a program for notifying the information processing device 14 of the color to be displayed and the game frame number at which drawing of this color is to be started, i.e., frame number correspondence information, at the timing at which drawing (or display) of each color is to be started. When this program is executed, the communication program 302b is also executed.
[0208] In the second embodiment, the image analysis program 502h stored in the program storage area 502 of the RAM 42 of the information processing device 14 detects a red, yellow, or green marker displayed in a range corresponding to the display area 120 in image data corresponding to a video frame. When a green marker is detected, the identification program 502i identifies the recording time of the video frame and the game frame number corresponding to green from the frame number correspondence information notified from the game device 12 corresponding to the recording time. When a yellow marker is detected but not a green marker is detected, the identification program 502i identifies the recording time of the video frame and the game frame number corresponding to yellow from the frame number correspondence information notified from the game device 12 corresponding to the recording time. When only a red marker is detected, the identification program 502i identifies the recording time of the video frame in which the red marker was first detected and the game frame number corresponding to red from the frame number correspondence information notified from the game device 12 corresponding to the recording time.
[0209] If the difference between the video frame recording time and the game time corresponding to the game frame number is 0.05 seconds or less, the log and video can be considered synchronized. Even if only the red marker is detected, the log and video can be considered synchronized because it is rare that the recording time and the game time are actually off by 1 second.
[0210] Figures 19 and 20 are flow diagrams showing a part of the game image generation processing of the second embodiment. The game image generation processing shown in Figures 19 and 20 is a partly modified version of the game image generation processing shown in Figures 13 and 14. The game screen generation processing of the second embodiment will be described with reference to Figures 19 and 20, but illustrations and descriptions of the same processing as the game image generation processing of the first embodiment will be omitted.
[0211] As shown in FIG. 19, step S301 is provided between step S39 and step S41, steps S303 and S305 are provided after step S41, and steps S307, S309, S311 and S313 are provided between "NO" in step S45 and step S41.
[0212] Specifically, after the process of step S39 is executed, in step S301, the color of the marker to be drawn (or displayed) is set to red, and the process proceeds to step S41. In step S41, a game image is generated that includes a marker of the set color in the display area 120. After the process of step S41 is executed, in step S303, it is determined whether or not it is time to start drawing a marker of the current color.
[0213] If "YES" in step S303, that is, if it is the timing to start drawing a marker of the current color, information on the color and the number of game frames, i.e., frame number correspondence information, is notified to the information processing device 14 in step S305, and the process returns to the overall process. However, the number of game frames notified in step S305 is the current number of game frames.
[0214] On the other hand, if "NO" in step S303, that is, if it is not the timing to start drawing the marker of the current color, the process returns to the overall process.
[0215] If "NO" in step S45, it is determined in step S307 whether or not 1.05 seconds have passed since the drawing of the identification image started. If "YES" in step S307, that is, if 1.05 seconds have passed since the drawing of the identification image started, the color of the drawn marker is set to green in step S309, and the process proceeds to step S41.
[0216] On the other hand, if "NO" in step S307, that is, if 1.05 seconds have not elapsed since the drawing of the identification image started, in step S311, it is determined whether or not 1 second has elapsed since the drawing of the identification image started.
[0217] If "NO" in step S311, that is, if one second has not passed since the drawing of the identification image started, proceed to step S41. On the other hand, if "YES" in step S311, that is, if one second has passed since the drawing of the identification image started, the color of the drawn marker is set to yellow in step S313, and proceed to step S41.
[0218] 20, step S351 is provided between step S55 and step S57, step S353 and step S355 are provided after step S57, and steps S357, S359, S361, and S363 are provided between "NO" in step S59 and step S57. These processes will be explained below, but because they are the same as those explained with reference to FIG. 19, they will be explained briefly.
[0219] 20, after the process of step S55 is executed, the color of the marker to be drawn is set to red in step S351, and the process proceeds to step S41. After the process of step S41 is executed, it is determined in step S353 whether or not it is time to start drawing a marker of the current color.
[0220] If "YES" in step S353, in a step S355, information on the color and the number of game frames is notified to the information processing device 14, and the process returns to the overall process. On the other hand, if "NO" in step S353, the process returns to the overall process.
[0221] Also, if "NO" in step S59, it is determined in step S357 whether or not 1.05 seconds have passed since the drawing of the identification image began. If "YES" in step S357, the color of the marker to be drawn is set to green in step S359, and the process proceeds to step S57. On the other hand, if "NO" in step S357, it is determined in step S361 whether or not 1 second has passed since the drawing of the identification image began.
[0222] If "NO" in step S361, the process proceeds to step S57. On the other hand, if "YES" in step S361, the color of the marker to be drawn is set to yellow in step S363, and the process proceeds to step S57.
[0223] 21 to 23 are flow diagrams showing a non-limiting example of the analysis and identification process of the processor 40 of the information processing device 14 according to the second embodiment. The analysis and identification process of the second embodiment will be described below, but the same processes as those of the analysis and identification process of the first embodiment will be briefly described.
[0224] As shown in FIG. 21, when processor 40 starts the analysis and identification process, in step S401, it decodes the video data, in step S403, it expands image data corresponding to the first video frame into VRAM, and in step S405, it searches for a red, yellow or green marker in a specified area of the image data expanded into VRAM (i.e., the range corresponding to display area 120).
[0225] In the following step S407, it is determined whether a red, yellow, or green marker is drawn in display area 120. If "NO" in step S407, that is, if a red, yellow, or green marker is not drawn in display area 120, the process proceeds to step S427 shown in Fig. 22. On the other hand, if "YES" in step S407, that is, if a red, yellow, or green marker is drawn in display area 120, it is determined in step S409 whether the marker color is red.
[0226] If the answer is "YES" in step S409, that is, if the color of the marker is red, the recording time is identified in step S411, and the number of game frames corresponding to the color red is identified by referring to the frame number correspondence information, and the process proceeds to step S417. The recording time is the recording time of the video frame corresponding to the image data expanded in the VRAM. This is the same for steps S415, S421, S439, S443, and S447, which will be described later.
[0227] On the other hand, if "NO" in step S409, that is, if the marker color is not red, it is determined in step S413 whether the marker color is yellow. If "YES" in step S413, that is, if the marker color is yellow, the recording time is identified in step S415, and the number of game frames corresponding to yellow is identified by referring to the frame number correspondence information, and the process proceeds to step S417.
[0228] In step S417, the time lag is calculated, and in step S419, the time lag is stored, and the process proceeds to step S427. That is, in step S419, processor 40 stores time lag data 504g. Basically, in step S419, time lag data 504g is updated, but if the process of step S411 has already been executed (or once), the processes of steps S411, S417, and S419 are skipped. This is to identify the number of game frames corresponding to the recording time of the video frame corresponding to the image data in which the red marker was first detected. The same applies to steps S439, S451, and S453 described below.
[0229] On the other hand, if the result in step S413 is "NO", that is, if the color of the marker is green, then in step S421, the recording time is identified, and the number of game frames corresponding to the color green is identified by referring to the frame number correspondence information, and in step S423, the time lag is calculated, and in step S425, the time lag is stored, and the analysis and identification process is terminated. In step S425, the time lag data 504g is updated. The same applies to step S447 described later.
[0230] As shown in Fig. 22, in step S427, it is determined whether the first 30 seconds of video data have been scanned. If "NO" in step S427, in step S429, a predetermined number of video frames ahead (five in this second embodiment) are loaded into VRAM, and the process returns to step S405 shown in Fig. 21. On the other hand, if "YES" in step S427, in step S431 shown in Fig. 23, a video frame 30 seconds before the end of the video data is loaded into VRAM.
[0231] In the next step S433, a red, yellow or green marker is searched for in display area 120 of the video frame expanded in the VRAM. In the following step S435, it is determined whether or not a red, yellow or green marker is present in the range equivalent to display area 120. If "NO" in step S435, proceed to step S455. On the other hand, if "YES" in step S435, it is determined in step S437 whether or not the marker color is red.
[0232] If "YES" in step S437, in step S439, the recording time is identified, and the number of game frames corresponding to the color red is identified by referring to the frame number correspondence information, and the process proceeds to step S451. On the other hand, if "NO" in step S437, in step S441, it is determined whether the color of the marker is yellow.
[0233] If "NO" in step S441, in step S443, the recording time is identified, and the number of game frames corresponding to green is identified by referring to the frame number correspondence information. Then, in step S445, the time difference is calculated, and in step S447, the time difference is stored, and the analysis and identification process ends. On the other hand, if "YES" in step S441, in step S449, the recording time is identified, and the number of game frames corresponding to yellow is identified by referring to the frame number correspondence information, and the process proceeds to step S451. In step S451, the time difference is calculated, and in step S453, the time difference is stored, and the process proceeds to step S455.
[0234] In step S455, it is determined whether 30 seconds have been scanned from the end of the video data. If "NO" in step S455, a predetermined number of video frames are loaded into the VRAM in step S457, and the process returns to step S433. On the other hand, if "YES" in step S455, the analysis and identification process ends.
[0235] In the second embodiment, as in the first embodiment, it is possible to view the log in sync, thereby reducing the effort required when checking the operation of a game program under development.
[0236] In the second embodiment, the time for which the yellow and green markers are drawn is shorter than the time for which the red marker is drawn, so if a red marker is detected when scanning video data, the interval between scanned video frames may be shortened. This increases the probability of detecting a yellow or green marker, allowing for more accurate synchronization between the log and the video.
[0237] In the second embodiment, when drawing of a marker of each color is started, the information processing device 14 is notified of the marker color and the number of game frames when drawing of the marker of this color is started, but the information processing device 14 may be notified of the marker color and the game time when drawing of the marker is started. In such a case, the game time corresponding to the recording time is identified in the analysis and identification process, and the time difference is calculated. Even in this way, the log and the video can be viewed in a synchronized manner.
[0238] Furthermore, although a detailed description is omitted, the modified examples in the first embodiment can also be appropriately adopted in the second embodiment.
[0239] <Third Example> The game development support system 10 of the third embodiment is the same as the game development support system 10 of the first and second embodiments, except that when a game program for a communication game is executed on a plurality of game devices 12, the logs and videos for each game device 12 are displayed in synchronization with each other. Here, a description of the same contents as in the first and second embodiments will be omitted, and only the differences will be described.
[0240] 24 includes two game devices 12 and an information processing device 14. In the third embodiment, the two game devices 12 communicate with each other, and a game program for a communication game is executed in each game device 12. Furthermore, each of the two game devices 12 communicates with the information processing device 14, and transmits logs and videos to the information processing device 14.
[0241] The method of synchronously displaying logs and videos for each game device 12 in information processing device 14 is as described in the first and second embodiments. Although not shown, in the third embodiment, viewing screen 200 shown in Fig. 5 is displayed in a list for each game device 12. However, display area 208, i.e., an operation panel, does not need to be provided on each viewing screen 200.
[0242] In the third embodiment, logs and videos between the game devices 12 are further synchronized. As an example, the times kept by the game devices 12 are made consistent, and when a log is transmitted from a game device 12, information on the time kept by the game device 12 (i.e., hour, minute, second) (for convenience of explanation, referred to as "information on the first time") is added and notified to the information processing device 14, thereby synchronizing the logs and videos between the game devices 12 using the information on the first time. However, the information on the first time may be added to the video.
[0243] Alternatively, a log is transmitted from each game device 12 to the information processing device 14, and when the information processing device 14 receives the log, time information measured by the information processing device 14 (for convenience of explanation, referred to as "second time information") is added to the log of each game device 12, thereby synchronizing the logs and video between each game device 12 using the second time information. However, the second time information may be added to the video.
[0244] The same applies to the case where there are three or more game devices 12 playing a communication game.
[0245] According to the third embodiment, the logs and videos can be displayed in a synchronized manner on each of the multiple game devices that execute the game program of the communication game, and the logs and videos can also be displayed in a synchronized manner between the multiple game devices. Therefore, as with the first and second embodiments, it is possible to reduce the effort required to check the operation of a game program under development.
[0246] It should be noted that the configuration of the game device, the various screens, and the specific numerical values shown in the above-mentioned embodiments are merely examples and should not be considered limiting, but may be modified as appropriate depending on the actual product.
[0247] Furthermore, the order of the steps shown in the flow chart may be changed as appropriate, provided that the same effect or result can be obtained. [Explanation of symbols]
[0248] 10. Game development support system 12. Gaming devices 14...Information processing device 20,40 … processor 22,42...RAM 24...Flash memory 26,46 …Communication module 28,48 ... Input device 30,50…display device 34 ... Speaker 44...HDD
Claims
1. The game device includes at least an information processing device and a game device that executes a game program under development. The game program under development is installed in the computer of the game device. Log output is performed during game processing, generating a game image so as to include an identification image that allows identification of the timing at which the game image is being output during at least a predetermined period during execution of the game process; The information processing device includes: acquiring the log from the game device; Obtaining video data capturing the game images; performing image analysis on the video data to identify a frame in the video that includes the identification image, and identifying a timing at which a game image that includes the identification image was output; A game development support system that generates a viewing image that includes at least the log and a video, and in which the log and the video are displayed in synchronization, based on the identified timing and timing information contained in the log.
2. 2. The game development support system according to claim 1, wherein the identification image is an image of information that is placed at a predetermined position within the game image and that indicates the timing at which the game image is being output.
3. 3. The game development support system according to claim 2, wherein the identification image is an image of text information indicating the number of frames from the start of the game or a predetermined timing after the start of the game.
4. the identification image is an image of information to be placed at a predetermined position on the game image at a predetermined timing after the start of the game, 2. The game development support system according to claim 1, further causing the computer of said game device to output information indicating the first timing at which an image of said information is to be placed at said predetermined position on said game image.
5. 5. The game development support system according to claim 4, wherein the identification image is an image of a predetermined color pattern.
6. the game device captures the game image and generates the video data; 6. The game development support system according to claim 1, wherein said information processing device receives said video data from said game device.
7. 6. The game development support system according to claim 1, wherein the information processing device captures the game images and generates the video data.
8. 4. The game development support system according to claim 1, wherein the information processing device acquires video data obtained by photographing the game image displayed on a display device with a photographing device.
9. The game program under development further includes, in a computer of the game device: Detects the occurrence of a specific error during game execution, generating the game image including the identification image when the error is detected; 6. A game development support system according to claim 1, further comprising: a processor for transmitting to said information processing device video data for a predetermined period of time including at least the timing at which said game image including said identification image was generated in response to the occurrence of said error.
10. The game device includes at least a game device that executes a game program under development, and an information processing device that executes an information processing program, The game program under development is installed in the computer of the game device. Log output is performed during game processing, generating a game image so as to include an identification image that allows identification of the timing at which the game image is being output during at least a predetermined period during execution of the game process; The information processing program is installed in a computer of the information processing device. acquiring the log from the game device; acquiring video data capturing said game images; performing image analysis on the video data to identify a frame in the video that includes the identification image, and identifying a timing at which a game image that includes the identification image was output; A game development support method that generates a viewing image that includes at least the log and a video, and displays the log and the video in synchronization, based on the identified timing and timing information contained in the log.
11. 11. The game development support method according to claim 10, wherein the identification image is information that is placed at a predetermined position within the game image and indicates a timing at which the game image is being output.
12. 12. The game development support method according to claim 11, wherein the identification image is character information indicating the number of frames from the start of the game or a predetermined timing after the start of the game.
13. 11. A game development support method according to claim 10, wherein the identification image is information that is placed at a predetermined position on the game image at a predetermined timing after the start of the game, and the log includes information indicating the timing at which the information is included in the game image.
14. 14. The game development support method according to claim 13, wherein the identification image is a pattern of a predetermined color.
15. causing the game device to capture the game images and generate the video data; 6. The game development support method according to claim 1, further comprising the step of causing said information processing device to receive said video data from said game device.
16. The game development support method according to claim 10 , further comprising causing the information processing device to capture the game images and generate the video data.
17. 13. The game development support method according to claim 10, further comprising causing the information processing device to acquire video data obtained by photographing the game image displayed on a display device with a photographing device.
18. The game program under development further includes, in a computer of the game device: Detects the occurrence of a specific error during game execution, generating the game image including the identification image when the error is detected; The game development support method according to any one of claims 10 to 14, further comprising causing the information processing device to transmit video data for a predetermined period of time that includes at least the timing at which the game image including the identification image was generated in response to the occurrence of the error.
19. Acquire a log from a game device that is running a game program under development, acquiring video data capturing a game image including an identification image that allows identification of the timing at which the game image is being output; performing image analysis on the video data to identify a frame in the video that includes the identification image, and identifying a timing at which a game image that includes the identification image was output; The information processing device generates a viewing image that includes at least the log and a video, and in which the log and the video are displayed in synchronization with each other, based on the identified timing and timing information included in the log.
20. An information processing program executed by an information processing device, A processor of the information processing device Acquiring logs from a game device that is running a game program under development, acquiring video data capturing a game image including an identification image that allows identification of the timing at which the game image is being output; performing image analysis on the video data, identifying a frame in the video that includes the identification image, and identifying a timing at which a game image that includes the identification image was output; An information processing program that generates a viewing image that includes at least the log and a video, and in which the log and the video are displayed in synchronization, based on the identified timing and timing information included in the log.
Citation Information
Patent Citations
Game system, score processing program, management device for game system and score processing method
JP2017023348A
Game development system
JP2022084336A
Testing Cloud Gaming as a Service
JP2022510600A
Programmable logic controller, video image management device, video image management system, video image management method and program
JP7275327B1
Game Development System
JP7072625B1