WO2010090109A1 - 動画像生成装置、ゲーム装置、動画像生成方法、情報記録媒体、ならびに、プログラム - Google Patents

動画像生成装置、ゲーム装置、動画像生成方法、情報記録媒体、ならびに、プログラム Download PDF

Info

Publication number
WO2010090109A1
WO2010090109A1 PCT/JP2010/051035 JP2010051035W WO2010090109A1 WO 2010090109 A1 WO2010090109 A1 WO 2010090109A1 JP 2010051035 W JP2010051035 W JP 2010051035W WO 2010090109 A1 WO2010090109 A1 WO 2010090109A1
Authority
WO
WIPO (PCT)
Prior art keywords
time
generation
separation
character
break
Prior art date
Application number
PCT/JP2010/051035
Other languages
English (en)
French (fr)
Inventor
祐一 浅見
Original Assignee
株式会社コナミデジタルエンタテインメント
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社コナミデジタルエンタテインメント filed Critical 株式会社コナミデジタルエンタテインメント
Publication of WO2010090109A1 publication Critical patent/WO2010090109A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/403D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/2053D [Three Dimensional] animation driven by audio data
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • A63F2300/6607Methods for processing data by generating or executing the game program for rendering three dimensional images for animating game characters, e.g. skeleton kinematics
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/80Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
    • A63F2300/8047Music games

Definitions

  • the present invention relates to a moving image generation device, a game device, a moving image generation method, an information recording medium, and a program suitable for appropriately displaying a character.
  • a music game in which a player operates buttons and foot switches in synchronization with the rhythm of music and the display on the screen is known.
  • predetermined objects appear sequentially from the bottom of the screen and move to the top of the screen in synchronization with the music to be played.
  • the player presses the button at the timing when these objects reach the determination line serving as a determination reference. If the timing at which the button is pressed matches the arrival timing, a score is added.
  • a graphic indicating the success of the player's operation input is displayed.
  • Some of these music games display a character that moves in accordance with the rhythm of the music like a back dancer while the player is playing the game. In this way, when a character having a motion that matches the rhythm of the music is displayed, the player can feel as if he is dancing with the character.
  • a music game is disclosed in Patent Document 1, for example.
  • the motion of the displayed character is also determined by determining the music.
  • the character regardless of whether the player's operation input is good or bad, the character accurately moves in accordance with the rhythm of the music.
  • the plurality of characters are taking exactly the same motion in accordance with the rhythm of the music.
  • the present invention has been made in view of the above problems, and provides a moving image generation device, a game device, a moving image generation method, an information recording medium, and a program suitable for appropriately displaying a character. Objective.
  • a moving image generating apparatus includes a shape calculating unit, a determining unit, and a generating unit, and is configured as follows.
  • the shape calculation unit calculates the shape of the character associated with the time. That is, any time t included in a predetermined period from time B to time E is given to the shape calculation unit. Then, the shape calculation unit calculates the shape of the character associated with the time t.
  • the character performs a predetermined choreography within a predetermined period in the virtual space.
  • the shape calculation unit calculates the shape of the character at each time.
  • the shape calculation unit may calculate the color of the character in addition to the shape of the character.
  • description will be made assuming that the shape of the character can include the color of the character.
  • the generation unit generates an image obtained when a character in the virtual space is projected on a predetermined projection plane with a predetermined viewpoint as a reference.
  • the predetermined period can be set to a period based on the same viewpoint (hereinafter referred to as “scene” if necessary).
  • a determination part determines the production
  • segments from the beginning to the end of a predetermined period at equal intervals. That is, the determination unit uses N as a natural number, and generation times G [associated with each of delimiter times D [0] B, D [1],. 0], G [1],..., G [N] are determined.
  • the interval may be a vertical synchronization interrupt cycle (typically 1/60 second) which is a display update rate of the display unit.
  • the shape calculation unit calculates the shape of the character based on the shape of the model character at the generation time G [i]. Next, the generation unit generates an image of the character displayed at the separation time D [i] based on the calculated character shape.
  • a character moving image is obtained.
  • the moving image of the model character is obtained by giving a break time to the shape calculation unit and generating an image to be displayed at the break time.
  • the start time of the start time and the generation time associated with the start time are set to be equal to the start time of the predetermined period.
  • the end time of the end of the end times and the generation time associated with the end time of the end are set to be equal to the end time of the predetermined period.
  • the order of passage of time is set.
  • the determination unit determines the generation time so as to satisfy the following two conditions.
  • B Time at the beginning of a predetermined period
  • E Time at the end of a predetermined period
  • N Constant (natural number) j: integer from 0 to N
  • G [j] precedes G [k] includes the case where G [j] and G [k] are the same.
  • the generation time is associated with the separation time. Due to the above conditions, the order of the generation times is not changed, and the order is the same as the associated separation time. In other words, the generation time associated with a certain break time is determined to be earlier than the generation time associated with a later break time.
  • the action taken by the character at the first break time is the first action of the model character in a predetermined period.
  • the action taken by the character at the end delimiter time is the last action of the exemplary character in the predetermined period.
  • the character movement order is the same as the model character movement order. That is, the order of character movement is not changed. Therefore, except for the beginning and the end of the scene, the character performs an action according to the choreography earlier or later than the model character. In other words, there is fluctuation in the motion speed of the character in the generated moving image except for the beginning and the end of the scene.
  • the time required for the action according to the choreography of the character is equal to the time required for the action according to the choreography of the model character. For this reason, the action of the character does not change unnaturally at the joint of the scene.
  • the time required for the action according to the character choreography is not changed.
  • the speed of movement during movement according to the choreography of the character can be changed. Therefore, in the moving image generated by the moving image generating apparatus of the present invention, the character takes a motion with fluctuation.
  • the determination unit may be configured to determine a difference between the break time and the generation time associated with the break time based on a random number. With such a configuration, it is possible to randomly change the speed of the operation during the operation according to the choreography.
  • the generating unit may generate a plurality of character images.
  • the determination unit determines the generation time for each of the plurality of characters.
  • the generation time is determined randomly for each character.
  • each character performs an action according to the choreography at a different speed. Accordingly, in the generated moving image, a plurality of characters take a motion with different fluctuations.
  • the moving image generating apparatus of the present invention can generate a moving image with fluctuations in the motion of each of a plurality of characters.
  • the determination unit selects a predetermined number of delimiter times (hereinafter referred to as “representative time”) from the delimiter times so as to include the first delimiter time and the last delimiter time.
  • the generation time may be determined as shown in the following (A) to (D). First, (A) the generation time associated with the leading break time in the representative time is determined to be equal to the leading break time. Then, (B) the generation time associated with the end break time in the representative time is determined to be equal to the end break time.
  • (C) the difference between the delimiter time other than the first delimiter time and the last delimiter time in the representative time and the generation time associated with the delimiter time is determined based on the random number. Then, (D) when the representative times are arranged in the order of passage of time, the generation time associated with the separation time between the two representative times adjacent to each other is determined so that the intervals between the generation times are equal.
  • the generation time associated with the representative time is determined based on the random number.
  • the other generation times are determined by dividing the generation times associated with two adjacent representative times into equal intervals. Accordingly, the processing speed is improved as compared with a case where all generation times are determined based on random numbers. Note that, due to the equal division of the generation time, the motion speed of the displayed character does not change extremely in a short time. That is, it is possible to reduce the fluctuation of the character motion.
  • the moving image generation apparatus of the present invention may further include a storage unit that stores a reference value of a difference between a break time and a generation time associated with the break time for each break time.
  • the determination unit determines the difference between the break time and the generation time associated with the break time. The determining unit determines this difference based on the reference value for each break time stored in the storage unit.
  • the moving image generating apparatus of the present invention since the generation time is determined based on a predetermined reference value, an improvement in processing speed can be expected as compared with the case where the generation time is determined based on a random number.
  • a game apparatus includes a reception unit, a determination unit, and a display unit, and is configured as follows.
  • the reception unit receives an instruction input from a player.
  • the player operates various buttons (such as a foot switch that are typically operated with hands and feet) and levers provided on the controller of the game apparatus.
  • the player may operate a controller member imitating various musical instruments.
  • the received instruction input is obtained by detecting such an operation or an action by the player with various sensors.
  • the determination unit determines the player's performance based on the instruction input received by the reception unit. For example, it is assumed that the game device executes a rhythm game. In the rhythm game, a score is added when a predetermined button is pressed at a predetermined timing by the player. The player's performance is determined based on the score added within a predetermined time.
  • the display unit displays the moving image generated by the above-described moving image generating device. Therefore, the display unit displays a character that performs an action according to a predetermined choreography.
  • a plurality of characters are often displayed on the display unit as a back dancer.
  • the plurality of characters perform an action according to a predetermined choreography in accordance with the rhythm of the music.
  • a plurality of characters perform exactly the same choreography at the same motion speed.
  • Such a display may give the player the impression of a game lacking reality. Therefore, in the game device to which the present invention is applied, the movement speeds of the plurality of characters to be displayed are made to fluctuate. As a result, the player can enjoy the game as if dancing with a real back dancer.
  • the determination unit determines a difference between the separation time and the generation time associated with the separation time based on the random number, and determines a range that the random number can take according to the determined player's performance. Can be changed.
  • the range that the random number can take is set wide, the expected value of the difference between the break time and the generation time associated with the break time becomes large.
  • the displayed character operates according to the choreography. Therefore, the unevenness of the operation speed during the operation becomes large. For this reason, the motion fluctuation of the displayed character increases.
  • the range that the random number can take is set narrow, the expected value of the difference between the break time and the generation time associated with the break time becomes small. Therefore, the unevenness of the operation speed during the operation is reduced. For this reason, the motion fluctuation of the displayed character is reduced.
  • the range of change in the range of random numbers that can be taken according to the player's performance can be adjusted as appropriate. For example, in the case of a rhythm game, the better the player's score, the narrower the range that can be taken by the random number.
  • the movement unevenness during the movement according to the choreography of the character is set according to the range of change of the random number. Therefore, the better the player's performance, the smaller the variation in the character's movement speed. Therefore, the better the player's performance, the more the character's movement displayed follows the choreography.
  • the magnitude of the motion fluctuation of the displayed character can be changed according to the player's performance. Thereby, it can produce as if the player is dancing with a real back dancer.
  • a moving image generation method is a moving image generation method executed by a moving image generation apparatus including a shape calculation unit, a determination unit, and a generation unit, and includes a shape calculation A process, a determination process, and a generation process are provided and configured as follows.
  • the shape calculation unit calculates the shape of the character associated with the time.
  • the determination unit determines a generation time associated with each of the delimiter times that divide the predetermined period from the beginning to the end at equal intervals.
  • the generation unit gives the generation time associated with each of the break times to the shape calculation unit to calculate, and generates an image of the character to be displayed at the break time from the calculated character shape To do.
  • the start time of the break times and the generation time associated with the start time are set to be equal to the start time of the predetermined period.
  • the end time of the end of the end times and the generation time associated with the end time of the end are set to be equal to the end time of the predetermined period.
  • An information recording medium includes a computer, When any time included in the predetermined period is given, a shape calculation unit that calculates the shape of the character associated with the time, A determination unit that determines a generation time associated with each of the separation times that divide the predetermined period from the beginning to the end at equal intervals; A generation time associated with each of the break times is given to the shape calculation unit to be calculated, and functions as a generation unit that generates a character image to be displayed at the break time from the calculated character shape, Of the separation times, the first separation time and the generation time associated with the first separation time are both equal to the first time of the predetermined period, Of the break times, the break time at the end and the generation time associated with the break time at the end are both equal to the time at the end of the predetermined period, If the break times are arranged in the order of passage of time and the generation times associated with the break times are arranged in that order, the functions are made to be in the order of passage of time.
  • a computer it is possible to cause a computer to function as a moving image generation device or a game device that operates as described above.
  • a program provides a computer, When any time included in the predetermined period is given, a shape calculation unit that calculates the shape of the character associated with the time, A determination unit that determines a generation time associated with each of the separation times that divide the predetermined period from the beginning to the end at equal intervals; A generation time associated with each of the break times is given to the shape calculation unit to be calculated, and functions as a generation unit that generates a character image to be displayed at the break time from the calculated character shape, Of the separation times, the first separation time and the generation time associated with the first separation time are both equal to the first time of the predetermined period, Of the break times, the break time at the end and the generation time associated with the break time at the end are both equal to the time at the end of the predetermined period, If the break times are arranged in the order of passage of time, and the generation times associated with the break times are arranged in that order, the order of passage of time is obtained.
  • a computer it is possible to cause a computer to function as a moving image generation device or a game device that operates as described above.
  • the program of the present invention can be recorded on a computer-readable information recording medium such as a compact disk, flexible disk, hard disk, magneto-optical disk, digital video disk, magnetic tape, and semiconductor memory.
  • a computer-readable information recording medium such as a compact disk, flexible disk, hard disk, magneto-optical disk, digital video disk, magnetic tape, and semiconductor memory.
  • the above program can be distributed and sold via a computer communication network independently of the computer on which the program is executed.
  • the information recording medium can be distributed and sold independently of the computer.
  • a moving image generating device it is possible to provide a moving image generating device, a game device, a moving image generating method, an information recording medium, and a program suitable for appropriately displaying a character.
  • FIG. 3 is a schematic diagram showing a schematic configuration of a typical information processing device in which the game device according to the first to third embodiments is realized. It is a block diagram which shows the structure of the moving image generation device which concerns on 1st Embodiment.
  • FIG. 3 is a block diagram showing a configuration of a game device according to the first to third embodiments.
  • FIG. 6 is a diagram for explaining display screens of the game device according to the first to third embodiments. It is explanatory drawing which shows the mode of the data memorize
  • 6 is a flowchart showing a character display control process executed by the game device according to the first to third embodiments. It is a flowchart which shows the production
  • Embodiments of the present invention will be described below.
  • an embodiment in which the present invention is applied to an information processing device dedicated to a game will be described.
  • various information processing devices such as various computers, PDAs (Personal Data Assistants), and mobile phones.
  • the present invention can be applied. That is, the embodiment described below is for explanation, and does not limit the scope of the present invention. Therefore, those skilled in the art can employ embodiments in which each or all of these elements are replaced with equivalent ones, and these embodiments are also included in the scope of the present invention.
  • FIG. 1 is a schematic diagram showing a schematic configuration of a typical information processing device in which the game device according to the first embodiment of the present invention is realized.
  • the game device according to the present embodiment has a function as a moving image generating device.
  • the game device displays a predetermined character on the monitor while the player is playing the game.
  • the information processing apparatus 100 includes a CPU (Central Processing Unit) 101, a ROM (Read Only Memory) 102, a RAM (Random Access Memory) 103, an interface 104, a mat type controller 105, an external memory 106, and an image processing.
  • Unit 107 DVD (Digital Versatile Disk) -ROM drive 108, NIC (Network Interface Card) 109, sound processing unit 110, RTC (Real Time Clock) 111, and monitor 112.
  • a DVD-ROM storing a game program and data is loaded into the DVD-ROM drive 108.
  • the information processing apparatus 100 is turned on.
  • the program is executed. By executing the program, the game apparatus of the present embodiment is realized.
  • the CPU 101 controls the overall operation of the information processing apparatus 100.
  • the CPU 101 is connected to each component and exchanges control signals and data.
  • the CPU 101 acquires various data from each component.
  • the CPU 101 processes the various data by various operations and gives the data to each component as data and control signals.
  • various data are temporarily stored in a cache included in the CPU 101.
  • the various types of data are further obtained by a register included in the CPU 101, and then various calculations are performed.
  • the ROM 102 stores an IPL (Initial Program Loader) that is executed immediately after the power is turned on. By executing the IPL, the program recorded on the DVD-ROM is read out to the RAM 103. Further, the execution of the program by the CPU 101 is started by executing the IPL. To control the operation of the entire information processing apparatus 100, an operating system program is required.
  • the ROM 102 stores an operating system program and various data.
  • the RAM 103 is for temporarily storing data and programs.
  • the RAM 103 holds programs and data read from the DVD-ROM and other data necessary for game progress and communication.
  • the RAM 103 also temporarily stores various information transmitted and received with various devices connected to the information processing apparatus 100.
  • the mat type controller 105 is connected via the interface 104.
  • the mat-type controller 105 receives an operation input when the player executes the game. Buttons indicating “left”, “down”, “up”, and “right” are arranged in a predetermined area of the mat type controller 105. Each button receives an instruction input from the player. The player can press each button at an arbitrary timing. Note that the CPU 101 determines for each button whether or not it is pressed by the player.
  • the mat type controller 105 will be described as including four buttons. However, the number of buttons is not limited to four and may be three or less or five or more. Further, the mat type controller 105 is not limited to the shape arranged on the floor surface.
  • the mat-type controller 105 may have a shape of a so-called touch pad that is operated by being held by a hand or a shape that is held by a hand.
  • the external memory 106 is detachably connected via the interface 104.
  • data indicating the progress of the game is stored in a rewritable manner. For example, when an instruction is input through the mat type controller 105 by the player, these data may be recorded in the external memory 106 as appropriate.
  • the DVD-ROM is mounted on the DVD-ROM drive 108.
  • a program for realizing a game is recorded on the DVD-ROM.
  • the DVD-ROM also records image data and sound data associated with the game.
  • the DVD-ROM drive 108 Under the control of the CPU 101, the DVD-ROM drive 108 performs a reading process on the DVD-ROM attached thereto. By the reading process, necessary programs and data are read and temporarily stored in the RAM 103 or the like.
  • the image processing unit 107 processes the data read from the DVD-ROM by the CPU 101 or an image arithmetic processor (not shown) provided in the image processing unit 107. Next, the image processing unit 107 records the processed data in a provided frame memory (not shown). The image information recorded in the frame memory is converted into a video signal at a predetermined synchronization timing. Thereafter, the converted image information is output to the monitor 112 connected to the image processing unit 107. Thereby, various image displays are possible.
  • the image processor can execute various operations at high speed.
  • the calculation may be a two-dimensional image overlay calculation, a transmission calculation such as ⁇ blending, various saturation calculations, or the like.
  • Polygons to be drawn are arranged in a virtual three-dimensional space.
  • Various kinds of texture information are added to the polygon information.
  • the rendering image is an image in which a polygon is looked down from a predetermined viewpoint position.
  • the light source may be a point light source, a parallel light source, a conical light source, or the like.
  • the function of calculating the degree to which a polygon is illuminated by such a (positive) light source is made into a library or hardware. Therefore, the image arithmetic processor can perform calculation at high speed.
  • Font information defines the shape of a character. Based on the font information, the character string is drawn on the frame memory as a two-dimensional image or drawn on the surface of each polygon. The font information is recorded in the ROM 102. However, it is also possible to use dedicated font information recorded on the DVD-ROM.
  • the NIC 109 is for connecting the information processing apparatus 100 to a computer communication network (not shown) such as the Internet.
  • the NIC 109 is an interface (not shown) that mediates between the Internet connection device and the CPU 101.
  • the Internet connection equipment includes a 10BASE-T / 100BASE-T standard used when configuring a LAN (Local Area Network), an analog modem for connecting to the Internet using a telephone line, and an ISDN (Integrated Services). It may be a digital network (ADSL) modem, an ADSL (Asymmetric Digital Subscriber Modem) modem, a cable modem for connecting to the Internet using a cable television line, or the like.
  • ADSL digital network
  • ADSL Asymmetric Digital Subscriber Modem
  • the audio processing unit 110 converts the audio data read from the DVD-ROM into an analog audio signal. Next, the audio processing unit 110 outputs audio from a connected speaker (not shown). In addition, the sound processing unit 110 generates sound effects and music data to be generated during the progress of the game under the control of the CPU 101. The sound processing unit 110 converts, for example, the sound of music reproduced as BGM or karaoke, or the sound effect reproduced in accordance with the button operation of the player. Furthermore, the sound processing unit 110 outputs sound corresponding to the progress of the game from the speaker.
  • the RTC 111 is a timekeeping device including a crystal resonator and an oscillation circuit.
  • the RTC 111 is supplied with power from the built-in battery and continues to operate even when the information processing apparatus 100 is powered off.
  • the monitor 112 displays an image according to the video signal supplied from the image processing unit 107.
  • the monitor 112 is configured by, for example, a liquid crystal display, a plasma display, a CRT, or the like.
  • the information processing apparatus 100 uses a large-capacity external storage device such as a hard disk to perform the same function as the ROM 102, the RAM 103, the external memory 106, the DVD-ROM attached to the DVD-ROM drive 108, and the like. You may comprise.
  • a large-capacity external storage device such as a hard disk to perform the same function as the ROM 102, the RAM 103, the external memory 106, the DVD-ROM attached to the DVD-ROM drive 108, and the like. You may comprise.
  • FIG. 2 is a diagram showing the minimum configuration of the present invention.
  • FIG. 3 is a diagram showing a general configuration of the present invention.
  • the moving image generating apparatus 600 includes a shape calculating unit 201, a determining unit 202, and a generating unit 203.
  • the shape calculation unit 201 calculates the shape of the character at each time.
  • the character performs a predetermined choreography within a predetermined period in the virtual space.
  • the start time of the predetermined period is time B
  • the end time of the predetermined period is time E
  • any time included in the predetermined period is time t.
  • the shape calculation unit 201 calculates the shape of the character associated with the time t. Time t is included in a predetermined period from time B to time E.
  • the shape calculation unit 201 is configured by, for example, a CPU 101 or the like.
  • the determination unit 202 determines a generation time associated with each of the break times.
  • the delimiter time is obtained by dividing the predetermined period from the beginning to the end at equal intervals.
  • the determination unit 202 determines a generation time by generating a random number, for example.
  • the determination unit 202 is configured by the CPU 101, for example.
  • the generation unit 203 gives the generation time associated with each separation time to the shape calculation unit 201 to calculate the shape of the character.
  • the generation unit 203 causes the determination unit 202 to determine a generation time for each character.
  • the generation unit 203 gives the generation time for each character associated with the separation time to the shape calculation unit 201.
  • the shape calculation unit 201 calculates the shape of each character at the separation time based on the shape of the model character at the generation time.
  • the model character is a character that takes a motion according to the choreography that matches the rhythm of the music at a model speed.
  • the generation unit 203 generates an image of each character displayed at each break time from the calculated shape for each character.
  • the generation unit 203 outputs the generated image as, for example, a video signal indicating the image.
  • the generation unit 203 includes, for example, a CPU 101, an image processing unit 107, an RTC 111, and the like.
  • the game device 200 includes a shape calculation unit 201, a determination unit 202, a generation unit 203, a reception unit 204, a determination unit 205, and a display unit 206.
  • the shape calculation unit 201 is the same as the shape calculation unit 201 in the moving image generation apparatus 600, the description thereof is omitted.
  • determination unit 202 is the same as the determination unit 202 in the moving image generation apparatus 600, description thereof is omitted.
  • the generation unit 203 is the same as the generation unit 203 in the moving image generation apparatus 600, the description thereof is omitted.
  • the accepting unit 204 accepts an instruction input (operation input) from the player.
  • the receiving unit 204 includes, for example, a CPU 101, an interface 104, and a mat type controller 105.
  • the determination unit 205 determines the player's score based on the instruction input received by the reception unit 204.
  • the determination unit 205 is configured by the CPU 101, for example.
  • the display unit 206 displays the image generated by the generation unit 203. Specifically, the display unit 206 displays an image expressed by the video signal supplied from the generation unit 203.
  • the display unit 206 is configured by the monitor 112, for example.
  • the generation unit 203 causes the determination unit 202 to determine a generation time associated with the separation time before reaching the separation time.
  • the determination unit 202 determines a generation time associated with the break time according to the player's score determined by the determination unit 205.
  • the generation unit 203 supplies a signal indicating the determined generation time to the shape calculation unit 201.
  • the shape calculation unit 201 calculates the shape of the character corresponding to the supplied generation time.
  • the generation unit 203 generates an image of the character to be displayed at the break time based on the character shape calculated by the shape calculation unit 201.
  • the generation unit 203 supplies the generated character image to the display unit 206 at the break time.
  • the display unit 206 displays the supplied image.
  • the display screen of the game apparatus 200 according to the present embodiment will be described with reference to FIG. Note that the game apparatus 200 will be described as being applied to a game apparatus that executes a dance game.
  • the game device 200 displays various information necessary for the dance game. For example, the game device 200 displays a music list or the like before starting the game, and prompts the player to select a desired music. After the player selects a song, the game is started. When the game is started, the game apparatus 200 displays a game screen as shown in FIG. 4, for example.
  • still marks 301L, 301D, 301U, and 301R are fixed images for showing the timing of the stepping motion to the player.
  • the stationary marks 301L, 301D, 301U, and 301R are collectively referred to as stationary marks 301 as necessary.
  • the targets 302L, 302D, 302U, and 302R are images for showing the player the stepping action that is a problem.
  • the targets 302L, 302D, 302U, and 302R are collectively referred to as the target 302 as necessary.
  • the target 302 is scroll-displayed from the bottom of the screen to the top, for example, according to the music to be played. Then, the target 302 reaches the stationary mark 301. That is, the target 302 overlaps the same image of the stationary mark 301. A score is obtained when the player performs the required stepping action.
  • task data a music data string, and an audio data string are prepared as data for realizing such processing.
  • These data are stored in advance on a DVD mounted on the DVD-ROM drive 108, for example. These data are read out to the RAM 103 as necessary.
  • FIG. 5 is a schematic diagram showing the state of the task data read into the task data area of the RAM 103.
  • the task data 400 is data corresponding to a score in the music field.
  • the assignment data 400 includes a table 401 including a plurality of records 402, a threshold time 411 (this value is assumed to be d), and an end time 421 (this value is assumed to be E). It is data.
  • Each record 402 has an area for recording a task time 403 (this value is T), an operation input type 404, and a target state 405.
  • Each record 402 corresponds to a musical note.
  • the task time 403 is the time from the start of the game until the target 302 reaches the stationary mark 301. That is, the task time 403 is an elapsed time from the start of the game to the time when the player should perform an operation input on the target 302.
  • the task time 403 is an elapsed time from the start of the game to the time when the player should step on the button.
  • the task data 400 includes task times 403 corresponding to the number of targets 302.
  • the operation input type 404 is data associated with the task time 403. That is, the operation input type 404 is data indicating a button of the mat-type controller 105 that the player should step on when the task time 403 associated with the operation input type 404 has elapsed since the start of the game.
  • the target state 405 represents the state of the target 302 by a numerical value.
  • the state of the target 302 is represented by “0” for “unprocessed”, “1” for “success”, and “2” for “failure”, for example.
  • the threshold time 411 is a value used for determining success or failure of the operation input. That is, it is a time indicating an allowable value of a difference between the elapsed time from the start of the game until the player steps on the button and the task time 403. When the difference between the elapsed time and the task time 403 is equal to or less than the threshold time 411, the operation input is regarded as successful.
  • the end time 421 is data indicating the time from the start of the game to the end of the game.
  • the task time 403, the threshold time 411, the end time 421, and the like may be expressed numerically with ms as a unit. Further, these times may be expressed by numerical values in units of a vertical synchronization interrupt period (typically 1/60 second) which is a display update rate of the screen.
  • the song data string is a data string representing a song to be played back as BGM.
  • the audio data string is a data string expressing the output sound. The sound is output when the player steps on the mat type controller 105 button.
  • each character takes a motion according to the choreography.
  • the choreography matches the rhythm of the music and is predetermined for each music scene.
  • the motion that each character takes becomes closer to each other as the player's score is better.
  • the motion that the character takes will be described with reference to FIGS.
  • the delimiter times are the times at which the predetermined period is divided at equal intervals.
  • the generation time is a time determined in association with each of the break times.
  • the generation time is generated for each character.
  • the predetermined period is, for example, a period corresponding to one scene.
  • N is an arbitrary natural number.
  • the delimiter times are D [0], D [1], ..., D [N].
  • the generation times determined for the first character 303 are G1 [0], G1 [1],..., G1 [N].
  • the generation times determined for the second character 304 are G2 [0], G2 [1],..., G2 [N].
  • the generation times determined for the third character 305 are G3 [0], G3 [1],..., G3 [N].
  • the predetermined period is Tp
  • the beginning time of the predetermined period is B
  • the end time of the predetermined period is E.
  • An interval between adjacent time points on the time series (hereinafter referred to as “separation time”) is Ts.
  • the break time can be set to, for example, a vertical synchronization interrupt period (typically 1/60 second).
  • FIG. 6 shows an example in which the predetermined period is divided into six periods. However, generally, the predetermined period is divided into more periods. For example, when the predetermined period is 5 seconds and the separation time is 1/60 seconds, the predetermined period is divided into 300 sections. In this case, the number of break times is 301.
  • the generation time associated with each separation time is determined according to the player's performance.
  • a method for determining the generation time associated with each separation time is arbitrary. However, the following restrictions (A) to (C) need to be satisfied.
  • (A) The first separation time among the separation times and the generation time associated with the first separation time are equal to the first time in the predetermined period.
  • (B) The end delimiter time among the delimiter times and the generation time associated with the end delimiter time are both equal to the end time of the predetermined period.
  • C When the separation times are arranged in the order of passage of time and the generation times associated with the separation times are arranged in that order, the order of passage of time is obtained.
  • the generation time is determined for each character. First, generation times determined for the first character 303, that is, G1 [0], G1 [1],..., G1 [6] will be described.
  • G1 [0], G1 [1],..., G1 [6] are determined in order from the earliest time using random numbers.
  • G1 [0] D [0] is determined.
  • G1 [1] to G1 [5] are determined using random numbers.
  • a random number generation range is determined according to the player's performance.
  • the random number to be generated is R and the fluctuation range of the random number is Rmax (where Rmax is a positive number)
  • the random number generation range is ⁇ Rmax ⁇ R ⁇ Rmax.
  • the random number is handled as a numerical value in units of time (for example, milliseconds).
  • the determined generation time candidate is a time that has elapsed from the delimiter time by the time indicated by the random number. If the determined generation time candidate does not satisfy the restriction (C) described above, a random number is acquired again. In this case, the generation time candidate is determined again. The random number acquisition and generation time candidate redetermination processing are repeated until the determined generation time candidate satisfies the above-described constraint (C). On the other hand, when the determined generation time candidate satisfies the above-described restriction (C), the generation time candidate is set as the generation time.
  • R1 is acquired in the range of ⁇ Rmax ⁇ R1 ⁇ Rmax.
  • D [1] + R1 is determined as a candidate for G1 [1].
  • R1 is acquired again and D [1] + R1 is determined again.
  • the process of acquiring R1 and determining D [1] + R1 is repeated until both D [1] + R1 ⁇ D [0] and D [1] + R1 ⁇ D [6] are satisfied.
  • D [1] + R1 is determined as G1 [1].
  • G1 [2] is determined by the same method. That is, first, R2 is acquired in the range of ⁇ Rmax ⁇ R2 ⁇ Rmax. Next, D [2] + R2 is determined as a candidate for G1 [2]. Here, when either of D [2] + R2 ⁇ D [1] and D [2] + R2 ⁇ D [6] is not satisfied, R2 is acquired again and D [2] + R2 is determined again. Then, until both D [2] + R2 ⁇ D [1] and D [2] + R2 ⁇ D [6] are satisfied, acquisition of R2 and determination processing of D [2] + R2 are repeated. On the other hand, when both D [2] + R2 ⁇ D [1] and D [2] + R2 ⁇ D [6] are satisfied, D [2] + R2 is determined as G1 [2].
  • G1 [3] to G1 [5] are determined.
  • G1 [6] D [6] is determined.
  • the generation time is similarly determined for the second character 304 and the third character 305.
  • the generation time determined in this way is usually a time different from the associated separation time.
  • the generation time is different for each character.
  • FIG. 7 also shows how the exemplary character 500 is displayed at each break time.
  • the exemplary character 500 is a character that takes a motion according to the choreography that matches the rhythm of the music at an exemplary speed.
  • Each character takes a motion at the same exemplary speed as the exemplary character 500 when the separation time and the generation time associated with the separation time all match.
  • the model character 500 takes the following motions during a predetermined period.
  • the model character 500 stands up at D [0].
  • the exemplary character 500 raises the left hand toward D [1].
  • the exemplary character 500 raises the right hand toward D [2].
  • the exemplary character 500 raises the left foot toward D [3].
  • the model character 500 lowers the left hand toward D [4].
  • the model character 500 lowers the right hand toward D [5].
  • the model character 500 lowers the left foot toward D [6].
  • the generation time determined for the first character 303 corresponds to the break time.
  • the generation time is determined as a time different from the separation time.
  • the method for determining the generation time is arbitrary.
  • the generation time can be determined based on a random number generated by a random number generator. Specifically, the generation time is determined so that the difference between the break time and the generation time corresponding to the break time becomes the time indicated by the random number.
  • the random number is 0, the random number is generated again so that the random number becomes a value other than 0.
  • the generation time corresponding to the separation time is determined to be different from the separation time.
  • the first character 303 takes a motion to perform each action at a timing different from that of the model character 500. Specifically, the first character 303 takes each motion at a timing earlier or later than the model character 500. However, the first character 303 takes a motion at the same timing as the exemplary character 500 at the start time of the predetermined period and the end time of the predetermined period.
  • the second character 304 and the third character 305 also take each motion at a different timing from the model character 500.
  • the generation time is determined for each character.
  • Each character takes each motion at a different timing from the other characters. Accordingly, the three characters displayed on the display screen each take a motion at different timings.
  • the generation time associated with the break time is determined to be closer to the break time in time series as the player's score is better. For this reason, the better the player's performance, the smaller the variation in timing of taking the motions of the three characters.
  • G1 [1] is determined in association with D [1].
  • the first character 303 takes an action that precedes the model character 500 at the time of D [1]. Then, the first character 303 performs the same action as that of the model character 500 in G1 [2] in D [2].
  • G1 [2] is determined in association with D [2].
  • the first character 303 takes an action ahead of the model character 500 even at the time of D [2].
  • G2 [1] is determined in association with D [1].
  • the second character 304 takes an action that precedes the model character 500 at the time of D [1]. Then, the second character 304 performs the same action as that of the model character 500 in G2 [2] in D [2].
  • G2 [2] is determined in association with D [2].
  • G2 [2] is determined in association with D [2].
  • the second character 304 takes a later action than the model character 500.
  • each character takes a different action from the model character and other characters at each break time.
  • FIG. 9 is a flowchart showing a character display control process executed by the game device 200 according to the present embodiment.
  • FIG. 10 is a flowchart showing generation time determination processing executed by the game device 200 according to the present embodiment.
  • the initial value of the task data 400 is stored in a DVD-ROM mounted on the DVD-ROM drive 108.
  • the CPU 101 reads and initializes the task data 400 from the DVD-ROM to a predetermined task data area of the RAM 103 (step S101). Further, the CPU 101 determines the generation time associated with the break time in the first scene after the game is started as the break time.
  • the CPU 101 issues an instruction to the voice processing unit 110.
  • the voice processing unit 110 starts playing the BGM associated with the task data 400 (step S102).
  • the BGM audio data sequence is recorded in the DVD-ROM in the PCM (Pulse Code Modulation) format, MP3 (MPEG Layer 3) format, Ogg Volbis format, MIDI (Musical Instrument Digital Interface) format, and the like.
  • the CPU 101 confirms the presence or absence of operation input (step S103). Specifically, the CPU 101 checks the state of pressing operation of each button of the mat type controller 105. When there is a button that has started to be pressed, an instruction may be issued to the voice processing unit 110. In this case, the audio processing unit 110 reproduces the audio data sequence.
  • the voice data string represents a voice indicating that the button has been pressed.
  • various audio data sequences as described above can be used. However, in order to increase the processing speed, it is desirable to read the audio data string in the RAM 103 in advance.
  • a format with a small amount of data such as a MIDI format can be used as a storage format for these audio data strings.
  • the CPU 101 determines an operation input (step S104). Specifically, the CPU 101 makes a determination based on the task time 403, the operation input type 404, and the threshold time 411. The CPU 101 determines whether there is a successful operation input. The CPU 101 also determines whether there is a failed operation input. That is, the CPU 101 determines whether a button to be pressed is pressed at the separation time (the time at which the vertical synchronization interrupt is made). In addition, the CPU 101 confirms whether a button that should not be pressed at the separation time is pressed. When there is a successful operation input, the CPU 101 adds a score.
  • the CPU 101 acquires the character shape (step S105). Specifically, the CPU 101 calculates the shape of the character at the associated break time based on the generation time.
  • the generation time is determined in step S108. However, in the first scene after the start of the game, the generation time is the generation time (separation time) determined in step S101.
  • the choreography is predetermined for each scene. Therefore, when the generation time associated with the break time in the scene is determined, the character shape at the break time is also determined.
  • the CPU 101 obtains the character shape displayed at the separation time for each character.
  • the CPU 101 displays a character (step S106). Specifically, the CPU 101 controls the image processing unit 107 to generate a video signal for displaying each character in the character shape acquired in step S105. Further, the CPU 101 supplies the generated video signal to the monitor 112.
  • the CPU 101 determines whether or not the current break time is the last break time included in the current scene. That is, the CPU 101 determines whether or not the current scene has ended (step S107). If the CPU 101 determines that the current scene has not ended (step S107: NO), the CPU 101 proceeds to a process of waiting until the next break time (step S109). On the other hand, when the CPU 101 determines that the current scene has ended (step S107: YES), the CPU 101 proceeds to a generation time determination process (step S108).
  • the CPU 101 obtains the player's score in the current scene (step S201). As described above, the operation input is determined in step S104. Typically, out of the points added based on the result of the determination, the score added in the current scene is acquired.
  • the CPU 101 sets a random number generation range according to the player's score obtained in step S201 (step S202).
  • the random number generation range is set to be narrower as the player's score is better.
  • the CPU 101 selects one character from the three characters of the first character 303, the second character 304, and the third character 305 (step S203).
  • the CPU 101 selects one separation time (step S204). For example, the CPU 101 selects the break times in order from the earliest time.
  • the CPU 101 determines whether or not the break time selected in step S204 is the break time at the beginning or end of the scene (step S205).
  • the CPU 101 determines that the break time is the start or end break time of the scene (step S205: YES)
  • the CPU 101 determines the break time as a generation time associated with the break time (step S206).
  • step S204 determines that the break time selected in step S204 is neither the start time nor the end time of the scene (step S205: NO)
  • step S207 the CPU 101 generates a random number within the range set in step S202. Is acquired (step S207).
  • step S207 the candidate of the production
  • step S208 generation time candidates are determined in step S208.
  • the CPU 101 determines whether or not the generation time candidate satisfies a constraint condition (step S209). If the CPU 101 determines that the generation time candidate satisfies the constraint condition (step S209: YES), the CPU 101 determines the generation time candidate as the generation time (step S210). On the other hand, if the CPU 101 determines that the generation time candidate does not satisfy the constraint condition (step S209: NO), the CPU 101 returns the process to the process of acquiring a random number (step S207).
  • step S ⁇ b> 206 the CPU 101 performs a process of determining the separation time as the generation time.
  • step S210 the CPU 101 performs a process of determining a generation time candidate as the generation time.
  • the CPU 101 determines whether or not all the break times have been selected (step S211).
  • step S211: NO the CPU 101 determines whether or not all the break times have been selected.
  • step S212 determines that any character has not been selected (step S212: NO)
  • the CPU 101 returns the processing to the character selection processing (step S203).
  • step S212: YES the generation time determination process ends.
  • step S107: NO the CPU 101 determines that the scene is not finished (step S107: NO) or finishes the generation time determination process (step S108). During this standby, the CPU 101 may execute other processes. Then, the CPU 101 determines whether or not it is the game end time (step S110). Whether or not it is the game end time can be determined by whether or not the elapsed time from the start of the game exceeds the game time included in the task data 400. If the CPU 101 determines that it is the game end time (step S110: YES), it ends the character display control process. On the other hand, if the CPU 101 determines that it is not the game end time (step S110: NO), the CPU 101 returns the process to the process for confirming whether or not there is an operation input (step S103).
  • the speed of the motion during the motion can be changed for each character without changing the total time for performing the motion according to the choreography. Accordingly, each character performs fast-forward playback at a certain timing in the scene and slow-motion playback at another timing in the scene. However, each character is displayed so that an action to be completed in the scene is completed in the scene. Note that the timing for fast-forward playback or slow playback differs for each character. Accordingly, in the displayed moving image, each character performs an action according to the choreography at each reproduction speed. And the better the player's performance, the less the variation in the timing of executing each action.
  • the better the player's performance that is, the better the player performs the dance step
  • the character as the back dancer is displayed such that each action according to the choreography is performed more separately as the player's performance is worse, that is, as the player steps down the dance step.
  • a representative delimiter time (hereinafter referred to as “representative time”) may be selected from all delimiter times, and only a generation time associated with the representative time may be determined to generate a random number. Then, the generation time associated with the separation time other than the representative time may be determined so as to complement the generation time associated with the representative time.
  • the game apparatus 200 according to the second embodiment will be described. However, since the configuration of the game device 200 according to the second embodiment is the same as the configuration of the game device 200 according to the first embodiment, the description thereof is omitted.
  • the generation time is determined for other characters by the same method.
  • the generation times associated with each of D [0], D [1],..., D [30] for the first character 303 are G1 [0], G1 [1],. To do.
  • multiple representative times are selected from all the break times. It is assumed that the intervals between representative times adjacent in time series are equal.
  • the representative time is selected every nine out of all the separation times so as to include the beginning and end separation times. That is, the four delimited times of the selected D [0], D [10], D [20], and D [30] are representative times.
  • a generation time associated with a break time other than the representative time is determined.
  • the generation time associated with a separation time other than the representative time is determined as a time that divides the generation times associated with the representative time at equal intervals. Specifically, the times for dividing the time from G1 [0] to G1 [10] into 10 equal parts are set to G1 [1] to G1 [9]. Similarly, each of the times for dividing the time from G1 [10] to G1 [20] into 10 equal parts is set to G1 [11] to G1 [19]. Similarly, each of the times for dividing the time from G1 [20] to G1 [30] into 10 equal parts is set to G1 [21] to G1 [29].
  • the character display control process executed by the game device 200 according to this embodiment is the same as that of the first embodiment except for the generation time determination process. Therefore, hereinafter, a generation time determination process executed by the game device 200 according to the present embodiment will be described with reference to FIG.
  • the CPU 101 obtains the player's score in the current scene (step S301). Next, the CPU 101 sets a random number generation range according to the player's score obtained in step S301 (step S302). Then, the CPU 101 selects one character from the three characters of the first character 303, the second character 304, and the third character 305 (step S303).
  • the CPU 101 selects one representative time of the separation time (step S304).
  • the CPU 101 selects representative times in order from an early time.
  • the CPU 101 determines whether or not the representative time selected in step S304 is a break time at the beginning or end of the scene (step S305). If the CPU 101 determines that the representative time selected in step S304 is the start or end break time of the scene (step S305: YES), the CPU 101 generates the representative time associated with the break time that is the representative time. The time is determined (step S306).
  • step S304 determines that the representative time selected in step S304 is neither the start time nor the end time of the scene (step S305: NO), it generates a random number within the range set in step S302. A random number is acquired (step S307).
  • step S304 a delimiter time that is a representative time is selected.
  • step S307 a random number is acquired.
  • CPU101 will determine the production
  • step S309 determines whether all the representative times have been selected. ). If the CPU 101 determines that any one of the representative times has not been selected (step S309: NO), the CPU 101 returns the process to the process for selecting the delimiter time (step S304). On the other hand, if the CPU 101 determines that all the representative times have been selected (step S309: YES), the CPU 101 determines a generation time associated with the separator time between the representative times (step S310).
  • the CPU 101 divides the time between generation times associated with each of two adjacent representative times when the representative times are arranged in time series at equal intervals. That is, the CPU 101 obtains a time at which the generation times are divided at equal intervals (number of separation times existing between the two adjacent representative times + 1). Then, the CPU 101 determines each of the times divided at equal intervals as a generation time associated with each of the division times existing between the two adjacent representative times. When the CPU 101 finishes the process of determining the generation time associated with the separation time between the representative times (step S310), it determines whether or not all characters have been selected (step S311).
  • step S311 determines that any character has not been selected (step S311: NO)
  • step S311: YES the generation time determination process is terminated.
  • the generation time is determined using random numbers only for the representative time.
  • the generation time is determined so as to complement the generation time associated with the representative time.
  • the generation time is determined using a random number.
  • a table in which the break time and the shift amount of the generation time associated with the break time from the break time may be prepared in advance. Then, the generation time may be determined using the table.
  • a moving image generating apparatus 600 according to the third embodiment will be described. (Description of moving image generation device)
  • the storage unit 610 stores the reference value of the difference between the break time and the generation time associated with the break time, that is, the shift amount for each break time.
  • the storage unit 610 is realized by an external memory 106, a DVD-ROM attached to the DVD-ROM drive 108, or the like.
  • the shape calculation unit 201 is the same as the shape calculation unit 201 in the configuration of FIG.
  • the generation unit 203 is the same as the generation unit 203 in the configuration of FIG.
  • the character display control process executed by the game device 200 according to the present embodiment is the same as that of the first and second embodiments except for the generation time determination process. Therefore, the details of the method for determining the generation time will be described with reference to FIG. Hereinafter, a method of determining the generation time for the first character 303 will be described. However, the generation time is determined for other characters by the same method.
  • the generation times associated with each of D [0], D [1],..., D [8] for the first character 303 are G1 [0], G1 [1],. To do.
  • the separation time corresponds to the shift amount from the separation time of the generation time associated with the separation time.
  • the table is stored in advance in an external memory 106 or a DVD-ROM mounted on the DVD-ROM drive 108.
  • the generation time is determined based on the table.
  • the shift amount is an amount indicating a difference time between the break time and the generation time associated with the break time.
  • both the shift amount associated with the first break time and the shift amount associated with the last break time are zero. Further, it is desirable that the separation time and the shift amount are associated with each other so that the shift amount gradually changes according to the change of the separation time.
  • This table stores a discrete value of the variable and a discrete value of the function in association with each other so that the shift amount associated with the separation time becomes a value of a predetermined function with the separation time as a variable. But you can.
  • the generation time is determined based on a table in which the shift amount is associated with the break time so that the shift amount associated with the break time becomes a value of a sine function having the break time as a variable. An example will be described.
  • the shift amount of G1 [0] associated with D [0] and the shift amount of G1 [8] associated with D [8] are zero.
  • Smax is the amplitude of a sine function.
  • the shift amount of G1 [2] associated with D [2] is the maximum (Smax)
  • the shift amount of G1 [6] associated with D [6] is the minimum ( ⁇ Smax).
  • the gain of the shift amount is determined according to the player's performance. Specifically, the gain is set to a smaller value as the player's performance is better. Then, the generation time is determined as the time (shifted time) that has elapsed from the break time by a value obtained by multiplying the shift amount associated with the break time by the gain. The shift amount and the gain are set so as to satisfy the above-described constraints.
  • each character performs an action according to the choreography.
  • the better the player's score the smaller the variation in the timing at which each character performs the action.
  • the worse the player's performance the larger the variation in the timing at which each character performs each action.
  • the character display control process executed by the game device 200 according to the present embodiment is the same as that of the first and second embodiments except for the generation time determination process. Therefore, hereinafter, a generation time determination process executed by the game device 200 according to the present embodiment will be described with reference to FIG.
  • the CPU 101 obtains the player's score in the current scene (step S401). Next, the CPU 101 determines the gain of the shift amount according to the player's score obtained in step S401 (step S402). Then, the CPU 101 selects one character from the three characters of the first character 303, the second character 304, and the third character 305 (step S403).
  • the CPU 101 reads a table associated with the character from the external memory 106 (step S404).
  • this table the separation time and the shift amount are stored in association with each other.
  • the CPU 101 selects one delimiter time (step S405). For example, the CPU 101 selects the break times in order from the earliest time.
  • the gain is determined in step S402.
  • the table is read.
  • a delimiter time is selected.
  • the CPU 101 determines a generation time associated with the separation time (step S406). Specifically, the CPU 101 determines, as the generation time associated with the separation time, the time that has elapsed from the separation time by the product of the gain and the shift amount associated with the separation time in the table. To do.
  • step S407 determines whether or not all separation times have been selected. If the CPU 101 determines that any separation time has not been selected (step S407: NO), the CPU 101 returns the processing to the processing for selecting the separation time (step S405). On the other hand, when determining that all the break times have been selected (step S407: YES), the CPU 101 determines whether or not all characters have been selected (step S408). If the CPU 101 determines that any character is not selected (step S408: NO), the CPU 101 returns the process to the process for selecting a character (step S403). On the other hand, if the CPU 101 determines that all characters have been selected (step S408: YES), the generation time determination process is terminated.
  • the generation time associated with the break time can be determined as a different generation time for each character without generating a random number. Thereby, an improvement in processing speed can be expected.
  • the degree of motion variation of each character in each scene is changed in accordance with the performance of the player in the previous scene.
  • the degree of motion variation of each character in each scene may be changed according to the player's performance in an arbitrary period after the game starts.
  • the motion variation of each character is changed according to the player's performance.
  • the motion taken by each character may be changed regardless of the player's performance.
  • the separation time is associated with the shift amount on the time axis from the separation time of the generation time associated with the separation time.
  • the table is stored in the external memory 106 in advance.
  • the generation time was determined using the table.
  • the table may be stored in advance in the program.
  • the generation time may be determined using a predetermined function that obtains the shift amount using the break time as a variable without using a table. In this case, a function is adopted in which the generation time associated with the first separation time is determined as the first separation time, and the generation time associated with the last separation time is determined as the last separation time.
  • a moving image generating device As described above, according to the present invention, it is possible to provide a moving image generating device, a game device, a moving image generating method, an information recording medium, and a program suitable for displaying characters appropriately.
  • Information processing apparatus 101 CPU 102 ROM 103 RAM 104 Interface 105 Mat-type controller 106 External memory 107 Image processing unit 108 DVD-ROM drive 109 NIC 110 Audio processing unit 111 RTC 112 monitor 200 game device 201 shape calculation unit 202 determination unit 203 generation unit 204 reception unit 205 determination unit 206 display unit 301L, 301D, 301U, 301R stationary mark 302L, 302D, 302U, 302R target 303 first character 304 second character 305 Third character 400 Task data 401 Table 402 Record 403 Task time 404 Type of operation input 405 Target state 411 Threshold time 421 End time 500 Model character 600 Moving image generating device 610 Storage unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Processing Or Creating Images (AREA)

Abstract

 動画像生成装置(600)は、形状計算部(201)、決定部(202)、生成部(203)を備える。 所定期間に含まれるいずれかの時刻が与えられると、形状計算部(201)は、当該時刻に対応付けられるキャラクタの形状を計算する。決定部(202)は、所定期間の先頭から末尾までを等間隔に区切る区切り時刻のそれぞれに対応付けられる生成時刻を決定する。生成部(203)は、区切り時刻のそれぞれに対応付けられる生成時刻を形状計算部(201)に与えて計算させる。次いで、生成部(203)は、当該計算されたキャラクタの形状から当該区切り時刻において表示すべきキャラクタの画像を生成する。先頭の区切り時刻に対応付けられる生成時刻は当該先頭の区切り時刻に等しい。末尾の区切り時刻に対応付けられる生成時刻は当該末尾の区切り時刻に等しい。区切り時刻を時間の経過順に並べ、その順序で当該区切り時刻に対応付けられる生成時刻を並べると、時間の経過順となる。

Description

動画像生成装置、ゲーム装置、動画像生成方法、情報記録媒体、ならびに、プログラム
 本発明は、キャラクタを適切に表示するのに好適な動画像生成装置、ゲーム装置、動画像生成方法、情報記録媒体、ならびに、プログラムに関する。
 従来、楽曲のリズムや画面の表示にタイミングを合わせて、プレイヤーがボタンやフットスイッチの操作を行う音楽ゲームが知られている。このような音楽ゲームにおいては、例えば、演奏される楽曲に同調して所定のオブジェクトが順次画面の下方から現れてそれぞれ画面の上方に移動する。一方、プレイヤーは、これらのオブジェクトが判定の基準となる判定ラインに到達したタイミングでボタンを押圧する。そして、ボタンが押圧されたタイミングが到達タイミングに合っている場合、得点が加算される。また、プレイヤーの操作入力の成功を示す図形が表示される。
 このような音楽ゲームには、プレイヤーがゲームをプレイしている間、バックダンサーのように楽曲のリズムに合ったモーションをとるキャラクタが表示されるものがある。このように、楽曲のリズムに合ったモーションをとるキャラクタが表示されると、プレイヤーはあたかもキャラクタと一緒にダンスをしているように感じることができる。このような音楽ゲームは、例えば、特許文献1に開示されている。
 このような音楽ゲームでは、楽曲の決定により、表示されるキャラクタのモーションも決定される。その結果、プレイヤーの操作入力の上手下手に関係なく、キャラクタが楽曲のリズムに合わせて正確にモーションをとっていた。また、複数のキャラクタを表示するタイプの音楽ゲームにおいては、楽曲のリズムに合わせて、複数のキャラクタが正確に全く同じモーションをとっていた。
特許第3245147号公報
 しかしながら、実際のバックダンサー達は、同じモーションを担当する場合であっても、全員が全く同じモーションをとることはない。バックダンサー達のモーションには、多少のばらつきがある。また、実際のバックダンサー達は、一般的には、メインボーカル(上述した音楽ゲームにおいてはプレイヤーに相当する。)のリズムの崩れにより、リズムを乱してしまう。従って、キャラクタのモーションを、実際のバックダンサーのモーションになるべく近くなるように、変化させたいという要望が強かった。
 本発明は、上記問題に鑑みてなされたものであり、キャラクタを適切に表示するのに好適な動画像生成装置、ゲーム装置、動画像生成方法、情報記録媒体、ならびに、プログラムを提供することを目的とする。
 上記目的を達成するために、本発明の第1の観点に係る動画像生成装置は、形状計算部、決定部、生成部を備え、以下のように構成する。
 まず、形状計算部は、所定期間に含まれるいずれかの時刻が与えられると、当該時刻に対応付けられるキャラクタの形状を計算する。すなわち、形状計算部には、時刻Bから時刻Eまでの所定期間に含まれるいずれかの時刻tが与えられる。すると、形状計算部は、当該時刻tに対応付けられるキャラクタの形状を計算する。本発明においては、キャラクタは、仮想空間上で所定期間内に所定の振り付けを行う。形状計算部は、キャラクタの各時刻における形状を計算する。形状計算部は、キャラクタの形状に加えてキャラクタの色彩などを計算しても良い。以下、本明細書において、キャラクタの形状には、キャラクタの色彩などが含まれうるものとして説明する。なお、生成部は、仮想空間上のキャラクタを所定の視点を基準として所定の投影面に投影したときに得られる画像を生成する。生成に際し、当該所定期間を、同じ視点を基準としている期間(以下、必要に応じて「シーン」という。)に設定することができる。
 そして、決定部は、所定期間の先頭から末尾までを等間隔に区切る区切り時刻のそれぞれに対応付けられる生成時刻を決定する。すなわち、決定部は、Nを自然数として、所定期間を等間隔に区切る区切り時刻D[0]=B,D[1],…,D[N]=Eのそれぞれに対応付けられる生成時刻G[0],G[1],…,G[N]を決定する。当該間隔は、表示部の表示更新レートである垂直同期割り込みの周期(典型的には1/60秒)であってもよい。
 以下、例えば、「模範キャラクタ」は、模範となる速さで振り付けに従った動作を実行するものとして説明する。
 生成部は、区切り時刻のそれぞれに対応付けられる生成時刻を形状計算部に与えてキャラクタの形状を計算させる。そして、生成部は、当該計算されたキャラクタの形状から当該区切り時刻において表示すべきキャラクタの画像を生成する。すなわち、生成部は、整数i=0,1,…,Nのそれぞれについて、区切り時刻D[i]に対応付けられる生成時刻G[i]を形状計算部に与える。形状計算部は、生成時刻G[i]における模範キャラクタの形状に基づき、キャラクタの形状を計算する。次いで、生成部は、計算されたキャラクタの形状に基づき、当該区切り時刻D[i]において表示されるキャラクタの画像を生成する。従って、生成部が生成した区切り時刻毎のキャラクタの形状を、区切り時刻の時間の経過順に並べるとキャラクタの動画像となる。なお、模範キャラクタの動画像は、形状計算部に区切り時刻を与え、当該区切り時刻において表示すべき画像を生成することにより得られる。
 ここで、区切り時刻のうち先頭の区切り時刻と、当該先頭の区切り時刻に対応付けられる生成時刻と、が、いずれも所定期間の先頭の時刻と等しくなるようにする。また、区切り時刻のうち末尾の区切り時刻と、当該末尾の区切り時刻に対応付けられる生成時刻と、が、いずれも所定期間の末尾の時刻と等しくなるようにする。さらに、区切り時刻を時間の経過順に並べ、その順序で当該区切り時刻に対応付けられる生成時刻を並べると、時間の経過順となるようにする。
 以下、生成時刻の決定方法について説明する。まず、区切り時刻を時間の経過順に並べる。さらに、その順序で当該区切り時刻に対応付けられる生成時刻を並べる。その結果、区切り時刻と生成時刻は時間の経過順に並べられる。すなわち、決定部は、以下の2つの条件を満たすように、生成時刻を決定する。
 (条件1)G[0]=B且つG[N]=E
 (条件2)整数j=0,1,…,N-1のそれぞれと、整数k=j+1,j+2,…,Nのそれぞれと、について、G[j]がG[k]に先行する。
 B:所定期間の先頭の時刻
 E:所定期間の末尾の時刻
 N:定数(自然数)
 j:0からNまでの整数
 k:整数
 ここで、G[j]がG[k]に先行するとは、G[j]とG[k]が同一である場合を含む。
 生成時刻は、区切り時刻と対応付けられている。上記の条件により、生成時刻の順序が入れ替わることはなく、対応付けられる区切り時刻と同じ順序となる。言い換えれば、ある区切り時刻に対応付けられている生成時刻は、より遅い区切り時刻に対応付けられている生成時刻よりも、早い時刻に決定される。
 上記のとおり、G[0]=Bが成立する。従って、時刻Bにおけるキャラクタの形状に基づき、時刻Bにおいて表示すべきキャラクタの画像が生成される。また、G[N]=Eが成立する。ゆえに、時刻Eにおけるキャラクタの形状に基づき、時刻Eにおいて表示すべきキャラクタの画像が生成される。また、整数j=0,1,…,N-1のそれぞれと、整数k=j+1,j+2,…,Nのそれぞれと、について、G[j]はG[k]に先行する。その結果、先頭の区切り時刻においてキャラクタの取る動作は、模範キャラクタの所定期間の最初の動作となる。また、末尾の区切り時刻においてキャラクタの取る動作は、模範キャラクタの所定期間の最後の動作である。先頭及び末尾の区切り時刻を除く生成時刻においては、キャラクタの動作の順序は、模範キャラクタの動作の順序と同じである。すなわち、キャラクタの動作の順序が入れ替わることはない。従って、シーンの最初と最後以外は、キャラクタは、模範キャラクタよりも早く又は遅く振り付けに従った動作を実行する。つまり、シーンの最初と最後以外は、生成された動画像におけるキャラクタの動作速度に揺らぎがある。また、キャラクタの振り付けに従った動作の所要時間は、模範キャラクタの振り付けに従った動作の所要時間に等しい。このため、シーンの繋ぎ目で、キャラクタの動作が不自然に変化しない。
 以上説明したように、本発明の動画像生成装置においては、キャラクタの振り付けに従った動作の所要時間は変更されない。しかしながら、生成された動画像において、キャラクタの振り付けに従った動作中の動作の速さは、変化させることができる。
 従って、本発明の動画像生成装置により生成された動画像においては、キャラクタは揺らぎのあるモーションをとる。
 また、本発明の動画像生成装置において、決定部は、区切り時刻と、当該区切り時刻に対応付けられる生成時刻と、の差を、乱数に基づいて決定するように構成されてもよい。このような構成により、振り付けに従った動作中の動作の速さをランダムに変化させることができる。
 また、本発明の動画像生成装置において、生成部は、複数のキャラクタの画像を生成してもよい。この場合、決定部は、複数のキャラクタ毎に生成時刻を決定する。なお、決定部が乱数を用いて生成時刻を決定する場合、生成時刻はキャラクタ毎にランダムに決定される。この場合、生成された動画像において、各キャラクタは、異なる速さで振り付けに従った動作を実行する。従って、生成された動画像においては、複数のキャラクタが互いに異なる揺らぎかたでモーションを取る。
 本発明の動画像生成装置は、複数のキャラクタのそれぞれのモーションに揺らぎのある動画像を生成することができる。
 また、本発明の動画像生成装置において、決定部は、先頭の区切り時刻と末尾の区切り時刻とを含むように区切り時刻から所定の個数の区切り時刻(以下「代表時刻」という。)を選択し、以下の(A)~(D)に示すように生成時刻を決定してもよい。
 まず、(A)代表時刻のうち先頭の区切り時刻に対応付けられる生成時刻を当該先頭の区切り時刻と等しくなるように決定する。
 そして、(B)代表時刻のうち末尾の区切り時刻に対応付けられる生成時刻を当該末尾の区切り時刻と等しくなるように決定する。
 さらに、(C)代表時刻のうち先頭の区切り時刻と末尾の区切り時刻と以外の区切り時刻と、当該区切り時刻に対応付けられる生成時刻と、の差を、乱数に基づいて決定する。
 そして、(D)代表時刻を時間の経過順に並べたときに隣り合う2つの代表時刻の間の区切り時刻に対応付けられる生成時刻を、当該生成時刻の間隔が等間隔になるように決定する。
 本発明の動画像生成装置においては、代表時刻に対応付けられる生成時刻のみ乱数に基づいて決定される。また、その他の生成時刻は、2つの隣り合う代表時刻に対応付けられる生成時刻を、等間隔に分割することにより決定される。従って、全ての生成時刻を乱数に基づき決定する場合に比べ、処理速度が向上する。なお、生成時刻の等分割により、表示されるキャラクタの動作速度は短時間で極端に変化しない。すなわち、キャラクタの動作の揺らぎを小さくすることができる。
 また、本発明の動画像生成装置において、区切り時刻と、当該区切り時刻に対応付けられる生成時刻と、の差の基準値を区切り時刻毎に記憶する記憶部、をさらに備えてもよい。
 この場合、決定部は、区切り時刻と、当該区切り時刻に対応付けられる生成時刻と、の差を決定する。なお、決定部は、記憶部に記憶されている区切り時刻毎の基準値に基づいてこの差を決定する。
 本発明の動画像生成装置によれば、あらかじめ定められた基準値に基づいて生成時刻が決定されるため、生成時刻が乱数に基づいて決定される場合に比べ、処理速度の向上が期待できる。
 上記目的を達成するために、本発明のその他の観点に係るゲーム装置は、受付部、判定部、表示部を備え、以下のように構成する。
 まず、受付部は、プレイヤーからの指示入力を受け付ける。
 例えば、プレイヤーはゲーム装置のコントローラに用意された各種のボタン(フットスイッチなど手や足で操作するものが典型的である。)やレバーを操作する。また、プレイヤーは、各種の楽器に模したコントローラの部材を操作することもある。受け付けられた指示入力は、このような操作や、プレイヤーによる動作を各種のセンサで検知したものである。
 そして、判定部は、受付部により受け付けられた指示入力に基づいて、プレイヤーの成績を判定する。例えば、当該ゲーム装置が、リズムゲームを実行するものとする。リズムゲームにおいては、プレイヤーにより所定のタイミングで所定のボタンが押された場合に得点が加算される。所定の時間内に加算された得点に基づいて、プレイヤーの成績は判定される。
 また、表示部は、上述した動画像生成装置により生成された動画像を表示する。従って、表示部は、所定の振り付けに従った動作を実行するキャラクタを表示する。
 リズムゲームを実行するゲーム装置においては、バックダンサーとして複数のキャラクタが表示部に表示される場合も多い。当該複数のキャラクタは、楽曲のリズムに合わせて、所定の振り付けに従った動作を実行する。従来のリズムゲームにおいては、複数のキャラクタが全く同じ振り付けを、全く同じ動作速度で実行していた。このような表示は、プレイヤーに、リアリティーに欠けるゲームとの印象を与えてしまう場合がある。従って、本発明を適用したゲーム装置においては、表示される複数のキャラクタの動作速度に揺らぎを持たせる。その結果、プレイヤーは、あたかも本物のバックダンサーとともにダンスをしている感覚で、ゲームを楽しむことができる。
 本発明において、決定部は、区切り時刻と、当該区切り時刻に対応付けられる生成時刻と、の差を、乱数に基づいて決定し、判定されたプレイヤーの成績に応じて、乱数のとりうる範囲を変化させることができる。
 ここで、例えば、乱数のとりうる範囲が広く設定された場合、区切り時刻と当該区切り時刻に対応付けられる生成時刻との差の期待値が大きくなる。上述のように、表示されるキャラクタは、振り付けに従って動作する。従って、当該動作中の動作の速さのムラが大きくなる。このため、表示されるキャラクタのとるモーションの揺らぎは大きくなる。一方、例えば、乱数のとりうる範囲が狭く設定された場合、区切り時刻と当該区切り時刻に対応付けられる生成時刻との差の期待値が小さくなる。従って、当該動作中の動作の速さのムラが小さくなる。このため、表示されるキャラクタのとるモーションの揺らぎが小さくなる。
 なお、プレイヤーの成績に応じた乱数の取り得る範囲の変化の幅は、適宜調整することが可能である。例えば、リズムゲームの場合、プレイヤーの成績が良いほど、乱数のとりうる範囲は狭く設定される。キャラクタの振り付けに従った動作中の動作のムラは、乱数の変化の幅に応じて設定される。ゆえに、プレイヤーの成績が良いほど、キャラクタの動作の速さのムラが小さくなる。従って、プレイヤーの成績が良いほど、表示されるキャラクタの動作は、適切な速さで振り付けに従ったものとなる。
 本発明のゲーム装置によれば、表示されるキャラクタのとるモーションの揺らぎの大きさをプレイヤーの成績に応じて変化させることができる。これにより、プレイヤーがあたかも本物のバックダンサーとともにダンスをしているように演出することができる。
 上記目的を達成するために、本発明のその他の観点に係る動画像生成方法は、形状計算部、決定部、生成部を備える動画像生成装置が実行する動画像生成方法であって、形状計算工程、決定工程、生成工程を備え、以下のように構成する。
 すなわち、形状計算工程では、形状計算部が、所定期間に含まれるいずれかの時刻が与えられると、当該時刻に対応付けられるキャラクタの形状を計算する。
 そして、決定工程では、決定部が、所定期間の先頭から末尾までを等間隔に区切る区切り時刻のそれぞれに対応付けられる生成時刻を決定する。
 また、生成工程では、生成部が、区切り時刻のそれぞれに対応付けられる生成時刻を形状計算部に与えて計算させ、当該計算されたキャラクタの形状から当該区切り時刻において表示すべきキャラクタの画像を生成する。
 ここで、区切り時刻のうち先頭の区切り時刻と、当該先頭の区切り時刻に対応付けられる生成時刻と、が、いずれも所定期間の先頭の時刻と等しくなるようにする。また、区切り時刻のうち末尾の区切り時刻と、当該末尾の区切り時刻に対応付けられる生成時刻と、が、いずれも所定期間の末尾の時刻と等しくなるようにする。さらに、区切り時刻を時間の経過順に並べ、その順序で当該区切り時刻に対応付けられる生成時刻を並べると、時間の経過順となるようにする。
 本発明の他の観点に係る情報記録媒体は、コンピュータを、
 所定期間に含まれるいずれかの時刻が与えられると、当該時刻に対応付けられるキャラクタの形状を計算する形状計算部、
 所定期間の先頭から末尾までを等間隔に区切る区切り時刻のそれぞれに対応付けられる生成時刻を決定する決定部、
 区切り時刻のそれぞれに対応付けられる生成時刻を形状計算部に与えて計算させ、当該計算されたキャラクタの形状から当該区切り時刻において表示すべきキャラクタの画像を生成する生成部
 として機能させ、
 区切り時刻のうち先頭の区切り時刻と、当該先頭の区切り時刻に対応付けられる生成時刻と、は、いずれも所定期間の先頭の時刻に等しく、
 区切り時刻のうち末尾の区切り時刻と、当該末尾の区切り時刻に対応付けられる生成時刻と、は、いずれも所定期間の末尾の時刻に等しく、
 区切り時刻を時間の経過順に並べ、その順序で当該区切り時刻に対応付けられる生成時刻を並べると、時間の経過順となる
 ように機能させる。
 本発明によれば、コンピュータを上述のように動作する動画像生成装置もしくはゲーム装置として機能させることができる。
 本発明の他の観点に係るプログラムは、コンピュータを、
 所定期間に含まれるいずれかの時刻が与えられると、当該時刻に対応付けられるキャラクタの形状を計算する形状計算部、
 所定期間の先頭から末尾までを等間隔に区切る区切り時刻のそれぞれに対応付けられる生成時刻を決定する決定部、
 区切り時刻のそれぞれに対応付けられる生成時刻を形状計算部に与えて計算させ、当該計算されたキャラクタの形状から当該区切り時刻において表示すべきキャラクタの画像を生成する生成部
 として機能させ、
 区切り時刻のうち先頭の区切り時刻と、当該先頭の区切り時刻に対応付けられる生成時刻と、は、いずれも所定期間の先頭の時刻に等しく、
 区切り時刻のうち末尾の区切り時刻と、当該末尾の区切り時刻に対応付けられる生成時刻と、は、いずれも所定期間の末尾の時刻に等しく、
 区切り時刻を時間の経過順に並べ、その順序で当該区切り時刻に対応付けられる生成時刻を並べると、時間の経過順となる
 ことを特徴とする。
 本発明によれば、コンピュータを上述のように動作する動画像生成装置もしくはゲーム装置として機能させることができる。
 本発明のプログラムは、コンパクトディスク、フレキシブルディスク、ハードディスク、光磁気ディスク、ディジタルビデオディスク、磁気テープ、半導体メモリ等のコンピュータ読取可能な情報記録媒体に記録することができる。上記プログラムは、プログラムが実行されるコンピュータとは独立して、コンピュータ通信網を介して配布・販売することができる。また、上記情報記録媒体は、コンピュータとは独立して配布・販売することができる。
 本発明によれば、キャラクタを適切に表示するのに好適な動画像生成装置、ゲーム装置、動画像生成方法、情報記録媒体、ならびに、プログラムを提供することができる。
第1~3の実施形態に係るゲーム装置が実現される典型的な情報処理装置の概要構成を示す模式図である。 第1の実施形態に係る動画像生成装置の構成を示すブロック図である。 第1~3の実施形態に係るゲーム装置の構成を示すブロック図である。 第1~3の実施形態に係るゲーム装置の表示画面を説明するための図である。 RAMに記憶されるデータの様子を示す説明図である。 第1の実施形態に係るゲーム装置により決定される生成時刻を説明するための図である。 各キャラクタの動作を説明するための第1の図である。 各キャラクタの動作を説明するための第2の図である。 第1~3の実施形態に係るゲーム装置が実行するキャラクタ表示制御処理を示すフローチャートである。 第1の実施形態に係るゲーム装置が実行する生成時刻決定処理を示すフローチャートである。 第2の実施形態に係るゲーム装置により決定される生成時刻を説明するための図である。 第2の実施形態に係るゲーム装置が実行する生成時刻決定処理を示すフローチャートである。 第3の実施形態に係る動画像生成装置の構成を示すブロック図である。 第3の実施形態に係るゲーム装置により決定される生成時刻を説明するための図である。 第3の実施形態に係るゲーム装置が実行する生成時刻決定処理を示すフローチャートである。
 以下に本発明の実施形態を説明する。以下では、理解を容易にするため、ゲーム専用の情報処理装置に本発明が適用される実施形態を説明するが、各種のコンピュータ、PDA(Personal Data Assistants)、携帯電話などの情報処理装置においても同様に本発明を適用することができる。すなわち、以下に説明する実施形態は説明のためのものであり、本願発明の範囲を制限するものではない。したがって、当業者であればこれらの各要素もしくは全要素をこれと均等なものに置換した実施形態を採用することが可能であるが、これらの実施形態も本発明の範囲に含まれる。
(第1の実施形態)
(情報処理装置の説明)
 図1は、本発明の第1の実施形態に係るゲーム装置が実現される典型的な情報処理装置の概要構成を示す模式図である。本実施形態に係るゲーム装置は動画像生成装置としての機能を備える。当該ゲーム装置は、プレイヤーによるゲームのプレイ中に所定のキャラクタをモニターに表示する。
 情報処理装置100は、CPU(Central Processing Unit)101と、ROM(Read Only Memory)102と、RAM(Random Access Memory)103と、インターフェース104と、マット型コントローラ105と、外部メモリ106と、画像処理部107と、DVD(Digital Versatile Disk)-ROMドライブ108と、NIC(Network Interface Card)109と、音声処理部110と、RTC(Real Time Clock)111と、モニター112と、を備える。
 まず、ゲーム用のプログラムおよびデータを記憶したDVD-ROMがDVD-ROMドライブ108に装着される。次いで、情報処理装置100の電源が投入される。電源の投入により、プログラムが実行される。プログラムの実行により、本実施形態のゲーム装置が実現される。
 CPU 101は、情報処理装置100全体の動作を制御する。また、CPU 101は、各構成要素と接続され、制御信号やデータをやりとりする。CPU 101は、各構成要素から各種のデータを取得する。そして、CPU 101は、当該各種のデータを種々の演算により加工して各構成要素にデータや制御信号として与える。CPU 101においては、各種のデータは一旦CPU 101が備えるキャッシュに格納される。当該各種のデータは、さらにCPU 101が備えるレジスタに取得されてから各種の演算が施される。
 ROM 102には、電源投入直後に実行されるIPL(Initial Program Loader)が記録されている。IPLの実行により、DVD-ROMに記録されたプログラムはRAM 103に読み出される。また、IPLの実行により、CPU 101によるプログラムの実行が開始される。情報処理装置100全体の動作制御には、オペレーティングシステムのプログラムが必要となる。ROM 102には、オペレーティングシステムのプログラムや、各種のデータが記録される。
 RAM 103は、データやプログラムを一時的に記憶するためのものである。RAM 103には、DVD-ROMから読み出したプログラムやデータ、その他ゲームの進行や通信に必要なデータが保持される。RAM 103には、情報処理装置100に接続された各種の機器と送受信する種々の情報も、一時的に格納される。
 マット型コントローラ105は、インターフェース104を介して接続される。マット型コントローラ105は、プレイヤーによるゲーム実行の際の操作入力を受け付ける。マット型コントローラ105の所定領域には、“左”、“下”、“上”、“右”を示すボタンが配置されている。各ボタンは、指示入力をプレイヤーから受け付ける。プレイヤーは、各ボタンを任意のタイミングで押圧することができる。なお、CPU 101は、ボタン毎に、プレイヤーによって押圧されているか否かを判別する。
 本実施形態では、マット型コントローラ105は4個のボタンを備えているものとして説明する。しかしながら、ボタンの数は4個に限定されず、3個以下あるいは5個以上でもよい。また、マット型コントローラ105は、床面に配置する形状に限られない。マット型コントローラ105は、手に持って操作されるいわゆるタッチパッドの形状や、手で把持される形状であってもよい。
 外部メモリ106は、インターフェース104を介して着脱自在に接続される。外部メモリ106には、ゲームの進行状態を示すデータなどが書き換え可能に記憶される。プレイヤーにより、例えば、マット型コントローラ105を介した指示入力が行われた際に、これらのデータを、適宜外部メモリ106に記録してもよい。
 DVD-ROMは、DVD-ROMドライブ108に装着される。DVD-ROMには、ゲームを実現するためのプログラムが記録されている。また、DVD-ROMには、ゲームに付随する画像データや音声データも記録されている。CPU 101の制御によって、DVD-ROMドライブ108は、これに装着されたDVD-ROMに対する読み出し処理を行う。読み出し処理により、必要なプログラムやデータは読み出され、RAM 103等に一時的に記憶される。
 画像処理部107は、DVD-ROMから読み出されたデータをCPU 101や、画像処理部107が備える画像演算プロセッサ(図示せず)によって加工処理する。次いで、画像処理部107は、加工処理されたデータを、備えているフレームメモリ(図示せず)に記録する。フレームメモリに記録された画像情報は、所定の同期タイミングでビデオ信号に変換される。その後、変換された画像情報は、画像処理部107に接続されたモニター112へ出力される。これにより、各種の画像表示が可能となる。
 画像演算プロセッサは、各種の演算を高速に実行できる。当該演算は、2次元の画像の重ね合わせ演算やαブレンディング等の透過演算、各種の飽和演算等であってもよい。
 描画の対象であるポリゴンは、仮想3次元空間に配置される。ポリゴンの情報には、各種のテクスチャ情報が付加されている。ポリゴンの情報を、Zバッファ法によりレンダリングして、レンダリング画像を得る演算の高速実行も可能である。なお、レンダリング画像は、所定の視点位置からポリゴンを俯瞰した画像である。光源は、点光源や平行光源、円錐光源などであってもよい。特に、このような(正)光源によってポリゴンが照らされる度合を計算する機能が、ライブラリ化もしくはハードウェア化されている。従って、画像演算プロセッサは、高速に計算を行うことができる。
 さらに、CPU 101と画像演算プロセッサとが協調動作することにより、文字列を描画することが可能である。フォント情報は、文字の形状を定義する。当該フォント情報に基づいて、文字列は、2次元画像としてフレームメモリへ描画されたり、各ポリゴン表面へ描画されたりする。当該フォント情報は、ROM 102に記録されている。しかしながら、DVD-ROMに記録された専用のフォント情報を利用することも可能である。
 NIC 109は、情報処理装置100をインターネット等のコンピュータ通信網(図示せず)に接続するためのものである。NIC 109は、インターネット接続機器と、CPU 101との仲立ちを行うインターフェース(図示せず)である。当該インターネット接続機器は、LAN(Local Area Network)を構成する際に用いられる10BASE-T/100BASE-T規格にしたがうものや、電話回線を用いてインターネットに接続するためのアナログモデム、ISDN(Integraged Services Digital Network)モデム、ADSL(Asymmetric Digital Subscriber Line Modem)モデム、ケーブルテレビジョン回線を用いてインターネットに接続するためのケーブルモデム等であってもよい。
 音声処理部110は、DVD-ROMから読み出した音声データをアナログ音声信号に変換する。次いで、音声処理部110は、接続されたスピーカ(図示せず)から音声を出力させる。また、音声処理部110は、CPU 101の制御の下、ゲームの進行中に発生させるべき効果音や楽曲データを生成する。音声処理部110は、たとえば、BGMやカラオケとして再生される楽曲の音や、プレイヤーのボタン操作に合わせて再生される効果音などを変換する。さらに、音声処理部110は、ゲームの進行に対応した音声をスピーカから出力させる。
 RTC 111は、水晶振動子や発振回路などを備える計時用のデバイスである。RTC 111は、内蔵電池から電源を供給され、情報処理装置100の電源がオフのときでも動作し続ける。
 モニター112は、画像処理部107から供給されたビデオ信号に従って画像を表示する。モニター112は、例えば、液晶ディスプレイ、プラズマディスプレイ、CRTなどにより構成される。
 このほか、情報処理装置100は、ハードディスク等の大容量外部記憶装置を用いて、ROM 102、RAM 103、外部メモリ106、DVD-ROMドライブ108に装着されるDVD-ROM等と同じ機能を果たすように構成してもよい。
(動画像生成装置の説明)
 次に、本発明の実施形態に係る動画像生成装置の機能について、図面を参照して説明する。なお、本明細書においては、早い時刻ほど値が小さいものとして不等号を使用する。まず、図2及び図3を参照して、本発明の実施形態に係る動画像生成装置、ゲーム装置の構成を説明する。図2は、本発明の最小限の構成を示す図である。図3は、本発明の一般的な構成を示す図である。
 図2に示すように、動画像生成装置600は、形状計算部201と、決定部202と、生成部203と、を備える。
 形状計算部201は、キャラクタの各時刻における形状を計算する。キャラクタは、仮想空間上で、所定期間内に所定の振り付けを行う。ここで、所定期間の先頭の時刻を時刻B、所定期間の末尾の時刻を時刻E、所定期間に含まれるいずれかの時刻を時刻tとする。具体的には、形状計算部201は、時刻tが与えられると、当該時刻tに対応付けられるキャラクタの形状を計算する。なお、時刻tは、時刻Bから時刻Eまでの所定期間に含まれる。形状計算部201は、例えば、CPU 101などにより構成される。
 決定部202は、区切り時刻のそれぞれに対応付けられる生成時刻を決定する。なお、区切り時刻は、所定期間の先頭から末尾までを等間隔に区切ることにより得られる。決定部202は、具体的には、Nを自然数として、区切り時刻B=D[0],D[1],…,D[N]=Eのそれぞれに対応付けられる生成時刻G[0],G[1],…,G[N]を決定する。ここで、決定部202は、以下の2つの条件を満たすように、生成時刻を決定する。
 (条件1)G[0]=B且つG[N]=E
 (条件2)整数j=0,1,…,N-1のそれぞれと、整数k=j+1,j+2,…,Nのそれぞれと、について、G[j]≦G[k]が成立する。
 B:所定期間の先頭の時刻
 E:所定期間の末尾の時刻
 N:定数(自然数)
 j:0からNまでの整数
 k:整数
 決定部202は、例えば、乱数を発生させて生成時刻を決定する。決定部202は、例えば、CPU 101などにより構成される。
 生成部203は、区切り時刻のそれぞれに対応付けられる生成時刻を形状計算部201に与えてキャラクタの形状を計算させる。次いで、生成部203は、当該計算されたキャラクタの形状から当該区切り時刻において表示すべきキャラクタの画像を生成する。つまり、生成部203は、整数i=0,1,…,Nのそれぞれについて、区切り時刻D[i]に対応付けられる生成時刻G[i]を形状計算部201に与えて計算させる。そして、生成部203は、計算されたキャラクタの形状から当該区切り時刻D[i]において表示されるキャラクタの画像を生成する。生成部203は、複数のキャラクタの画像を生成する場合、キャラクタ毎の生成時刻を決定部202に決定させる。次いで、生成部203は、当該区切り時刻に対応付けられるキャラクタ毎の生成時刻を形状計算部201に与える。形状計算部201は、当該生成時刻における模範キャラクタの形状に基づき、当該区切り時刻における各キャラクタの形状を計算する。なお、模範キャラクタは、模範的な速さで楽曲のリズムに合った振り付けに従ったモーションをとるキャラクタである。生成部203は、計算されたキャラクタ毎の形状から各区切り時刻において表示される各キャラクタの画像を生成する。生成部203は、生成した画像を、例えば、当該画像を示すビデオ信号として出力する。生成部203は、例えば、CPU 101、画像処理部107、RTC 111などにより構成される。
(ゲーム装置の説明)
 次に、本発明の実施形態に係るゲーム装置の機能について、図面を参照して説明する。まず、図3を参照して、本発明の実施形態に係るゲーム装置200の構成を説明する。
 図3に示すように、ゲーム装置200は、形状計算部201と、決定部202と、生成部203と、受付部204と、判定部205と、表示部206と、を備える。
 形状計算部201は、動画像生成装置600における形状計算部201と同様であるため説明を省略する。
 決定部202は、動画像生成装置600における決定部202と同様であるため説明を省略する。
 生成部203は、動画像生成装置600における生成部203と同様であるため説明を省略する。
 受付部204は、プレイヤーからの指示入力(操作入力)を受け付ける。受付部204は、例えば、CPU 101、インターフェース104ならびにマット型コントローラ105から構成される。
 判定部205は、受付部204により受け付けられた指示入力に基づいて、プレイヤーの成績を判定する。判定部205は、例えば、CPU 101により構成される。
 表示部206は、生成部203により生成された画像を表示する。具体的には、表示部206は、生成部203から供給されたビデオ信号により表現される画像を表示する。表示部206は、例えば、モニター112により構成される。
 ここで、ゲーム装置200の動作の一例について簡単に説明する。
 まず、生成部203は、区切り時刻になる前に当該区切り時刻に対応づけられる生成時刻を決定部202に決定させる。決定部202は、判定部205により判定されたプレイヤーの成績に応じて、区切り時刻に対応付ける生成時刻を決定する。すると、生成部203は、決定された生成時刻を示す信号を形状計算部201に供給する。そして、形状計算部201は、供給された生成時刻に対応するキャラクタの形状を計算する。ここで、生成部203は、形状計算部201により計算されたキャラクタの形状に基づいて、区切り時刻において表示すべきキャラクタの画像を生成する。そして、生成部203は、区切り時刻になると、生成したキャラクタの画像を表示部206に供給する。表示部206は、供給された画像を表示する。
 次に、本実施形態に係るゲーム装置200の表示画面について、図4を参照して説明する。なお、ゲーム装置200は、ダンスゲームを実行するゲーム装置に適用されているものとして説明する。
 ゲーム装置200は、ダンスゲームに必要な種々の情報を表示する。例えば、ゲーム装置200は、ゲーム開始前に、楽曲リスト等を表示し、プレイヤーに所望の楽曲を選択するように促す。プレイヤーによる楽曲の選択後、ゲームが開始される。ゲームが開始されると、ゲーム装置200は、例えば、図4に示すようなゲーム画面を表示する。
 このゲーム画面において、静止マーク301L、301D、301U、301Rは、踏み動作のタイミングをプレイヤーに示すための固定画像である。以下、必要に応じて静止マーク301L、301D、301U、301Rを総称して静止マーク301という。一方、標的302L、302D、302U、302Rは、課題となる踏み動作をプレイヤーに示すための画像である。以下、必要に応じて標的302L、302D、302U、302Rを総称して標的302という。標的302は、演奏される楽曲に合わせて、例えば、画面の下方から上方へスクロール表示される。そして、標的302は静止マーク301に到達する。すなわち、標的302は静止マーク301の同じ画像と重なる。この際に要求される踏み動作がプレイヤーにより行われると、得点が得られる。
 ここで、本実施形態では、このような処理を実現するためのデータとして、課題データと、楽曲データ列と、音声データ列と、を用意しておく。これらのデータは、例えば、DVD-ROMドライブ108に装着されるDVDにあらかじめ記憶されている。また、これらのデータは、必要に応じてRAM 103に読み出される。
 課題データについては、図5を参照して詳細に説明する。図5は、RAM 103の課題データ領域に読み出された課題データの様子を示す模式図である。
 課題データ400は、音楽の分野における楽譜に相当するデータである。本実施形態では、課題データ400は、複数のレコード402からなる表401と、閾時間411(この値をdとする。)と、終了時間421(この値をEとする。)と、を含むデータである。各レコード402には、課題時間403(この値をTとする。)と、操作入力の種類404と、標的の状態405と、を記録する領域がある。各レコード402は、音符に相当する。課題時間403は、ゲーム開始から標的302が静止マーク301に到達するまでの時間である。すなわち、課題時間403は、ゲーム開始から、プレイヤーが当該標的302について操作入力を行うべき時刻までの経過時間である。すなわち、課題時間403は、ゲーム開始から、プレイヤーがボタンを踏むべき時刻までの経過時間である。課題データ400は、標的302の数だけ課題時間403を含む。操作入力の種類404は、課題時間403に対応付けられているデータである。すなわち、操作入力の種類404は、ゲーム開始から当該操作入力の種類404に対応付けられる課題時間403が経過したときに、プレイヤーが踏むべきマット型コントローラ105のボタンを示すデータである。標的の状態405は、標的302の状態を数値により表す。標的302の状態は、例えば、「未処理」が「0」、「成功」が「1」、「失敗」が「2」により表される。閾時間411は、操作入力の成否の判定に際し用いられる値である。すなわち、ゲーム開始からプレイヤーがボタンを踏むまでの経過時間と、課題時間403との差の許容値を示す時間である。当該経過時間と課題時間403の差が閾時間411以下の場合、操作入力は成功とみなされる。終了時間421は、ゲームが開始されてからゲームが終了するまでの時間を示すデータである。
 課題時間403、閾時間411、終了時間421などは、msなどを単位として数値で表現されていてもよい。また、これらの時間は、画面の表示更新レートである垂直同期割込の周期(典型的には1/60秒)を単位とした数値で表現されていてもよい。楽曲データ列は、BGMとして再生される楽曲を表現するデータ列である。音声データ列は、出力される音声を表現するデータ列である。音声は、プレイヤーがマット型コントローラ105のボタンを踏んだときに出力される。
 また、ゲーム画面においては、3人のキャラクタがバックダンサーとして表示される。すなわち、第1キャラクタ303、第2キャラクタ304、ならびに、第3キャラクタ305が表示される。各キャラクタは、振り付けに応じたモーションをとる。なお、振り付けは、楽曲のリズムに合っており、楽曲のシーン毎にあらかじめ定められている。ここで、各キャラクタがとるモーションは、プレイヤーの成績が良ければ良いほど互いに近いモーションとなる。以下、図6乃至8を参照してキャラクタがとるモーションについて説明する。
 まず、図6を参照して、区切り時刻に対応付けられる生成時刻を決定する手法について説明する。なお、区切り時刻は、所定期間を等間隔に区切るそれぞれの時刻である。また、生成時刻は、区切り時刻のそれぞれに対応付けられて決定される時刻である。生成時刻は、キャラクタ毎に生成される。さらに、所定期間は、例えば、1シーンに相当する期間である。
 以下の説明では、Nを任意の自然数とする。区切り時刻をD[0],D[1],…,D[N]とする。第1キャラクタ303について決定される生成時刻をG1[0],G1[1],…,G1[N]とする。第2キャラクタ304について決定される生成時刻をG2[0],G2[1],…,G2[N]とする。第3キャラクタ305について決定される生成時刻をG3[0],G3[1],…,G3[N]とする。所定期間をTp、所定期間の先頭の時刻をB、所定期間の末尾の時刻をEとする。時系列上で隣接する区切り時刻間の間隔(以下、「区切り時間」という。)をTsとする。区切り時間は、例えば、垂直同期割込の周期(典型的には1/60秒)とすることができる。
 図6に示す例では、区切り時刻は、D[0]=B,D[1],…,D[6]である。すなわち、区切り時刻は、所定期間を6つの期間に等間隔に区切る7つの時刻である。図6には、所定期間が6つの期間に区切られる例を示している。しかしながら、一般的には所定期間はより多くの期間に区切られる。例えば、所定期間が5秒であり、区切り時間が1/60秒である場合に、所定期間は300の区間に区切られる。また、この場合、区切り時刻の個数は301個となる。
 ここで、各区切り時刻に対応付けられる生成時刻は、プレイヤーの成績に応じて決定される。各区切り時刻に対応付けられる生成時刻を決定する手法は任意である。しかしながら、以下に示す(A)~(C)の制約が満たされる必要がある。
(A)区切り時刻のうち先頭の区切り時刻と、当該先頭の区切り時刻に対応付けられる生成時刻と、は、いずれも所定期間の先頭の時刻に等しい。
(B)区切り時刻のうち末尾の区切り時刻と、当該末尾の区切り時刻に対応付けられる生成時刻と、は、いずれも所定期間の末尾の時刻に等しい。
(C)区切り時刻を時間の経過順に並べ、その順序で当該区切り時刻に対応付けられる生成時刻を並べると、時間の経過順となる。
 図6に示す例では、(A)の制約を満たすため、D[0]=G1[0]=G2[0]=G3[0]=Bとする。また、(B)の制約を満たすため、D[6]=G1[6]=G2[6]=G3[6]=Eとする。さらに、(C)の制約を満たすため、以下の関係が成り立つ。
G1[0]≦G1[1]≦G1[2]≦G1[3]≦G1[4]≦G1[5]≦G1[6]
G2[0]≦G2[1]≦G2[2]≦G2[3]≦G2[4]≦G2[5]≦G2[6]
G3[0]≦G3[1]≦G3[2]≦G3[3]≦G3[4]≦G3[5]≦G3[6]
 生成時刻は、キャラクタ毎に決定される。まず、第1キャラクタ303について決定される生成時刻、すなわちG1[0],G1[1],…,G1[6]について説明する。
 本実施形態においては、乱数を用いて、時刻の早いほうから順番にG1[0],G1[1],…,G1[6]が決定される。まず、G1[0]=D[0]に決定される。次に、乱数を用いてG1[1]~G1[5]が決定される。具体的には、まず、プレイヤーの成績に応じて乱数の発生範囲が決定される。ここで、発生させる乱数をR、乱数の振れ幅をRmax(ただし、Rmaxは正の数)とすると、乱数の発生範囲は、-Rmax≦R≦Rmaxとなる。ここで、プレイヤーの成績が良ければ良いほど乱数の振れ幅が小さな値に設定される。なお、乱数は、時間(例えば、ミリ秒)を単位とした数値として扱う。そして、生成時刻の候補が決定される。決定された生成時刻の候補は、区切り時刻から乱数により示される時間だけ経過させた時刻である。決定された生成時刻の候補が上述した(C)の制約を満たさない場合は、再度乱数が取得される。さらに、この場合、生成時刻の候補が再度決定される。決定された生成時刻の候補が上述した(C)の制約を満たすまで、乱数の取得と生成時刻の候補の再決定処理が繰り返される。一方、決定された生成時刻の候補が上述した(C)の制約を満たす場合は、当該生成時刻の候補が生成時刻に設定される。
 例えば、G1[1]については、まず、-Rmax≦R1≦Rmaxの範囲でR1が取得される。次に、D[1]+R1がG1[1]の候補に決定される。ここで、D[1]+R1≧D[0]、D[1]+R1≦D[6]のいずれかが満たされない場合は、再度R1が取得されてD[1]+R1が再度決定される。そして、D[1]+R1≧D[0]、D[1]+R1≦D[6]の両方が満たされるまで、R1を取得し、D[1]+R1を決定する処理が繰り返される。一方、D[1]+R1≧D[0]、D[1]+R1≦D[6]の両方が満たされる場合は、D[1]+R1がG1[1]に決定される。
 G1[1]が決定されると、同様の手法によってG1[2]が決定される。すなわち、まず、-Rmax≦R2≦Rmaxの範囲でR2が取得される。次に、D[2]+R2がG1[2]の候補に決定される。ここで、D[2]+R2≧D[1]、D[2]+R2≦D[6]のいずれかが満たされない場合は、再度R2が取得されてD[2]+R2が再度決定される。そして、D[2]+R2≧D[1]、D[2]+R2≦D[6]の両方が満たされるまで、R2の取得及びD[2]+R2の決定処理が繰り返される。一方、D[2]+R2≧D[1]、D[2]+R2≦D[6]の両方が満たされる場合は、D[2]+R2がG1[2]に決定される。
 同様にして、G1[3]~G1[5]が決定される。そして、G1[6]=D[6]に決定される。第2キャラクタ304、ならびに、第3キャラクタ305についても、同様に生成時刻が決定される。このようにして決定される生成時刻は、通常は対応付けられる区切り時刻とは異なる時刻となる。また、生成時刻は、キャラクタ毎に異なる時刻となる。
 次に、図7を参照して、各キャラクタがどのようなモーションをとるかを説明する。図7には、各区切り時刻すなわちD[0]=B,D[1],…,D[6]において、各キャラクタがどのように表示されるかを示している。なお、図7には、各区切り時刻において、模範キャラクタ500がどのように表示されるかについても示している。模範キャラクタ500は、模範的な速さで楽曲のリズムに合った振り付けに従ったモーションをとるキャラクタである。各キャラクタは、区切り時刻と当該区切り時刻に対応付けられる生成時刻とが全て一致する場合に、模範キャラクタ500と同じ模範的な速さでモーションをとる。
 図7に示す例では、模範キャラクタ500は、所定期間において、以下のモーションをとる。
 模範キャラクタ500は、D[0]で起立する。模範キャラクタ500は、D[1]で向かって左側の手を挙げる。模範キャラクタ500は、D[2]で向かって右側の手を挙げる。模範キャラクタ500は、D[3]で向かって左側の足を挙げる。模範キャラクタ500は、D[4]で向かって左側の手を下げる。模範キャラクタ500は、D[5]で向かって右側の手を下げる。模範キャラクタ500は、D[6]で向かって左側の足を下げる。
 上述のように、第1キャラクタ303について決定される生成時刻は、区切り時刻に対応している。当該生成時刻は、当該区切り時刻と異なる時刻に決定される。当該生成時刻を決定する手法は任意である。例えば、乱数発生器が発生する乱数に基づいて生成時刻を決定することができる。具体的には、区切り時刻と当該区切り時刻に対応している生成時刻との差が、当該乱数により示される時間となるように、生成時刻を決定する。ここで、乱数が0の場合は、再度乱数を発生させて乱数が0以外の値になるようにする。これにより、区切り時刻に対応している生成時刻が当該区切り時刻と異なる時刻に決定される。従って、第1キャラクタ303は、模範キャラクタ500とは異なるタイミングで各動作を行うようなモーションをとる。具体的には、第1キャラクタ303は、模範キャラクタ500よりも早いタイミングもしくは遅いタイミングに各モーションをとる。ただし、第1キャラクタ303は、所定期間の先頭の時刻と所定期間の末尾の時刻では、模範キャラクタ500と同じタイミングでモーションをとる。
 同様に、第2キャラクタ304ならびに第3キャラクタ305も、模範キャラクタ500とは異なるタイミングで各モーションをとる。また、生成時刻は、キャラクタ毎に決定される。各キャラクタは、いずれも他のキャラクタとは異なるタイミングで各モーションをとることになる。従って、表示画面に表示される3つのキャラクタは、それぞれが異なるタイミングで各モーションをとる。また、区切り時刻に対応付けられる生成時刻は、プレイヤーの成績が良ければ良いほど、当該区切り時刻に時系列上で近い時刻に決定される。このため、プレイヤーの成績が良ければ良いほど、3つのキャラクタの各モーションをとるタイミングのばらつきが小さくなる。
 ここで、図8を参照して、各キャラクタが各区切り時刻においてどのようなモーションをとるかを説明する。
 例えば、第1キャラクタ303は、D[0]においては、G1[0]=D[0]において模範キャラクタ500がとる動作と同じ動作をとる。そして、第1キャラクタ303は、D[1]においては、G1[1]において模範キャラクタ500がとる動作と同じ動作をとる。なお、G1[1]は、D[1]に対応付けられて決定されている。ここで、G1[1]>D[1]であるため、D[1]の時点では、第1キャラクタ303は、模範キャラクタ500よりも先行した動作をとる。そして、第1キャラクタ303は、D[2]においては、G1[2]において模範キャラクタ500がとる動作と同じ動作をとる。なお、G1[2]は、D[2]に対応付けられて決定されている。ここで、G1[2]>D[2]であるため、D[2]の時点でも、第1キャラクタ303は、模範キャラクタ500よりも先行した動作をとる。
 また、例えば、第2キャラクタ304は、D[0]においては、G2[0]=D[0]において模範キャラクタ500がとる動作と同じ動作をとる。そして、第2キャラクタ304は、D[1]においては、G2[1]において模範キャラクタ500がとる動作と同じ動作をとる。なお、G2[1]は、D[1]に対応付けられて決定されている。ここで、G2[1]>D[1]であるため、D[1]の時点では、第2キャラクタ304は、模範キャラクタ500よりも先行した動作をとる。そして、第2キャラクタ304は、D[2]においては、G2[2]において模範キャラクタ500がとる動作と同じ動作をとる。なお、G2[2]は、D[2]に対応付けられて決定されている。ここで、G2[2]<D[2]であるため、D[2]の時点では、第2キャラクタ304は、模範キャラクタ500よりも遅れた動作をとる。
 以上説明したように、各キャラクタは、各区切り時刻において、模範キャラクタならびに他のキャラクタと異なる動作をとる。
 次に、本実施形態に係るゲーム装置200の動作について、図9ならびに図10を参照して説明する。図9は、本実施形態に係るゲーム装置200が実行するキャラクタ表示制御処理を示すフローチャートである。また、図10は、本実施形態に係るゲーム装置200が実行する生成時刻決定処理を示すフローチャートである。
 課題データ400の初期値は、DVD-ROMドライブ108に装着されるDVD-ROMに記憶されている。ゲームが開始されると、CPU 101は、課題データ400を、DVD-ROMからRAM 103の所定の課題データ領域に読み出して初期化する(ステップS101)。また、CPU 101は、ゲーム開始後の最初のシーンにおける区切り時刻に対応付けられる生成時刻を、当該区切り時刻に決定する。
 次に、CPU 101は、音声処理部110に、指示を出す。音声処理部110は、指示に従い、当該課題データ400に対応付けられたBGMの再生を開始する(ステップS102)。BGMの音声データ列は、DVD-ROM内に、PCM(Pulse Code Modulation)形式、MP3(MPEG Layer 3)形式、Ogg Vorbis形式、MIDI(Musical Instrument Digital Interface)形式等で記録されている。
 そして、CPU 101は、操作入力の有無を確認する(ステップS103)。具体的には、CPU 101は、マット型コントローラ105の各ボタンの押圧操作の状況を調べる。なお、押圧操作され始めたボタンがある場合、音声処理部110に対して指示を出してもよい。この場合、音声処理部110は、音声データ列の再生を行う。当該音声データ列は、当該ボタンが押圧されたことを示す音声を表現するものである。当該音声データ列としては、上記のような各種の音声データ列を利用することができる。しかしながら、処理の高速化を図るため、あらかじめRAM 103に当該音声データ列を読み出しておくことが望ましい。また、これらの音声データ列の保存形式として、MIDI形式等、データ量が少ない形式を利用することができる。
 次に、CPU 101は、操作入力の判定を行う(ステップS104)。具体的には、CPU 101は、課題時間403と、操作入力の種類404と、閾時間411とに基づいて、判定を行う。CPU 101は、成功した操作入力があるか否かを判定する。また、CPU 101は、失敗した操作入力があるか否かについても判定する。すなわち、CPU 101は、当該区切り時刻(当該垂直同期割り込みがなされた時刻)において押されるべきボタンが押されたかを判定する。また、CPU 101は、当該区切り時刻において押されるべきではないボタンが押されたかを確認する。CPU 101は、成功した操作入力がある場合は、得点を加算する。
 そして、CPU 101は、キャラクタの形状を取得する(ステップS105)。具体的には、CPU 101は、生成時刻に基づき、対応付けられる区切り時刻におけるキャラクタの形状を計算する。当該生成時刻は、ステップS108で決定される。ただし、ゲーム開始後の最初のシーンにおいては、当該生成時刻は、ステップS101で決定された生成時刻(区切り時刻)である。なお、振り付けは、シーン毎にあらかじめ定められている。従って、シーン中の区切り時刻に対応付けられる生成時刻が決定すると、当該区切り時刻におけるキャラクタの形状も定まる。CPU 101は、当該区切り時刻で表示されるキャラクタの形状を、キャラクタ毎に求める。
 次に、CPU 101は、キャラクタを表示する(ステップS106)。具体的には、CPU 101は、画像処理部107を制御して、ステップS105で取得したキャラクタの形状で各キャラクタを表示させるビデオ信号を生成する。また、CPU 101は、当該生成したビデオ信号をモニター112に供給する。
 そして、CPU 101は、現在の区切り時刻が現在のシーンに含まれる最後の区切り時刻か否かを判別する。すなわち、CPU 101は、現在のシーンが終了したか否かを判別する(ステップS107)。CPU 101は、現在のシーンが終了していないと判別すると(ステップS107:NO)、次の区切り時刻まで待機する処理に移行する(ステップS109)。一方、CPU 101は、現在のシーンが終了したと判別すると(ステップS107:YES)、生成時刻決定処理に移行する(ステップS108)。
 生成時刻決定処理については、図10に示すフローチャートを参照して詳細に説明する。
 まず、CPU 101は、現在のシーンにおけるプレイヤーの成績を求める(ステップS201)。上述のように、ステップS104において、操作入力の判定がなされる。典型的には、当該判定の結果に基づいて加算された得点のうち、現在のシーンにおいて加算された得点を取得する。
 次に、CPU 101は、ステップS201において求めたプレイヤーの成績に応じて乱数の発生範囲を設定する(ステップS202)。ここで、乱数の発生範囲は、プレイヤーの成績が良ければ良いほど狭くなるように設定される。
 そして、CPU 101は、第1キャラクタ303、第2キャラクタ304、ならびに、第3キャラクタ305の3つのキャラクタから1つのキャラクタを選択する(ステップS203)。
 次に、CPU 101は、区切り時刻を1つ選択する(ステップS204)。例えば、CPU 101は、早い時刻から順番に区切り時刻を選択する。
 そして、CPU 101は、ステップS204において選択された区切り時刻がシーンの先頭又は末尾の区切り時刻であるか否かを判別する(ステップS205)。CPU 101は、当該区切り時刻がシーンの先頭又は末尾の区切り時刻であると判別した場合(ステップS205:YES)、当該区切り時刻を当該区切り時刻に対応付けられる生成時刻に決定する(ステップS206)。
 CPU 101は、ステップS204において選択された区切り時刻がシーンの先頭又は末尾の区切り時刻のいずれでもないと判別した場合(ステップS205:NO)、ステップS202において設定された範囲において乱数を発生させて乱数を取得する(ステップS207)。
 そして、CPU 101は、乱数の取得(ステップS207)を終了すると、ステップS204において選択された区切り時刻に対応付けられる生成時刻の候補を決定する(ステップS208)。具体的には、CPU 101は、当該区切り時刻から、ステップS207において取得された乱数により示される時間だけ経過させた時刻を、生成時刻の候補に決定する。なお、乱数が負の値である場合は、生成時刻の候補は、区切り時刻よりも早い時刻となる。
 上述のように、ステップS208において、生成時刻の候補が決定される。
 CPU 101は、当該生成時刻の候補が制約条件を満たすか否かを判別する(ステップS209)。CPU 101は、当該生成時刻の候補が制約条件を満たすと判別すると(ステップS209:YES)、当該生成時刻の候補を生成時刻に決定する(ステップS210)。一方、CPU 101は、当該生成時刻の候補が制約条件を満たさないと判別すると(ステップS209:NO)、乱数を取得する処理(ステップS207)に処理を戻す。
 上述のように、ステップS206において、CPU 101は、区切り時刻を生成時刻に決定する処理を行う。また、ステップS210において、CPU 101は、生成時刻の候補を生成時刻に決定する処理を行う。
 CPU 101は、ステップS206における処理、または、ステップS210における処理を終了すると、全ての区切り時刻を選択したか否かを判別する(ステップS211)。CPU 101は、いずれかの区切り時刻を選択していないと判別すると(ステップS211:NO)、区切り時刻を選択する処理(ステップS204)に処理を戻す。一方、CPU 101は、全ての区切り時刻を選択したと判別すると(ステップS211:YES)、全てのキャラクタを選択したか否かを判別する(ステップS212)。CPU 101は、いずれかのキャラクタを選択していないと判別すると(ステップS212:NO)、キャラクタを選択する処理(ステップS203)に処理を戻す。一方、CPU 101は、全てのキャラクタを選択したと判別すると(ステップS212:YES)、生成時刻決定処理を終了する。
 CPU 101は、シーン終了ではないと判別(ステップS107:NO)、または、生成時刻決定処理(ステップS108)を終了すると、次の区切り時刻、すなわち、次の垂直同期まで待機する(ステップS109)。この待機の間に、CPU 101は、ほかの処理を実行しても良い。そして、CPU 101は、ゲーム終了時刻か否かを判別する(ステップS110)。ゲーム終了時刻であるか否かは、ゲーム開始からの経過時間が、課題データ400に含まれるゲーム時間を超えているか否かにより判別することができる。CPU 101は、ゲーム終了時刻であると判別すると(ステップS110:YES)、キャラクタ表示制御処理を終了する。一方、CPU 101は、ゲーム終了時刻ではないと判別すると(ステップS110:NO)、操作入力の有無を確認する処理(ステップS103)に処理を戻す。
 本実施形態に係るゲーム装置200によれば、振り付けに従った動作を実行するトータルの時間を変化させずに、当該動作中の動作の速さをキャラクタ毎に変化させることができる。従って、各キャラクタは、シーン内で完結すべき動作を、シーン内のあるタイミングでは早送り再生し、また、シーン内の別のタイミングではスロー再生することになる。しかしながら、各キャラクタは、シーン内で完結すべき動作を、シーン内で完結するように表示される。なお、早送り再生もしくはスロー再生するタイミングは、キャラクタ毎に異なる。従って、表示される動画像において、各キャラクタは各々の再生速度で振り付けに従った動作を実行する。そして、プレイヤーの成績が良ければ良いほど、各動作を実行するタイミングのばらつきを少なくすることができる。これにより、プレイヤーの成績が良いほど、すなわち、プレイヤーがダンスのステップを上手に踏むほど、バックダンサーとしての各キャラクタは、振り付けに従った各動作を揃って実行するよう表示される。そして、プレイヤーの成績が悪いほど、すなわち、プレイヤーがダンスのステップを下手に踏むほど、バックダンサーとしてのキャラクタは、振り付けに従った各動作をばらばらに実行するように表示される。
(第2の実施形態)
 第1の実施形態では、1つの生成時刻を決定するために、その都度乱数を発生させる例を示した。しかし、本発明によれば、全ての区切り時刻から代表となる区切り時刻(以下「代表時刻」という。)を選択し、代表時刻に対応付ける生成時刻のみ乱数を発生させることにより決定しても良い。そして、代表時刻以外の区切り時刻に対応付ける生成時刻については、代表時刻に対応付けられた生成時刻を補完するように決定しても良い。以下、第2の実施形態に係るゲーム装置200について説明する。しかしながら、第2の実施形態に係るゲーム装置200の構成は、第1の実施形態に係るゲーム装置200の構成と同様であるため説明を省略する。
 まず、図11を参照して、生成時刻を決定する手法について説明する。以下、第1キャラクタ303について生成時刻を決定する手法について説明する。ただし、他のキャラクタについても同様の手法により生成時刻を決定する。図11に示す例では、区切り時刻は、D[0]=B,D[1],…,D[30]=Eである。すなわち、所定期間を30個の期間に区切る31個の時刻である。ここで、第1キャラクタ303についてD[0],D[1],…,D[30]のそれぞれに対応付けられる生成時刻をG1[0],G1[1],…,G1[30]とする。
 ここで、全ての区切り時刻の中から複数の代表時刻を選択する。なお、時系列上で隣接する代表時刻間の間隔が等間隔になるものとする。図11に示す例では、先頭と末尾の区切り時刻を含むように全ての区切り時刻の中から9個おきに代表時刻が選択される。すなわち、選択されたD[0]、D[10]、D[20]、D[30]の4個の区切り時刻が代表時刻である。
 まず、選択された代表時刻であるD[0]、D[10]、D[20]、D[30]のそれぞれに対応付けられる生成時刻が決定される。すなわち、G1[0]、G1[10]、G1[20]、G1[30]が決定される。具体的には、まず、G1[0]=D[0]に決定される。次に、乱数を用いてG1[10]とG1[20]とが決定される。具体的には、まず、プレイヤーの成績に応じて乱数の発生範囲が決定される。ここで、プレイヤーの成績が良ければ良いほど乱数の振れ幅が狭く設定される。ただし、本実施形態では、乱数の振れ幅の設定に際し、乱数を用いて決定された生成時刻が必ず制約条件を満たすものとする。すなわち、プレイヤーの成績が最も悪い場合であっても、所定期間の1/6以下になるように乱数の振れ幅が設定される。そして、代表時刻から乱数により示される時間だけ経過させた時刻が生成時刻に決定される。
 例えば、G1[10]について、-Rmax≦R3≦Rmaxの範囲でR3が取得された場合、D[10]+R3がG1[10]に決定される。同様にして、G1[20]について、-Rmax≦R4≦Rmaxの範囲でR4が取得された場合、D[20]+R4がG1[20]に決定される。
 そして、代表時刻以外の区切り時刻に対応付けられる生成時刻が決定される。代表時刻以外の区切り時刻に対応付けられる生成時刻は、代表時刻に対応付けられる生成時刻間を等間隔に区切る時刻に決定される。具体的には、G1[0]からG1[10]までの時間を10等分する時刻のそれぞれが、G1[1]~G1[9]に設定される。同様に、G1[10]からG1[20]までの時間を10等分する時刻のそれぞれが、G1[11]からG1[19]に設定される。同様に、G1[20]からG1[30]までの時間を10等分する時刻のそれぞれが、G1[21]からG1[29]に設定される。
 次に、本実施形態に係るゲーム装置200の動作について説明する。なお、本実施形態に係るゲーム装置200が実行するキャラクタ表示制御処理は、生成時刻決定処理を除き、第1の実施形態と同様である。従って、以下では、図12を参照して、本実施形態に係るゲーム装置200が実行する生成時刻決定処理について説明する。
 まず、CPU 101は、現在のシーンにおけるプレイヤーの成績を求める(ステップS301)。次に、CPU 101は、ステップS301において求めたプレイヤーの成績に応じて乱数の発生範囲を設定する(ステップS302)。そして、CPU 101は、第1キャラクタ303、第2キャラクタ304、ならびに、第3キャラクタ305の3つのキャラクタから1つのキャラクタを選択する(ステップS303)。
 次に、CPU 101は、区切り時刻の代表時刻を1つ選択する(ステップS304)。本実施形態では、CPU 101は、早い時刻から順番に代表時刻を選択する。
 そして、CPU 101は、ステップS304において選択された代表時刻がシーンの先頭又は末尾の区切り時刻か否かを判別する(ステップS305)。CPU 101は、ステップS304において選択された代表時刻がシーンの先頭又は末尾の区切り時刻であると判別した場合(ステップS305:YES)、当該代表時刻を当該代表時刻である区切り時刻に対応付けられる生成時刻に決定する(ステップS306)。
 一方、CPU 101は、ステップS304において選択された代表時刻がシーンの先頭又は末尾の区切り時刻のいずれでもないと判別した場合(ステップS305:NO)、ステップS302において設定された範囲において乱数を発生させて乱数を取得する(ステップS307)。
 上述のように、ステップS304において、代表時刻である区切り時刻が選択される。また、ステップS307において、乱数が取得される。そして、CPU 101は、乱数の取得(ステップS307)を終了すると、当該区切り時刻に対応付けられる生成時刻を決定する(ステップS308)。具体的には、CPU 101は、当該区切り時刻から、当該乱数により示される時間だけ経過させた時刻を、当該区切り時刻に対応付けられる生成時刻に決定する。
 CPU 101は、代表時刻を生成時刻に決定する処理(ステップS306)、または、生成時刻を決定する処理(ステップS308)を終了すると、全ての代表時刻を選択したか否かを判別する(ステップS309)。CPU 101は、いずれかの代表時刻を選択していないと判別すると(ステップS309:NO)、区切り時刻を選択する処理(ステップS304)に処理を戻す。一方、CPU 101は、全ての代表時刻を選択したと判別すると(ステップS309:YES)、代表時刻間の区切り時刻に対応付ける生成時刻を決定する(ステップS310)。
 具体的には、まず、CPU 101は、代表時刻を時系列に並べたときに隣接する2つの代表時刻のそれぞれに対応付けられる生成時刻間の時間を等間隔に区切る。すなわち、CPU 101は、当該生成時刻間を、(当該隣接する2つの代表時刻間に存在する区切り時刻の数+1)個に等間隔に区切る時刻を求める。そして、CPU 101は、当該等間隔に区切る時刻のそれぞれを、当該隣接する2つの代表時刻間に存在する区切り時刻のそれぞれに対応付けられる生成時刻として決定する。CPU 101は、代表時刻間の区切り時刻に対応付けられる生成時刻を決定する処理(ステップS310)を終了すると、全てのキャラクタを選択したか否かを判別する(ステップS311)。CPU 101は、いずれかのキャラクタを選択していないと判別すると(ステップS311:NO)、キャラクタを選択する処理(ステップS303)に処理を戻す。一方、CPU 101は、全てのキャラクタを選択したと判別すると(ステップS311:YES)、生成時刻決定処理を終了する。
 本実施形態に係るゲーム装置200によれば、代表時刻についてのみ乱数を用いて生成時刻が決定される。また、代表時刻以外の区切り時刻については、代表時刻に対応付けられた生成時刻の間を補完するように生成時刻が決定される。これにより、表示されるキャラクタのモーションがスムーズになる。また、かかる構成によれば乱数の発生範囲をある程度大きくしても制約条件が満たされることになる。さらに、制約条件を満たすか否かを判別し、再度乱数を発生させる処理をなくすことができるため、処理時間の短縮が期待できる。
(第3の実施形態)
 第1、2の実施形態では、乱数を用いて生成時刻を決定していた。しかしながら、区切り時刻と当該区切り時刻に対応付けられる生成時刻の当該区切り時刻からのシフト量とが対応付けられたテーブルをあらかじめ用意してもよい。そして、当該テーブルを用いて生成時刻を決定するようにしてもよい。以下、図12を参照して、第3の実施形態に係る動画像生成装置600について説明する。
(動画像生成装置の説明)
 記憶部610は、区切り時刻と、当該区切り時刻に対応付けられる生成時刻と、の差の基準値、すなわちシフト量を区切り時刻毎に記憶する。記憶部610は、外部メモリ106や、DVD-ROMドライブ108に装着されるDVD-ROMなどにより実現される。
 形状計算部201は、図2の構成における形状計算部201と同様であるため説明を省略する。
 決定部202は、区切り時刻と、当該区切り時刻に対応付けられる生成時刻と、の差を決定する。決定部202は、記憶部610に記憶されている区切り時刻毎のシフト量に基づいて、この差を決定する。具体的には、区切り時刻D[i]に対応するシフト量S[i]と、プレイヤーの成績に応じたシフト量のゲインgとの積に基づき、生成時刻G[i]は、G[i]=D[i]+S[i]*gの関係を満たすよう決定される。
 生成部203は、図2の構成における生成部203と同様であるため説明を省略する。
(ゲーム装置の説明)
 第3の実施形態に係るゲーム装置200の構成は、第1ならびに第2の実施形態に係るゲーム装置200の構成と同様であるため説明を省略する。
 次に、本実施形態に係るゲーム装置200の動作について説明する。なお、本実施形態に係るゲーム装置200が実行するキャラクタ表示制御処理は、生成時刻決定処理を除き、第1ならびに第2の実施形態のものと同様である。従って、図14を参照して、生成時刻を決定する手法の詳細について説明する。以下、第1キャラクタ303について生成時刻を決定する手法について説明する。ただし、他のキャラクタについても同様の手法により生成時刻を決定する。図14に示す例では、区切り時刻は、D[0]=B,D[1],…,D[8]=Eであり、所定期間を8個の期間に区切る9個の時刻である。ここで、第1キャラクタ303についてD[0],D[1],…,D[8]のそれぞれに対応付けられる生成時刻をG1[0],G1[1],…,G1[8]とする。
 ここで、テーブルにおいて、区切り時刻と当該区切り時刻に対応付けられる生成時刻の当該区切り時刻からのシフト量とが対応している。当該テーブルは、外部メモリ106や、DVD-ROMドライブ108に装着されたDVD-ROMなどにあらかじめ記憶されている。当該テーブルに基づいて、生成時刻が決定される。なお、シフト量は、区切り時刻と当該区切り時刻に対応付けられる生成時刻との差の時間を示す量である。このテーブルにおいて、先頭の区切り時刻に対応付けられるシフト量と末尾の区切り時刻に対応付けられているシフト量とは、ともに0である。また、区切り時刻の変化に従ってシフト量が徐々に変化するように、区切り時刻とシフト量とが対応付けられていることが望ましい。このテーブルは、区切り時刻を変数として当該区切り時刻に対応付けられるシフト量が所定の関数の値になるように、当該変数の離散値と当該関数の値の離散値とを対応付けて記憶するものでもよい。図14を参照して、区切り時刻に対応付けられるシフト量が当該区切り時刻を変数とする正弦関数の値となるように区切り時刻にシフト量が対応付けられたテーブルに基づいて生成時刻を決定する例について説明する。
 図14に示す例では、D[0]に対応付けられるG1[0]のシフト量とD[8]に対応付けられるG1[8]のシフト量とは0である。ここで、Smaxは正弦関数の振幅とする。なお、D[2]に対応付けられるG1[2]のシフト量が最大(Smax)であり、D[6]に対応付けられるG1[6]のシフト量が最小(-Smax)である。
 ここで、プレイヤーの成績に応じてシフト量のゲインが決定される。具体的には、プレイヤーの成績が良ければ良いほどゲインは小さな値に設定される。そして、区切り時刻から、当該区切り時刻に対応付けられるシフト量にゲインを乗じた値だけ経過させた時刻(シフトさせた時刻)を生成時刻に決定する。なお、シフト量とゲインとは、上述した制約を満たすように設定される。
 また、ゲインは各キャラクタで共通のものを用いてもよいが、テーブルはキャラクタ毎に別々のものを用意することが望ましい。各キャラクタは、振り付けに従った動作を実行する。これにより、プレイヤーの成績が良ければ良いほど、当該各動作を各キャラクタが実行するタイミングのばらつきが小さくなるように表示される。また、プレイヤーの成績が悪ければ悪いほど、当該各動作を各キャラクタが実行するタイミングのばらつきが大きくなるように表示される。
 次に、本実施形態に係るゲーム装置200の動作について説明する。なお、本実施形態に係るゲーム装置200が実行するキャラクタ表示制御処理は、生成時刻決定処理を除き、第1ならびに第2の実施形態のものと同様である。従って、以下では、図15を参照して、本実施形態に係るゲーム装置200が実行する生成時刻決定処理について説明する。
 まず、CPU 101は、現在のシーンにおけるプレイヤーの成績を求める(ステップS401)。次に、CPU 101は、ステップS401において求めたプレイヤーの成績に応じてシフト量のゲインを決定する(ステップS402)。そして、CPU 101は、第1キャラクタ303、第2キャラクタ304、ならびに、第3キャラクタ305の3つのキャラクタから1つのキャラクタを選択する(ステップS403)。
 次に、CPU 101は、キャラクタに対応付けられるテーブルを外部メモリ106から読み出す(ステップS404)。なお、このテーブルには、区切り時刻とシフト量とが対応して記憶されている。
 次に、CPU 101は、区切り時刻を1つ選択する(ステップS405)。例えば、CPU 101は、早い時刻から順番に区切り時刻を選択する。
 上述のように、ステップS402において、ゲインが決定される。また、ステップS404で、テーブルを読み出す。そして、ステップS405において、区切り時刻が選択される。
 CPU 101は、当該区切り時刻に対応付ける生成時刻を決定する(ステップS406)。具体的には、CPU 101は、当該区切り時刻から、当該ゲインと当該テーブル中の当該区切り時刻に対応付けられるシフト量との積だけ経過させた時刻を当該区切り時刻に対応付けられる生成時刻に決定する。
 CPU 101は、生成時刻を決定する処理(ステップS406)を終了すると、全ての区切り時刻を選択したか否かを判別する(ステップS407)。CPU 101は、いずれかの区切り時刻を選択していないと判別すると(ステップS407:NO)、区切り時刻を選択する処理(ステップS405)に処理を戻す。一方、CPU 101は、全ての区切り時刻を選択したと判別すると(ステップS407:YES)、全てのキャラクタを選択したか否かを判別する(ステップS408)。CPU 101は、いずれかのキャラクタを選択していないと判別すると(ステップS408:NO)、キャラクタを選択する処理(ステップS403)に処理を戻す。一方、CPU 101は、全てのキャラクタを選択したと判別すると(ステップS408:YES)、生成時刻決定処理を終了する。
 本実施形態に係るゲーム装置によれば、区切り時刻に対応付ける生成時刻を乱数を発生させることなくキャラクタ毎に異なる生成時刻に決定することができる。これにより、処理速度の向上が期待できる。
(変形例)
 本発明は、上述した第1~3の実施形態に限られるものではなく、種々の変形が可能である。
 第1~3の実施形態では、各シーンにおいて各キャラクタがとるモーションのばらつきの度合いを、前のシーンのプレイヤーの成績に応じて変化させるようにしていた。しかしながら、各シーンにおいて各キャラクタがとるモーションのばらつきの度合いを、ゲーム開始後の任意の期間のプレイヤーの成績に応じて変化させてもよい。
 第1~3の実施形態では、プレイヤーの成績に応じて、各キャラクタがとるモーションのばらつきを変化させるようにしていた。しかしながら、プレイヤーの成績とは無関係に各キャラクタがとるモーションを変化させるようにしてもよい。
 第3の実施形態では、テーブルにおいて、区切り時刻と当該区切り時刻に対応付けられる生成時刻の当該区切り時刻からの時間軸上のシフト量とを対応付けていた。そして、当該テーブルは、あらかじめ外部メモリ106に記憶されていた。また、当該テーブルを用いて、生成時刻を決定した。しかし、テーブルは、プログラム中にあらかじめ記憶されているものでもよい。また、テーブルを用いずに、区切り時刻を変数としてシフト量を求めるような所定の関数を用いて、生成時刻を決定するようにしてもよい。この場合、先頭の区切り時刻に対応付ける生成時刻が当該先頭の区切り時刻に決定され、末尾の区切り時刻に対応付ける生成時刻が当該末尾の区切り時刻に決定されるような関数を採用する。
 なお、本願については、日本国特許願 特願2009-022527号を基礎とする優先権を主張し、当該基礎出願の内容をすべて本願にとりこむものとする。
 以上説明したように、本発明によれば、キャラクタを適切に表示するのに好適な動画像生成装置、ゲーム装置、動画像生成方法、情報記録媒体、ならびに、プログラムを提供することができる。
100 情報処理装置
101 CPU
102 ROM
103 RAM
104 インターフェース
105 マット型コントローラ
106 外部メモリ
107 画像処理部
108 DVD-ROMドライブ
109 NIC
110 音声処理部
111 RTC
112 モニター
200 ゲーム装置
201 形状計算部
202 決定部
203 生成部
204 受付部
205 判定部
206 表示部
301L、301D、301U、301R 静止マーク
302L、302D、302U、302R 標的
303 第1キャラクタ
304 第2キャラクタ
305 第3キャラクタ
400 課題データ
401 表
402 レコード
403 課題時間
404 操作入力の種類
405 標的の状態
411 閾時間
421 終了時間
500 模範キャラクタ
600 動画像生成装置
610 記憶部

Claims (10)

  1.  所定期間に含まれるいずれかの時刻が与えられると、当該時刻に対応付けられるキャラクタの形状を計算する形状計算部(201)、
     前記所定期間の先頭から末尾までを等間隔に区切る区切り時刻のそれぞれに対応付けられる生成時刻を決定する決定部(202)、
     前記区切り時刻のそれぞれに対応付けられる生成時刻を前記形状計算部(201)に与えて計算させ、当該計算されたキャラクタの形状から当該区切り時刻において表示すべきキャラクタの画像を生成する生成部(203)
     を備える動画像生成装置(600)であって、
     前記区切り時刻のうち先頭の区切り時刻と、当該先頭の区切り時刻に対応付けられる生成時刻と、は、いずれも前記所定期間の先頭の時刻に等しく、
     前記区切り時刻のうち末尾の区切り時刻と、当該末尾の区切り時刻に対応付けられる生成時刻と、は、いずれも前記所定期間の末尾の時刻に等しく、
     前記区切り時刻を時間の経過順に並べ、その順序で当該区切り時刻に対応付けられる生成時刻を並べると、時間の経過順となる
     ことを特徴とする動画像生成装置(600)。
  2.  請求項1に記載の動画像生成装置(600)であって、
     前記決定部(202)は、前記区切り時刻と、当該区切り時刻に対応付けられる生成時刻と、の差を、乱数に基づいて決定する
     ことを特徴とする動画像生成装置(600)。
  3.  請求項1に記載の動画像生成装置(600)であって、
     前記生成部(203)は、複数のキャラクタの画像を生成し、
     前記決定部(202)は、前記複数のキャラクタ毎に生成時刻を決定する
     ことを特徴とする動画像生成装置(600)。
  4.  請求項2に記載の動画像生成装置(600)であって、
     前記決定部(202)は、前記先頭の区切り時刻と前記末尾の区切り時刻とを含むように前記区切り時刻から所定の個数の区切り時刻(以下「代表時刻」という。)を選択し、
    (A)前記代表時刻のうち前記先頭の区切り時刻に対応付けられる生成時刻を当該先頭の区切り時刻と等しくなるように決定し、
    (B)前記代表時刻のうち前記末尾の区切り時刻に対応付けられる生成時刻を当該末尾の区切り時刻と等しくなるように決定し、
    (C)前記代表時刻のうち前記先頭の区切り時刻と前記末尾の区切り時刻と以外の区切り時刻と、当該区切り時刻に対応付けられる生成時刻と、の差を、乱数に基づいて決定し、
    (D)前記代表時刻を時間の経過順に並べたときに隣り合う2つの代表時刻の間の区切り時刻に対応付けられる生成時刻を、当該生成時刻の間隔が等間隔になるように決定する
     ことを特徴とする動画像生成装置(600)。
  5.  請求項1に記載の動画像生成装置(600)であって、
     前記区切り時刻と、当該区切り時刻に対応付けられる生成時刻と、の差の基準値を区切り時刻毎に記憶する記憶部(610)、をさらに備え、
     前記決定部(202)は、前記区切り時刻と、当該区切り時刻に対応付けられる生成時刻と、の差を、前記記憶部(610)に記憶されている区切り時刻毎の基準値に基づいて決定する
     ことを特徴とする動画像生成装置(600)。
  6.  プレイヤーからの指示入力を受け付ける受付部(204)、
     前記受け付けられた指示入力に基づいて、前記プレイヤーの成績を判定する判定部(205)、
     請求項1に記載の動画像生成装置(600)により生成された動画像を表示する表示部(206)
     を備えることを特徴とするゲーム装置(200)。
  7.  請求項6に記載のゲーム装置(200)であって、
     前記決定部(202)は、前記区切り時刻と、当該区切り時刻に対応付けられる生成時刻と、の差を、乱数に基づいて決定し、前記判定されたプレイヤーの成績に応じて、前記乱数のとりうる範囲を変化させる
     ことを特徴とするゲーム装置(200)。
  8.  形状計算部(201)、決定部(202)、生成部(203)を備える動画像生成装置(600)が実行する動画像生成方法であって、
     前記形状計算部(201)が、所定期間に含まれるいずれかの時刻が与えられると、当該時刻に対応付けられるキャラクタの形状を計算する形状計算工程、
     前記決定部(202)が、前記所定期間の先頭から末尾までを等間隔に区切る区切り時刻のそれぞれに対応付けられる生成時刻を決定する決定工程、
     前記生成部(203)が、前記区切り時刻のそれぞれに対応付けられる生成時刻を前記形状計算部(201)に与えて計算させ、当該計算されたキャラクタの形状から当該区切り時刻において表示すべきキャラクタの画像を生成する生成工程
     を備える動画像生成方法であって、
     前記区切り時刻のうち先頭の区切り時刻と、当該先頭の区切り時刻に対応付けられる生成時刻と、は、いずれも前記所定期間の先頭の時刻に等しく、
     前記区切り時刻のうち末尾の区切り時刻と、当該末尾の区切り時刻に対応付けられる生成時刻と、は、いずれも前記所定期間の末尾の時刻に等しく、
     前記区切り時刻を時間の経過順に並べ、その順序で当該区切り時刻に対応付けられる生成時刻を並べると、時間の経過順となる
     ことを特徴とする動画像生成方法。
  9.  コンピュータを、
     所定期間に含まれるいずれかの時刻が与えられると、当該時刻に対応付けられるキャラクタの形状を計算する形状計算部(201)、
     前記所定期間の先頭から末尾までを等間隔に区切る区切り時刻のそれぞれに対応付けられる生成時刻を決定する決定部(202)、
     前記区切り時刻のそれぞれに対応付けられる生成時刻を前記形状計算部(201)に与えて計算させ、当該計算されたキャラクタの形状から当該区切り時刻において表示すべきキャラクタの画像を生成する生成部(203)
     として機能させるプログラムであって、
     前記区切り時刻のうち先頭の区切り時刻と、当該先頭の区切り時刻に対応付けられる生成時刻と、は、いずれも前記所定期間の先頭の時刻に等しく、
     前記区切り時刻のうち末尾の区切り時刻と、当該末尾の区切り時刻に対応付けられる生成時刻と、は、いずれも前記所定期間の末尾の時刻に等しく、
     前記区切り時刻を時間の経過順に並べ、その順序で当該区切り時刻に対応付けられる生成時刻を並べると、時間の経過順となる
     ように機能させるプログラムを記録することを特徴とする、コンピュータ読み取り可能な情報記録媒体。
  10.  コンピュータを、
     所定期間に含まれるいずれかの時刻が与えられると、当該時刻に対応付けられるキャラクタの形状を計算する形状計算部(201)、
     前記所定期間の先頭から末尾までを等間隔に区切る区切り時刻のそれぞれに対応付けられる生成時刻を決定する決定部(202)、
     前記区切り時刻のそれぞれに対応付けられる生成時刻を前記形状計算部(201)に与えて計算させ、当該計算されたキャラクタの形状から当該区切り時刻において表示すべきキャラクタの画像を生成する生成部(203)
     として機能させるプログラムであって、
     前記区切り時刻のうち先頭の区切り時刻と、当該先頭の区切り時刻に対応付けられる生成時刻と、は、いずれも前記所定期間の先頭の時刻に等しく、
     前記区切り時刻のうち末尾の区切り時刻と、当該末尾の区切り時刻に対応付けられる生成時刻と、は、いずれも前記所定期間の末尾の時刻に等しく、
     前記区切り時刻を時間の経過順に並べ、その順序で当該区切り時刻に対応付けられる生成時刻を並べると、時間の経過順となる
     ように機能させることを特徴とするプログラム。
PCT/JP2010/051035 2009-02-03 2010-01-27 動画像生成装置、ゲーム装置、動画像生成方法、情報記録媒体、ならびに、プログラム WO2010090109A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009-022527 2009-02-03
JP2009022527A JP5210908B2 (ja) 2009-02-03 2009-02-03 動画像生成装置、ゲーム装置、動画像生成方法、ならびに、プログラム

Publications (1)

Publication Number Publication Date
WO2010090109A1 true WO2010090109A1 (ja) 2010-08-12

Family

ID=42542009

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2010/051035 WO2010090109A1 (ja) 2009-02-03 2010-01-27 動画像生成装置、ゲーム装置、動画像生成方法、情報記録媒体、ならびに、プログラム

Country Status (3)

Country Link
JP (1) JP5210908B2 (ja)
TW (1) TW201043301A (ja)
WO (1) WO2010090109A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110310352A (zh) * 2019-07-04 2019-10-08 珠海金山网络游戏科技有限公司 一种角色动作编辑方法及装置、计算设备及存储介质

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113633970B (zh) * 2021-08-18 2024-03-08 腾讯科技(成都)有限公司 动作效果的显示方法、装置、设备及介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000311251A (ja) * 1999-02-26 2000-11-07 Toshiba Corp アニメーション作成装置および方法、記憶媒体
JP2008299693A (ja) * 2007-06-01 2008-12-11 Konami Digital Entertainment:Kk キャラクター表示装置、キャラクター表示方法、ならびに、プログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000311251A (ja) * 1999-02-26 2000-11-07 Toshiba Corp アニメーション作成装置および方法、記憶媒体
JP2008299693A (ja) * 2007-06-01 2008-12-11 Konami Digital Entertainment:Kk キャラクター表示装置、キャラクター表示方法、ならびに、プログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110310352A (zh) * 2019-07-04 2019-10-08 珠海金山网络游戏科技有限公司 一种角色动作编辑方法及装置、计算设备及存储介质
CN110310352B (zh) * 2019-07-04 2023-08-15 珠海金山数字网络科技有限公司 一种角色动作编辑方法及装置、计算设备及存储介质

Also Published As

Publication number Publication date
JP2010178782A (ja) 2010-08-19
TW201043301A (en) 2010-12-16
JP5210908B2 (ja) 2013-06-12

Similar Documents

Publication Publication Date Title
JP3686906B2 (ja) 音楽ゲームプログラム及び音楽ゲーム装置
US6905413B1 (en) Music game system
JP5155226B2 (ja) ゲーム装置、ゲーム制御方法、ならびに、プログラム
JP2008113766A (ja) ゲームシステム
JP2008125721A (ja) ゲーム装置、操作評価方法、および、プログラム
KR100829295B1 (ko) 기억매체, 음악 게임 처리 방법, 음악 게임용 처리 프로그램을 기억하기 위한 컴퓨터로 독출가능한 기억매체, 음악 게임 장치 및 휴대통신단말
US8496516B2 (en) Game device, tempo announcement method, information recording medium and program
US8253005B2 (en) Selecting device, selecting method, and information recording medium
JP5210908B2 (ja) 動画像生成装置、ゲーム装置、動画像生成方法、ならびに、プログラム
JP2001353371A (ja) ゲーム装置、ゲーム装置の制御方法及び情報記憶媒体
JP4939515B2 (ja) ゲーム装置、ゲーム処理方法、ならびに、プログラム
WO2010010834A1 (ja) ゲーム装置、ゲーム制御方法、情報記録媒体、ならびに、プログラム
JP2004283264A (ja) ゲーム装置、その制御方法、ならびに、プログラム
JP3942720B2 (ja) 楽音生成装置、画像生成装置、ゲーム装置及び情報記憶媒体
WO2007007522A1 (ja) ゲームプログラム、ゲーム装置及びゲーム方法
JP5386445B2 (ja) ゲーム装置、ゲーム制御方法、ならびに、プログラム
JP4361592B1 (ja) ゲーム装置、ゲーム制御方法、及び、プログラム
JP2012029763A (ja) ゲーム装置、ゲームシステム、ゲーム制御方法、ならびに、プログラム
JP2000300834A (ja) ビデオゲーム装置、曲調変更方法および記録媒体
JP2008122888A (ja) カラオケ装置
JP5399831B2 (ja) 音楽ゲームシステム及びそのコンピュータプログラム並びに効果音データの生成方法
JP4219526B2 (ja) ゲーム装置、およびゲーム用プログラムを記録したコンピュータ読み取り可能な記録媒体
WO2011010596A1 (ja) ゲーム装置、ゲーム制御方法、情報記憶媒体、ならびに、プログラム
JP4825273B2 (ja) ゲーム装置、ゲーム装置の制御方法、ならびに、プログラム
JP2007175513A (ja) ゲーム装置及び情報記憶媒体

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10738444

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 10738444

Country of ref document: EP

Kind code of ref document: A1